Skip to content

Commit b0171ba

Browse files
committed
Prepare to release new version 0.1.9
1 parent 28f3312 commit b0171ba

File tree

6 files changed

+50
-16
lines changed

6 files changed

+50
-16
lines changed

ChangeLog.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,17 @@
1+
# Version 0.1.9
2+
3+
+ Add more Regression and Classification objectives for fitness function
4+
+ Add more Regression and Classification metrics for evaluate() function
5+
+ Update logo and documents
6+
+ Add more examples
7+
8+
---------------------------------------------------------------------
9+
110
# Version 0.1.8
211

312
+ Fix bug load data from library.
413

14+
515
---------------------------------------------------------------------
616

717
# Version 0.1.7

README.md

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ alt="MAFESE"/>
88

99
---
1010

11-
[![GitHub release](https://img.shields.io/badge/release-0.1.8-yellow.svg)](https://github.com/thieu1995/mafese/releases)
11+
[![GitHub release](https://img.shields.io/badge/release-0.1.9-yellow.svg)](https://github.com/thieu1995/mafese/releases)
1212
[![Wheel](https://img.shields.io/pypi/wheel/gensim.svg)](https://pypi.python.org/pypi/mafese)
1313
[![PyPI version](https://badge.fury.io/py/mafese.svg)](https://badge.fury.io/py/mafese)
1414
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mafese.svg)
@@ -29,38 +29,38 @@ MAFESE (Metaheuristic Algorithms for FEature SElection) is the biggest python li
2929
problem using meta-heuristic algorithms.
3030

3131
* **Free software:** GNU General Public License (GPL) V3 license
32-
* **Total Wrapper-based (Metaheuristic Algorithms)**: > 180 methods
32+
* **Total Wrapper-based (Metaheuristic Algorithms)**: > 200 methods
3333
* **Total Filter-based (Statistical-based)**: > 15 methods
3434
* **Total Embedded-based (Tree and Lasso)**: > 10 methods
3535
* **Total Unsupervised-based**: >= 4 methods
36-
* **Total classification dataset**: >= 30 datasets
37-
* **Total regression dataset**: >= 7 datasets
38-
* **Total performance metrics (as fitness)**: > 30 metrics
36+
* **Total datasets**: >= 30 (47 classifications and 7 regressions)
37+
* **Total performance metrics**: >= 61 (45 regressions and 16 classifications)
38+
* **Total objective functions (as fitness functions)**: >= 61 (45 regressions and 16 classifications)
3939
* **Documentation:** https://mafese.readthedocs.io/en/latest/
40-
* **Python versions:** 3.7.x, 3.8.x, 3.9.x, 3.10.x, 3.11.x
40+
* **Python versions:** >= 3.7.x
4141
* **Dependencies:** numpy, scipy, scikit-learn, pandas, mealpy, permetrics, plotly, kaleido
4242

4343

4444
# Installation
4545

46-
#### Install the [current PyPI release](https://pypi.python.org/pypi/mafese):
46+
* Install the [current PyPI release](https://pypi.python.org/pypi/mafese):
4747
```sh
48-
$ pip install mafese==0.1.8
48+
$ pip install mafese==0.1.9
4949
```
5050

51-
#### Install directly from source code
51+
* Install directly from source code
5252
```sh
5353
$ git clone https://github.com/thieu1995/mafese.git
5454
$ cd mafese
5555
$ python setup.py install
5656
```
5757

58-
#### In case, you want to install the development version from Github:
58+
* In case, you want to install the development version from Github:
5959
```sh
6060
$ pip install git+https://github.com/thieu1995/mafese
6161
```
6262

63-
#### After installation, you can import MAFESE as any other Python module:
63+
After installation, you can import MAFESE as any other Python module:
6464

6565
```sh
6666
$ python
@@ -235,9 +235,15 @@ feat_selector.evaluate(estimator=None, data=data, metrics=["AS", "PS", "RS"])
235235
```
236236

237237
1) Where do I find the supported metrics like above ["AS", "PS", "RS"]. What is that?
238-
You can find it here: https://github.com/thieu1995/permetrics
238+
You can find it here: https://github.com/thieu1995/permetrics or use this
239+
```python
240+
from mafese import MhaSelector
241+
242+
print(MhaSelector.SUPPORTED_REGRESSION_METRICS)
243+
print(MhaSelector.SUPPORTED_CLASSIFICATION_METRICS)
244+
```
239245

240-
2) How do I know my Selector support which estimator? which methods?
246+
3) How do I know my Selector support which estimator? which methods?
241247
```python
242248
print(feat_selector.SUPPORT)
243249
```

docs/source/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ MAFESE (Metaheuristic Algorithms for FEature SElection) is the largest python li
5656
using meta-heuristic algorithms.
5757

5858
* **Free software:** GNU General Public License (GPL) V3 license
59-
* **Total Wrapper-based (Metaheuristic Algorithms)**: > 180 methods
59+
* **Total Wrapper-based (Metaheuristic Algorithms)**: > 200 methods
6060
* **Total Filter-based (Statistical-based)**: > 15 methods
6161
* **Total Embedded-based (Tree and Lasso)**: > 10 methods
6262
* **Total Unsupervised-based**: >= 4 methods
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env python
2+
# Created by "Thieu" at 17:29, 07/08/2023 ----------%
3+
# Email: nguyenthieu2102@gmail.com %
4+
# Github: https://github.com/thieu1995 %
5+
# --------------------------------------------------%
6+
7+
from mafese import MhaSelector
8+
9+
print(MhaSelector.SUPPORT["regression_objective"])
10+
print(len(MhaSelector.SUPPORT["regression_objective"]))
11+
12+
print(MhaSelector.SUPPORT["classification_objective"])
13+
print(len(MhaSelector.SUPPORT["classification_objective"]))
14+
15+
print(MhaSelector.SUPPORTED_CLASSIFICATION_METRICS)
16+
print(MhaSelector.SUPPORTED_REGRESSION_METRICS)

mafese/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Github: https://github.com/thieu1995 %
55
# --------------------------------------------------%
66

7-
__version__ = "0.1.8"
7+
__version__ = "0.1.9"
88

99
from mafese.utils.data_loader import Data, get_dataset
1010
from mafese.filter import FilterSelector

mafese/selector.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from abc import ABC
88
from mafese.utils import validator
99
from mafese.utils.estimator import get_general_estimator
10-
from mafese.utils.evaluator import get_metrics
10+
from mafese.utils.evaluator import get_metrics, get_all_classification_metrics, get_all_regression_metrics
1111
from mafese.utils.data_loader import Data
1212

1313

@@ -18,6 +18,8 @@ class Selector(ABC):
1818
name = "Feature Selector"
1919
SUPPORTED_PROBLEMS = ["classification", "regression"]
2020
SUPPORTED_ESTIMATORS = ["knn", "svm", "rf", "adaboost", "xgb", "tree", "ann"]
21+
SUPPORTED_REGRESSION_METRICS = list(get_all_regression_metrics().keys())
22+
SUPPORTED_CLASSIFICATION_METRICS = list(get_all_classification_metrics().keys())
2123

2224
def __init__(self, problem="classification"):
2325
self.problem = self._set_problem(problem)

0 commit comments

Comments
 (0)