Scikit-criteria

Latest version: v0.8.7

Safety actively analyzes 641153 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.8.7

- **New** Added functionality for user extension of scikit-criteria with
decorators for creating aggregation and transformation models using
functions.

python
>>> from skcriteria.extend import mkagg, mktransformer
>>>
>>> mkagg
>>> def MyAgg(**kwargs):
>>> Implementation of the aggregation function
>>>
>>> mkagg(foo=1)
>>> def MyAggWithHyperparam(**kwargs):
>>> Implementation of the aggregation function with
>>> hyperparameter 'foo'
>>>
>>> mktransformer
>>> def MyTransformer(**kwargs):
>>> Implementation of the transformation function
>>>
>>> mktransformer(bar=2)
>>> def MyTransformerWithHyperparam(**kwargs):
>>> Implementation of the transformation function with
>>> hyperparameter 'bar'


These decorators enable the creation of aggregation and transformation
classes based on provided functions, allowing users to
define decision-making models with less flexibility than traditional
inheritance-based models.

For more information check the tutorial [Extending Aggregation and Transformation Functions](https://scikit-criteria.quatrope.org/en/latest/tutorial/extend.html)

- **New Module:** Introduced the `skcriteria.testing` module, exposing utility functions for for comparing objects created in Scikit-Criteria in a testing environment. These functions facilitate the comparison of instances of the `DecisionMatrix`, `ResultABC`, and `RanksComparator` classes.

The assertion functions utilize pandas and numpy testing utilities for comparing matrices, series, and other attributes.

Check the [Reference](https://scikit-criteria.quatrope.org/en/latest/api/testing.html) for more information.

- **New** The API of the agg, pipeline, preprocessing, and extend modules has
been cleaned up to prevent autocompletion with imports from other modules.
The imported modules are still present, but they are excluded when attempting
to autocomplete. This functionality is achieved thanks to the context manager
`skcriteria.utils.cmanagers.hidden()`.

- **New** All methods (agg and transformers) has a new `get_method_name`
instance method.

- **Drop** Drop support for Python 3.8

0.8.7.dev1

- **New** Added functionality for user extension of scikit-criteria with
decorators for creating aggregation and transformation models using
functions.

python
>>> from skcriteria.extend import mkagg, mktransformer
>>>
>>> mkagg
>>> def MyAgg(**kwargs):
>>> Implementation of the aggregation function
>>>
>>> mkagg(foo=1)
>>> def MyAggWithHyperparam(**kwargs):
>>> Implementation of the aggregation function with
>>> hyperparameter 'foo'
>>>
>>> mktransformer
>>> def MyTransformer(**kwargs):
>>> Implementation of the transformation function
>>>
>>> mktransformer(bar=2)
>>> def MyTransformerWithHyperparam(**kwargs):
>>> Implementation of the transformation function with
>>> hyperparameter 'bar'


These decorators enable the creation of aggregation and transformation
classes based on provided functions, allowing users to
define decision-making models with less flexibility than traditional
inheritance-based models.

For more information check the tutorial [Extending Aggregation and Transformation Functions](https://scikit-criteria.quatrope.org/en/latest/tutorial/extend.html)

- **New Module:** Introduced the `skcriteria.testing` module, exposing utility functions for for comparing objects created in Scikit-Criteria in a testing environment. These functions facilitate the comparison of instances of the `DecisionMatrix`, `ResultABC`, and `RanksComparator` classes.

The assertion functions utilize pandas and numpy testing utilities for comparing matrices, series, and other attributes.

Check the [Reference](https://scikit-criteria.quatrope.org/en/latest/api/testing.html) for more information.

- **New** The API of the agg, pipeline, preprocessing, and extend modules has
been cleaned up to prevent autocompletion with imports from other modules.
The imported modules are still present, but they are excluded when attempting
to autocomplete. This functionality is achieved thanks to the context manager
`skcriteria.utils.cmanagers.hidden()`.

- **New** All methods (agg and transformers) has a new `get_method_name`
instance method.

- **Drop** Drop support for Python 3.8

0.8.7.dev0

- **New** Added functionality for user extension of scikit-criteria with
decorators for creating aggregation and transformation models using
functions.

python
>>> from skcriteria.extend import mkagg, mktransformer
>>>
>>> mkagg
>>> def MyAgg(**kwargs):
>>> Implementation of the aggregation function
>>>
>>> mkagg(foo=1)
>>> def MyAggWithHyperparam(**kwargs):
>>> Implementation of the aggregation function with
>>> hyperparameter 'foo'
>>>
>>> mktransformer
>>> def MyTransformer(**kwargs):
>>> Implementation of the transformation function
>>>
>>> mktransformer(bar=2)
>>> def MyTransformerWithHyperparam(**kwargs):
>>> Implementation of the transformation function with
>>> hyperparameter 'bar'


These decorators enable the creation of aggregation and transformation
classes based on provided functions, allowing users to
define decision-making models with less flexibility than traditional
inheritance-based models.

For more information check the tutorial [Extending Aggregation and Transformation Functions](https://scikit-criteria.quatrope.org/en/latest/tutorial/extend.html)

- **New Module:** Introduced the `skcriteria.testing` module, exposing utility functions for for comparing objects created in Scikit-Criteria in a testing environment. These functions facilitate the comparison of instances of the `DecisionMatrix`, `ResultABC`, and `RanksComparator` classes.

The assertion functions utilize pandas and numpy testing utilities for comparing matrices, series, and other attributes.

Check the [Reference](https://scikit-criteria.quatrope.org/en/latest/api/testing.html) for more information.

- **New** The API of the agg, pipeline, preprocessing, and extend modules has
been cleaned up to prevent autocompletion with imports from other modules.
The imported modules are still present, but they are excluded when attempting
to autocomplete. This functionality is achieved thanks to the context manager
`skcriteria.utils.cmanagers.hidden()`.

- **New** All methods (agg and transformers) has a new `get_method_name`
instance method.

- **Drop** Drop support for Python 3.8

0.8.6

- **New** Rank reversal 1 implementhed in the `RankInvariantChecker` class

python

>>> import skcriteria as skc
>>> from skcriteria.cmp import RankInvariantChecker
>>> from skcriteria.agg.similarity import TOPSIS

>>> dm = skc.datasets.load_van2021evaluation()
>>> rrt1 = RankInvariantChecker(TOPSIS())
>>> rrt1.evaluate(dm)
<RanksComparator [ranks=['Original', 'M.ETH', 'M.LTC', 'M.XLM', 'M.BNB', 'M.ADA', 'M.LINK', 'M.XRP', 'M.DOGE']]>


- **New** The module `skcriteria.madm` was deprecated in favor
of `skcriteria.agg`
- Add support for Python 3.11.
- Removed Python 3.7. Google collab now work with 3.8.
- Updated Scikit-Learn to 1.3.x.
- Now all cached methods and properties are stored inside the instance.
Previously this was stored inside the class generating a memoryleak.

0.8.5

- **New** Rank reversal 1 implementhed in the `RankInvariantChecker` class

python

>>> import skcriteria as skc
>>> from skcriteria.cmp import RankInvariantChecker
>>> from skcriteria.agg.similarity import TOPSIS

>>> dm = skc.datasets.load_van2021evaluation()
>>> rrt1 = RankInvariantChecker(TOPSIS())
>>> rrt1.evaluate(dm)
<RanksComparator [ranks=['Original', 'M.ETH', 'M.LTC', 'M.XLM', 'M.BNB', 'M.ADA', 'M.LINK', 'M.XRP', 'M.DOGE']]>


- **New** The module `skcriteria.madm` was deprecated in favor
of `skcriteria.agg`
- Add support for Python 3.11.
- Removed Python 3.7. Google collab now work with 3.8.
- Updated Scikit-Learn to 1.3.x.
- Now all cached methods and properties are stored inside the instance.
Previously this was stored inside the class generating a memoryleak.

0.8.3

Fixed a bug detected on the EntropyWeighted, Now works as the literature specifies

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.