Releases: rasbt/mlxtend
Releases · rasbt/mlxtend
v0.23.4
What's Changed
- fix(test): replace np.float_ to np.float64 by @Bot-wxt1221 in #1119
- Fixing of association rule lastest version by @zazass8 in #1121
- v0.23.4 release prep work by @rasbt in #1122
New Contributors
- @Bot-wxt1221 made their first contribution in #1119
Full Changelog: v0.23.3...v0.23.4
v0.23.3
What's Changed
- Improved
plot_splitsfor time series splits by @d-kleine in #1113 - Updated
publishCI/CD workflow by @d-kleine in #1111 - Update exhaustive_feature_selector.py by @Haider010 in #1104
- fix: Code examples for the association_rules method have an execution… by @MarceloNunesAlves in #1115
- V0.23.3 by @rasbt in #1116
New Contributors
- @Haider010 made their first contribution in #1104
- @MarceloNunesAlves made their first contribution in #1115
Full Changelog: v0.23.2...v0.23.3
v0.23.2
What's Changed
- Don't include tests in built wheel by @carlsmedstad in #1076
- Fix typo in OneRClassifier notebook by @danickblouin in #1084
- Update CI by @rasbt in #1089
- Most recent scikit-learn results in several failed unit tests by @it176131 in #1091
- Integrate scikit-learn's
set_outputmethod intoTransactionEncoderby @it176131 in #1087 - Refactor bias_variance_decomposition test. by @fkdosilovic in #1081
- Update minor typos in fpgrowth.ipynb by @tanmaychimurkar in #1057
- Use scipy's decompositions in PCA. by @fkdosilovic in #1080
- Add Jaccard, Certainty, and Kulczynski association rules metrics by @UltraArceus3 in #1099
- FPGrowth/FPMax and Association Rules with the existence of missing values (#1004) by @zazass8 in #1106
- SFS finalize_fit() support for numpy >= 2.0 by @d-kleine in #1107
- Fixed
_calc_scorefor scikit-learn version compatibility by @d-kleine in #1109 - updated CI/CD workflows by @d-kleine in #1108
- Add PyPI deploy workflow by @rasbt in #1110
New Contributors
- @carlsmedstad made their first contribution in #1076
- @danickblouin made their first contribution in #1084
- @it176131 made their first contribution in #1091
- @fkdosilovic made their first contribution in #1081
- @tanmaychimurkar made their first contribution in #1057
- @UltraArceus3 made their first contribution in #1099
- @zazass8 made their first contribution in #1106
- @d-kleine made their first contribution in #1107
Full Changelog: v0.23.1...v0.23.2
Version 0.23.1
Version 0.23.1 (5 Jan 2024)
Changes
- Updated dependency on distutils for python 3.12 and above ([#1072](#1072) via [peanutsee](https://github.com/peanutsee))
Version 0.23.0
Downloads
-
[Source code (zip)](https://github.com/rasbt/mlxtend/archive/v0.21.1.zip)
-
[Source code (tar.gz)](https://github.com/rasbt/mlxtend/archive/v0.22.1.tar.gz)
Changes
- Address NumPy deprecations to make mlxtend compatible to NumPy 1.24
- Changed the signature of the
LinearRegressionmodel of sklearn in the test removing thenormalizeparameter as it is deprecated. ([#1036](#1036)) - Add
pyproject.tomlto support PEP 518 builds ([#1065](#1065) via [jmahlik](https://github.com/jmahlik)) - Fixed installation from sdist failing ([#1065](#1065) via [jmahlik](https://github.com/jmahlik))
- Converted configuration to
pyproject.toml([#1065](#1065) via [jmahlik](https://github.com/jmahlik)) - Remove
mlxtend.imagesubmodule with face recognition functions due to poordlibsupport in modern environments.
New Features and Enhancements
- Document how to use
SequentialFeatureSelectorand multiclass ROC AUC.
Version 0.22.0
Changes
- When
ExhaustiveFeatureSelectoris run withn_jobs == 1, joblib is now disabled, which enables more immediate (live) feedback when theverbosemode is enabled. (#985 via Nima Sarajpoor) - Disabled unnecessary warning in
EnsembleVoteClassifier(#941) - Fixed various documentation issues (#849 and #951 via Lekshmanan Natarajan)
- Fixed "Edit on GitHub" button (#1024)
New Features and Enhancements
- The
mlxtend.frequent_patterns.association_rulesfunction has a new metric - Zhang's Metric, which measures both association and dissociation. (#980) - Internal
mlxtend.frequent_patterns.fpmaxcode improvement that avoids casting a sparse DataFrame into a dense NumPy array. (#1000 via Tim Kellogg) - The
plot_decision_regionsfunction now has an_jobsparameter to parallelize the computation. (In a particular use case, on a small dataset, there was a 21x speed-up (449 seconds vs 21 seconds on local HPC instance of 36 cores). (#998 via Khalid ElHaj) - Added
mlxtend.frequent_patterns.hminealgorithm and documentation for mining frequent itemsets using the H-Mine algorithm. (#1020 via Fatih Sen)
Version 0.21.0
New Features and Enhancements
- The
mlxtend.evaluate.feature_importance_permutationfunction has a newfeature_groupsargument to treat user-specified feature groups as single features, which is useful for one-hot encoded features. (#955) - The
mlxtend.feature_selection.ExhaustiveFeatureSelectorandSequentialFeatureSelectoralso gained support forfeature_groupswith a behavior similar to the one described above. (#957 and #965 via Nima Sarajpoor)
Changes
- The
custom_feature_namesparameter was removed from theExhaustiveFeatureSelectordue to redundancy and to simplify the code base. TheExhaustiveFeatureSelectordocumentation illustrates how the same behavior and outcome can be achieved using pandas DataFrames. (#957)
Bug Fixes
- None
Version 0.20.0
New Features and Enhancements
Downloads
New Features and Enhancements
- The
mlxtend.evaluate.bootstrap_point632_scorenow supportsfit_params. (#861) - The
mlxtend/plotting/decision_regions.pyfunction now has acontourf_kwargsfor matplotlib to change the look of the decision boundaries if desired. (#881 via [pbloem]) - Add a
norm_colormapparameter tomlxtend.plotting.plot_confusion_matrix, to allow normalizing the colormap, e.g., usingmatplotlib.colors.LogNorm()(#895) - Add new
GroupTimeSeriesSplitclass for evaluation in time series tasks with support of custom groups and additional parameters in comparison with scikit-learn'sTimeSeriesSplit. (#915 via Dmitry Labazkin)
Changes
- Due to compatibility issues with newer package versions, certain functions from six.py have been removed so that mlxtend may not work anymore with Python 2.7.
- As an internal change to speed up unit testing, unit testing is now faciliated by GitHub workflows, and Travis CI and Appveyor hooks have been removed.
- Improved axis label rotation in
mlxtend.plotting.heatmapandmlxtend.plotting.plot_confusion_matrix(#872) - Fix various typos in McNemar guides.
- Raises a warning if non-bool arrays are used in the frequent pattern functions
apriori,fpmax, andfpgrowth. (#934 via NimaSarajpoor)
Bug Fixes
Version 0.19.0
Version 0.19.0 (09/02/2021)
New Features
- Adds a second "balanced accuracy" interpretation ("balanced") to
evaluate.accuracy_scorein addition to the existing "average" option to compute the scikit-learn-style balanced accuracy. (#764) - Adds new
scatter_histfunction tomlxtend.plottingfor generating a scattered histogram. (#757 via Maitreyee Mhasaka) - The
evaluate.permutation_testfunction now accepts apairedargument to specify to support paired permutation/randomization tests. (#768) - The
StackingCVRegressornow also supports multi-dimensional targets similar toStackingRegressorviaStackingCVRegressor(..., multi_output=True). (#802 via Marco Tiraboschi)
Changes
- Updates unit tests for scikit-learn 0.24.1 compatibility. (#774)
StackingRegressornow requires settingStackingRegressor(..., multi_output=True)if the target is multi-dimensional; this allows for better input validation. (#802)- Removes deprecated
resargument fromplot_decision_regions. (#803) - Adds a
title_fontsizeparameter toplot_learning_curvesfor controlling the title font size; also the plot style is now the matplotlib default. (#818) - Internal change using
'c': 'none'instead of'c': ''inmlxtend.plotting.plot_decision_regions's scatterplot highlights to stay compatible with Matplotlib 3.4 and newer. (#822) - Adds a
fontcolor_thresholdparameter to themlxtend.plotting.plot_confusion_matrixfunction as an additional option for determining the font color cut-off manually. (#827) - The
frequent_patterns.association_rulesnow raises aValueErrorif an empty frequent itemset DataFrame is passed. (#843) - The .632 and .632+ bootstrap method implemented in the
mlxtend.evaluate.bootstrap_point632_scorefunction now use the whole training set for the resubstitution weighting term instead of the internal training set that is a new bootstrap sample in each round. (#844)
Bug Fixes
- Fixes a typo in the SequentialFeatureSelector documentation (#835 via João Pedro Zanlorensi Cardoso)
Version 0.18.0
New Features
- The
bias_variance_decompfunction now supports optionalfit_paramsfor the estimators that are fit on bootstrap samples. (#748) - The
bias_variance_decompfunction now supports Keras estimators. (#725 via @hanzigs) - Adds new
mlxtend.classifier.OneRClassifier(One Rule Classfier) class, a simple rule-based classifier that is often used as a performance baseline or simple interpretable model. (#726 - Adds new
create_counterfactualmethod for creating counterfactuals to explain model predictions. (#740)
Changes
permutation_test(mlxtend.evaluate.permutation) ìs corrected to give the proportion of permutations whose statistic is at least as extreme as the one observed. (#721 via Florian Charlier)- Fixes the McNemar confusion matrix layout to match the convention (and documentation), swapping the upper left and lower right cells. (#744 via mmarius)
Bug Fixes
- The loss in
LogisticRegressionfor logging purposes didn't include the L2 penalty for the first weight in the weight vector (this is not the bias unit). However, since this loss function was only used for logging purposes, and the gradient remains correct, this does not have an effect on the main code. (#741) - Fixes a bug in
bias_variance_decompwhere when themseloss was used, downcasting to integers caused imprecise results for small numbers. (#749)