发布说明


当前开发版本的 CHANGELOG 可在此处查看:https://github.com/rasbt/mlxtend/blob/master/docs/sources/CHANGELOG.md


版本 0.23.3 (2024 年 11 月 15 日)

下载
新特性和增强功能

更新文件: - mlxtend.evaluate.time_series.plot_splits - 改进了 plot_splits 以更好地可视化时间序列分割

变更

版本 0.23.2 (2024 年 11 月 5 日)

下载
新特性和增强功能
变更
  • [mlxtend.frequent_patterns.fpcommon] 在 valid_input_check 签名中添加了 null_values 参数,用于检查输入是否包含空值。更改了 setup_fptree 和 generated_itemsets 的返回语句和函数签名,分别返回创建的禁用数组并将其包含为参数。在 [mlxtend.frequent_patterns.fpcommon] 和 mlxtend.frequent_patterns.association_rules 中添加了代码,以便在 null_values 为 True 且存在空值时实现算法。
  • mlxtend.frequent_patterns.association_rules 添加了可选参数 'return_metrics',仅返回指定的指标列表,而不是所有可能的指标。

  • 为 stacking 分类器添加 n_classes_ 属性,以兼容 scikit-learn 1.3(#1091

  • 在 PCA 中使用 Scipy 的分解而不是 NumPy 的分解,以提高边缘情况下的精度(通过 [fkdosilovic] 实现,#1080

版本 0.23.1 (2024 年 1 月 5 日)

下载
变更
  • 更新了对 Python 3.12 及以上版本中 distutils 的依赖(通过 peanutsee 实现,#1072

版本 0.23.0 (2023 年 9 月 22 日)

下载
变更
  • 解决 NumPy 弃用问题,使 mlxtend 兼容 NumPy 1.24
  • 在测试中更改了 sklearn 的 LinearRegression 模型的签名,移除了已弃用的 normalize 参数。(#1036
  • 添加 pyproject.toml 以支持 PEP 518 构建(通过 jmahlik 实现,#1065
  • 修复了 sdist 安装失败的问题(通过 jmahlik 实现,#1065
  • 将配置转换为 pyproject.toml(通过 jmahlik 实现,#1065
  • 移除包含人脸识别功能的 mlxtend.image 子模块,原因是现代环境中 dlib 支持不佳。
新特性和增强功能
  • 文档说明如何使用 SequentialFeatureSelector 和多类别 ROC AUC。

版本 0.22.0 (2023 年 4 月 4 日)

下载
变更
新特性和增强功能

版本 0.21.0 (2022 年 9 月 17 日)

下载
新特性和增强功能
  • mlxtend.evaluate.feature_importance_permutation 函数新增一个 feature_groups 参数,用于将用户指定的特征组视为单个特征,这对于 one-hot 编码的特征很有用。(#955
  • mlxtend.feature_selection.ExhaustiveFeatureSelectorSequentialFeatureSelector 也增加了对 feature_groups 的支持,其行为类似于上述描述。(通过 Nima Sarajpoor 实现,#957#965
变更
  • 由于冗余并为了简化代码库,从 ExhaustiveFeatureSelector 中移除了 custom_feature_names 参数。ExhaustiveFeatureSelector 文档 说明了如何使用 pandas DataFrame 实现相同的行为和结果。(#957
错误修复

版本 0.20.0 (2022 年 5 月 26 日)

下载
新特性和增强功能
  • mlxtend.evaluate.bootstrap_point632_score 现在支持 fit_params。(#861
  • mlxtend/plotting/decision_regions.py 函数现在有一个 contourf_kwargs 参数,用于 matplotlib 中更改决策边界的外观(如果需要)。(通过 [pbloem] 实现,#881
  • mlxtend.plotting.plot_confusion_matrix 添加 norm_colormap 参数,允许对颜色映射进行归一化,例如使用 matplotlib.colors.LogNorm()#895
  • 添加新的 GroupTimeSeriesSplit 类,用于时间序列任务中的评估,支持自定义分组和与 scikit-learn 的 TimeSeriesSplit 相比的其他参数。(通过 Dmitry Labazkin 实现,#915
变更
  • 由于与较新包版本的兼容性问题,已移除 six.py 中的某些函数,因此 mlxtend 可能不再与 Python 2.7 一起工作。
  • 作为一项内部更改以加快单元测试,单元测试现在由 GitHub workflows 协助完成,并已移除 Travis CI 和 Appveyor hook。
  • 改进了 mlxtend.plotting.heatmapmlxtend.plotting.plot_confusion_matrix 中的轴标签旋转(#872
  • 修复 McNemar 指南中的各种拼写错误。
  • 如果在频繁模式函数 apriorifpmaxfpgrowth 中使用了非布尔数组,则会发出警告。(通过 NimaSarajpoor 实现,#934
错误修复
  • 修复 heatmap 中某些颜色映射导致标签不可读的问题。(#852
  • 修复向 mlxtend.plotting.plot_confusion_matrix 传递字符串类别名称时出现的问题(#894

版本 0.19.0 (2021 年 9 月 2 日)

下载
新特性
  • evaluate.accuracy_score 中添加了第二个“平衡精度”解释(“balanced”),除了现有的“average”选项之外,用于计算 scikit-learn 风格的平衡精度。(#764
  • mlxtend.plotting 添加新的 scatter_hist 函数,用于生成散点直方图。(通过 Maitreyee Mhasaka 实现,#757
  • evaluate.permutation_test 函数现在接受 paired 参数,用于指定是否支持配对置换/随机化检验。(#768
  • StackingCVRegressor 现在也支持类似 StackingRegressor 的多维目标,通过 StackingCVRegressor(..., multi_output=True) 实现。(通过 Marco Tiraboschi 实现,#802
变更
  • 更新了单元测试以兼容 scikit-learn 0.24.1。(#774
  • 如果目标是多维的,StackingRegressor 现在需要设置 StackingRegressor(..., multi_output=True);这有助于更好地进行输入验证。(#802
  • 移除了 plot_decision_regions 中已弃用的 res 参数。(#803
  • plot_learning_curves 添加 title_fontsize 参数,用于控制标题字体大小;同时,绘图样式现在为 matplotlib 的默认样式。(#818
  • 内部更改,在 mlxtend.plotting.plot_decision_regions 的散点图高亮中,使用 'c': 'none' 代替 'c': '',以保持与 Matplotlib 3.4 及更新版本的兼容性。(#822
  • mlxtend.plotting.plot_confusion_matrix 函数添加 fontcolor_threshold 参数,作为手动确定字体颜色截止值的附加选项。(#827
  • 如果传递空的频繁项集 DataFrame,frequent_patterns.association_rules 现在会引发 ValueError。(#843
  • mlxtend.evaluate.bootstrap_point632_score 函数中实现的 .632 和 .632+ 自助法现在使用整个训练集作为重替代加权项,而不是每轮都是新自助样本的内部训练集。(#844
错误修复

版本 0.18.0 (2020 年 11 月 25 日)

下载
新特性
  • bias_variance_decomp 函数现在支持对在自助样本上拟合的估计器使用可选的 fit_params。(#748
  • bias_variance_decomp 函数现在支持 Keras 估计器。(通过 @hanzigs 实现,#725
  • 添加新的 mlxtend.classifier.OneRClassifier(单规则分类器)类,这是一种简单的基于规则的分类器,常被用作性能基线或简单的可解释模型。(#726
  • 添加新的 create_counterfactual 方法,用于创建反事实以解释模型预测。(#740
变更
  • permutation_test (mlxtend.evaluate.permutation) 已更正为给出其统计量*至少与观测值一样极端*的置换比例。(通过 Florian Charlier 实现,#721
  • 修复 McNemar 混淆矩阵布局以符合约定(和文档),交换左上角和右下角单元格。(通过 mmarius 实现,#744
错误修复
  • 用于日志记录目的的 LogisticRegression 损失函数未包含权重向量中第一个权重的 L2 惩罚(这不是偏置单元)。然而,由于此损失函数仅用于日志记录,并且梯度保持正确,因此这不会影响主代码。(#741
  • 修复了 bias_variance_decomp 中的一个错误,在使用 mse 损失时,向下转换为整数会导致小数字的不精确结果。(#749

版本 0.17.3 (2020 年 7 月 27 日)

下载
新特性
  • 为自助法方法添加 predict_proba kwarg,以允许对接受概率值的评分函数进行自助抽样。(通过 Adam Li 实现,#700
  • mlxtend.plotting.heatmap() 添加 cell_values 参数,通过设置 cell_values=False 可选地禁止单元格注释。(#703
变更
  • EnsembleVoteClassifierStackingClassifier 实现了 use_clonesfit_base_estimators(之前在 EnsembleVoteClassifier 中称为 refit)。(通过 Katrina Ni 实现,#670
  • mlxtend.text 中切换到使用原始字符串进行正则表达式匹配,以防止在 Python 3.8 中出现弃用警告(#688
  • 在将数据发送到并行后端之前,在顺序前向选择中对数据进行切片,以减少内存消耗。
错误修复
  • 修复 matplotlib v3.1.0 及更新版本中轴的 DeprecationWarning。(#673
  • 修复 bootstrap_point632_score 函数中用于 .632+ 估计的 no_information_rate 函数中使用 meshgrid 的问题。(#688
  • 修复 fpmax 中的一个问题,该问题可能导致支持值不正确。(通过 Steve Harenberg 实现,#692

版本 0.17.2 (2020 年 2 月 24 日)

下载
新特性
  • -
变更
  • 之前已弃用的 OnehotTransactions 已被移除,推荐使用 TransactionEncoder
  • 在频繁模式挖掘函数中移除了 SparseDataFrame 支持,推荐使用 pandas >=1.0 处理稀疏数据的新方式。如果您使用了 SparseDataFrame 格式,请参阅 pandas 的迁移指南:https://pandas.ac.cn/pandas-docs/stable/user_guide/sparse.html#migrating。(#667
  • plot_confusion_matrix.py 现在也接受 matplotlib 图形和轴作为输入,可以将混淆矩阵图添加到其中。(通过 Vahid Mirjalili 实现,#671
错误修复
  • -

版本 0.17.1 (2020 年 1 月 28 日)

下载
新特性
  • SequentialFeatureSelector 现在支持通过 fixed_features 参数使用预先指定的特征集。(#578
  • mlxtend.evaluate 添加新的 accuracy_score 函数,用于计算基本分类精度、每类别精度和平均每类别精度。(通过 Deepan Das 实现,#624
  • StackingClassifierStackingCVClassifier 现在具有 decision_function 方法,当元估计器是线性模型或支持向量分类器时,该方法在计算 roc_auc 和 average_precision 分数方面优于 predict_proba。(通过 Qiang Gu 实现,#634
变更
  • low_memory=True 时,提高了 apriori 频繁项集生成函数的运行时性能。对于小型项集,设置 low_memory=False(默认值)仍然更快,但对于大型项集,low_memory=True 可以快得多并且需要更少的内存。此外,当输入 pandas DataFrame 很大时,对 apriori、̀ fpgrowthfpmax的输入验证需要大量时间;当输入包含布尔值(而不是零/一)时,这种情况现在大大减少,这在使用TransactionEncoder` 时就是这种情况。(通过 Denis Barbier 实现,#619
  • 为频繁项集算法添加了对较新的稀疏 pandas DataFrame 的支持。此外,当输入的 pandas DataFrame 包含整数值时,对 apriori、̀ fpgrowthfpmax` 的输入验证在稀疏 DataFrame 上运行得快得多。(通过 Denis Barbier 实现,#621
  • fpgrowthfpmax 直接在稀疏 DataFrame 上工作,它们之前被转换为密集的 Numpy 数组。(通过 Denis Barbier 实现,#622
错误修复
  • 修复了 mlxtend.plotting.plot_pca_correlation_graph 中的一个错误,该错误导致解释方差总和不为 1。此外,提高了相关性计算的运行时性能,并添加了一个缺失的函数参数,用于在用户提供自己的主成分时输入解释方差(特征值)。(通过 Gabriel Azevedo Ferreira 实现,#593
  • fpgrowthapriori 对于边缘情况(例如 min_support=0)的行为一致。(通过 Steve Harenberg 实现,#573
  • 如果频繁项集为空,fpmax 现在返回一个空数据框,而不是引发错误。(通过 Steve Harenberg 实现,#573
  • 修复了 mlxtend.plotting.plot_confusion_matrix 中的一个问题,即中深色单元格的字体颜色选择不理想,难以阅读。(通过 sohrabtowfighi 实现,#588
  • mlxtend.feature_extraction.PrincipalComponentAnalysissvd 模式现在在计算特征值时也使用 n-1 自由度而不是 n 自由度,以匹配 eigen 的行为。#595
  • 禁用 StackingCVClassifier 的输入验证,因为它在将 pipeline 用作输入时会导致问题。#606

版本 0.17.0 (2019 年 7 月 19 日)

下载
新特性
  • 对现有的 iris_data() 进行了增强,现在可以加载 Iris 数据集的 UCI Repository 版本以及已更正的原始版本,这两个版本在两个数据点上略有差异(与 Fisher 的论文一致;这也与 R 中的相同)。(通过 janismdhanbad 实现,#539
  • SequentialFeatureSelectorExhaustiveFeatureSelectorfit() 方法添加可选的 groups 参数,用于转发给 sklearn CV。(通过 arc12 实现,#537
  • mlxtend.plotting 子模块添加新的 plot_pca_correlation_graph 函数,用于绘制 PCA 相关性图。(通过 Gabriel-Azevedo-Ferreira 实现,#544
  • mlxtend.plotting.plot_decision_region 函数添加 zoom_factor 参数,允许用户放大和缩小决策区域图。(#545
  • 添加了函数 fpgrowth,实现了 FP-Growth 算法用于挖掘频繁项集,作为现有 apriori 算法的直接替代品。(通过 Steve Harenberg 实现,#550
  • mlxtend.plotting 中新增 heatmap 函数。(#552
  • 添加了函数 fpmax,实现了 FP-Max 算法用于挖掘最大项集,作为 fpgrowth 算法的直接替代品。(通过 Steve Harenberg 实现,#553
  • mlxtend.plottingplot_decision_regions 函数新增 figsize 参数。(通过 Mirza Hasanbasic 实现,#555
  • apriori 频繁项集生成函数新增 low_memory 选项。设置 low_memory=False(默认值)使用了一个大幅优化的算法版本,比原始实现(low_memory=True)快 3-6 倍。(通过 jmayse 实现,#567
  • mlxtend.regressor.linear_regression 中的 LinearRegression 添加了数值稳定的 OLS 方法,该方法使用了 QR decompositionSingular Value Decomposition (SVD) 方法。(通过 PuneetGrov3r 实现,#575
变更
  • 现在在内部使用最新的 joblib 库进行多处理,而不是 sklearn.externals.joblib。(#547
  • 更改了 StackingCVClassifierStackingCVRegressor,使得第一级模型可以生成非数值类型的输出。(#562
错误修复
  • 通过添加关于 R 和 UCI 机器学习仓库中鸢尾花数据差异的说明,修复了 iris.pyiris_data() 的文档。
  • 确保如果在 PCA 中使用 'svd' 模式,特征值的数量与使用 'eigen' 时相同(在这种情况下添加 0) (#565

版本 0.16.0 (2019 年 5 月 12 日)

下载
新特性
  • StackingCVClassifierStackingCVRegressor 现在支持 random_state 参数,该参数与 shuffle 一起控制交叉验证分割的随机性。(通过 Qiang Gu 实现,#523
  • StackingCVClassifierStackingCVRegressor 现在有一个新的 drop_last_proba 参数。如果设置为 True,它会删除特征集中的最后一个“概率”列,因为它是冗余的:p(y_c) = 1 - p(y_1) + p(y_2) + ... + p(y_{c-1})。这对于对完全共线特征敏感的元分类器很有用。(#532
  • 包括 StackingClassifierStackingCVClassifierStackingRegressor 在内的其他 stacking 估计器支持对 regressors 进行网格搜索,甚至支持单个基础回归器。(通过 Qiang Gu 实现,#522
  • StackingCVClassifier 添加多处理支持。(通过 Qiang Gu 实现,#522
  • StackingCVRegressor 添加多处理支持。(通过 Qiang Gu 实现,#512
  • 现在,StackingCVRegressor 也支持对 regressors 进行网格搜索,甚至支持单个基础回归器。当存在混合级别参数时,GridSearchCV 将尝试按自上而下的顺序替换超参数(有关示例详细信息,请参阅文档)。(通过 Qiang Gu 实现,#515
  • apriori 添加 verbose 参数,以显示当前迭代次数以及当前正在采样的项集大小。(#519
  • 向混淆矩阵函数添加可选的 class_name 参数,以在轴上将类别名称显示为刻度。(通过 sandpiturtle 实现,#487
  • 向 PCA 添加 pca.e_vals_normalized_ 属性,用于存储归一化形式的特征值;这通常被称为方差解释比。#545
变更
  • 由于新特性、重构和更好的 scikit-learn 支持(例如 GridSearchCV),StackingCVRegressor 的元回归器现在通过参数网格中的 'meta_regressor__* 进行访问。例如,如果之前通过 'randomforestregressor__n_estimators' 调整作为元回归器的 RandomForestRegressor,现在已更改为 'meta_regressor__n_estimators'。(通过 Qiang Gu 实现,#515
  • 上述相同的更改现在已应用于其他 stacking 估计器,包括 StackingClassifierStackingCVClassifierStackingRegressor。(通过 Qiang Gu 实现,#522
  • 自动对 PCA solver 'SVD' 执行均值中心化,使得使用 SVD 始终等同于使用协方差矩阵方法 #545
错误修复
  • 如果输入是 pandas DataFrame,feature_selection.ColumnSelector 现在也支持 int 类型的列名(除了 str 名称)。(通过 tetrar124 实现,#500
  • 如果 show_absolute=Trueshow_normed=True,修复了 plot_confusion_matrix 中不平衡数据集标签不可读的问题。(#504
  • 如果将 SparseDataFrame 传递给 apriori 并且由于 pandas 中 SparseDataFrame 实现的当前限制,数据框具有不以 0 开头的整数列名,则会引发更具信息性的错误。(#503
  • SequentialFeatureSelector 现在支持 DataFrame 作为所有操作模式(前向/后向/浮动)的输入。#506
  • mlxtend.evaluate.feature_importance_permutation 现在正确地接受具有正确函数签名的评分函数作为 metric 参数。#528

版本 0.15.0 (2019 年 1 月 19 日)

下载
新特性
  • mlxtend.image 添加新的转换器类 EyepadAlign,该类根据眼睛的位置对人脸图像进行对齐。(通过 Vahid Mirjalili 实现,#466
  • 添加新的函数 mlxtend.evaluate.bias_variance_decomp,将回归器或分类器的损失分解为偏差和方差项。(#470
  • PrincipalComponentAnalysis 添加 whitening 参数,可选地对转换后的数据进行白化,使得特征具有单位方差。(#475
变更
  • PrincipalComponentAnalysis 中的默认 solver 更改为 'svd' 而不是 'eigen',以提高数值稳定性。(#474
  • 如果未检测到人脸特征点,mlxtend.image.extract_face_landmarks 现在返回 None,而不是全零数组。(#466
错误修复
  • PrincipalComponentAnalysisLinearDiscriminantAnalysis 中,如果 solver 为 'eigen',在某些边缘情况下特征向量可能未排序。(#477, #478

版本 0.14.0 (2018 年 11 月 9 日)

下载
新特性
  • plotting 模块添加了 scatterplotmatrix 函数。(#437
  • StackingRegressorStackingClassifierStackingCVRegressorStackingCVClassifierEnsembleVoteClassifier 添加了 sample_weight 选项。(#438
  • 添加了 RandomHoldoutSplit 类,用于在 SequentialFeatureSelector、scikit-learn GridSearchCV 等中执行随机训练/验证分割而无需旋转。(#442
  • 添加了 PredefinedHoldoutSplit 类,用于在 SequentialFeatureSelector、scikit-learn GridSearchCV 等中,根据用户指定的索引执行训练/验证分割而无需旋转。(#443
  • 创建了新的 mlxtend.image 子模块,用于处理图像处理相关任务。(#457
  • mlxtend.image 添加了基于 dlib 的新便利函数 extract_face_landmarks。(#458
  • mlxtend.evaluate.bootstrap_point632_score 方法添加了 method='oob' 选项,用于计算经典的袋外自助估计值(#459
  • mlxtend.evaluate.bootstrap_point632_score 方法添加了 method='.632+' 选项,用于计算解决 .632 自助法乐观偏差的 .632+ 自助估计值(#459
  • 添加了新的 mlxtend.evaluate.ftest 函数,用于执行 F 检验,比较两个或多个分类模型的准确性。(#460
  • 添加了新的 mlxtend.evaluate.combined_ftest_5x2cv 函数,用于执行组合的 5x2cv F 检验,比较两个模型的性能。(#461
  • 添加了新的 mlxtend.evaluate.difference_proportions 测试,用于比较两个比例(例如,分类器准确性)(#462
变更
  • 解决了 NumPy 0.15 中的弃用警告。(#425
  • 由于 PR (#459) 中的复杂性,现在已放弃 Python 2.7;由于 Python 软件基金会对 Python 2.7 的官方支持大约在 12 个月后结束,这种重新聚焦有望在不担心向后兼容性方面节省一些开发时间。
错误修复
  • 修复了 mlxtend.plotting.plot_confusion_matrix 中缺少导入的问题。(#428

版本 0.13.0 (2018 年 7 月 20 日)

下载
新特性
  • SequentialFeatureSelector 与交叉验证生成器一起使用时,现在会引发有意义的错误消息。(#377
  • SequentialFeatureSelector 现在通过 fit 方法接受自定义特征名称,以便生成更具可解释性的特征子集报告。(#379
  • SequentialFeatureSelector 现在也兼容 Pandas DataFrame,并使用 DataFrame 列名生成更具可解释性的特征子集报告。(#379
  • ColumnSelector 现在适用于 Pandas DataFrame 列。(由 Manuel Garrido 实现,#378
  • mlxtend.feature_selection 中的 ExhaustiveFeatureSelector 估计器现在可以通过 control+c 在中途安全地停止。(#380
  • mlxtend.math 添加了两个新函数 vectorspace_orthonormalizationvectorspace_dimensionality,分别用于使用 Gram-Schmidt 过程将一组线性独立向量转换为一组正交基向量,以及计算向量空间的维数。(#382
  • mlxtend.frequent_patterns.apriori 现在支持 pandas SparseDataFrame 生成频繁项集。(通过 Daniel Morales 实现,#404
  • plot_confusion_matrix 函数现在除了或替代绝对混淆矩阵系数外,还能够显示归一化混淆矩阵系数,带或不带颜色条。文本显示方法已更改,以便使用颜色映射的完整范围。默认大小现在也根据类别数量设置。
  • StackingRegressor 添加了将元特征与原始输入特征合并的支持(通过 use_features_in_secondary),就像在其他 Stacking 类中已支持的那样。(#418
  • association_rules 函数添加了 support_only 参数,允许对不包含完整前件和后件支持值的裁剪输入 DataFrame 构建关联规则(仅基于支持度量)。(#421
变更
  • 使用 apriori 生成的项集现在是 frozensets (#393William Laney#394)
  • 现在,如果输入到 apriori 的 DataFrame 包含非 0、1、True、False 的值,则会引发错误。 #419)
错误修复
  • 允许通过 scikit-learn 的 clone 函数克隆 mlxtend 估算器。 (#374)
  • 修复了允许在 StackingRegressorStackingCVRegressor 中正确使用 refit=False 的错误 (#384 和 (#385) 由 selay01)
  • 允许 StackingClassifieruse_features_in_secondary=True 时使用稀疏矩阵 (#408Floris Hoogenbook)
  • 允许 StackingCVRegressoruse_features_in_secondary=True 时使用稀疏矩阵 (#416)
  • 允许 StackingCVClassifieruse_features_in_secondary=True 时使用稀疏矩阵 (#417)

版本 0.12.0 (2018-04-21)

下载
新特性
  • 新增 feature_importance_permuation 函数,用于通过*置换重要性*方法计算分类器和回归器中的特征重要性 (#358)
  • ExhaustiveFeatureSelector 的 fit 方法现在可选地接受用于特征选择的估算器的 **fit_params。 (#354 由 Zach Griffith)
  • SequentialFeatureSelector 的 fit 方法现在可选地接受用于特征选择的估算器的 **fit_params。 (#350 由 Zach Griffith)
变更
  • plot_decision_regions 的颜色替换为对色盲友好的调色板,并添加决策区域的等高线。 (#348)
  • 所有堆叠估算器现在如果在拟合之前调用任何推理方法,则会引发 NonFittedErrors。 (#353)
  • StackingClassifierStackingCVClassifierrefit 参数重命名为 use_clones,使其更明确且不易误导。 (#368)
错误修复
  • 文档和文档工具的各种更改,用于修复格式问题 (#363)
  • 修复了在 shuffle=TrueStackingCVClassifier 的元特征未按原始顺序存储的错误 (#370)
  • 许多文档改进,包括 API 文档中指向用户指南的链接 (#371)

版本 0.11.0 (2018-03-14)

下载
新特性
  • 新增函数实现了重采样配对 t 检验过程(paired_ttest_resampled),用于比较两个模型的性能。 (#323)
  • 新增函数实现了 k 折配对 t 检验过程(paired_ttest_kfold_cv),用于比较两个模型的性能(也称为 k 留存配对 t 检验)。 (#324)
  • 新增函数实现了 Dieterrich (1998) 提出的 5x2cv 配对 t 检验过程(paired_ttest_5x2cv),用于比较两个模型的性能。 (#325)
  • 为堆叠类添加了 refit 参数(类似于 EnsembleVoteClassifier 中的 refit 参数),以支持遵循 scikit-learn API 但与 scikit-learn 的 clone 函数不兼容的分类器和回归器。 (#322)
  • ColumnSelector 现在有一个 drop_axis 参数,可以在与 CountVectorizer 一起使用的管道中使用。 (#333)
变更
  • 如果在 StackingRegressorStackingCVRegressor 中调用 fit 方法之前调用了 predictpredict_meta_features,则会引发信息性错误消息。 (#315)
  • plot_decision_regions 函数现在根据特征维度自动确定最佳设置并支持抗锯齿。旧的 res 参数已被弃用。 (#309Guillaume Poirier-Morency)
  • Apriori 代码由于 onehot transformation 的优化以及 apriori 算法生成的候选数量而更快。 (#327Jakub Smid)
  • OnehotTransactions 类(通常与 apriori 函数结合用于关联规则挖掘)现在更节省内存,因为它使用布尔数组而不是整数数组。此外,OnehotTransactions 类现在可以提供 sparse 参数来生成 onehot 矩阵的稀疏表示,以进一步提高内存效率。 (#328Jakub Smid)
  • OneHotTransactions 已被弃用,并由 TransactionEncoder 取代。 (#332
  • plot_decision_regions 函数现在有三个新参数:scatter_kwargscontourf_kwargsscatter_highlight_kwargs,可用于修改绘图样式。 (#342James Bourbeau)
错误修复
  • 修复了在 refit 设置为 false 时向 EnsembleVoteClassifier 提供类别标签的问题。 (#322)
  • 允许在 plot_decision_regions 函数中使用 16 位和 32 位精度的数组。 (#337)
  • 修复了在使用 conviction 指标计算关联规则时,如果项目数 <= 1,则会引发索引错误的 bug。 (#340)

版本 0.10.0 (2017-12-22)

下载
新特性
  • StackingCVRegressor 中 fit 的新参数 store_train_meta_features。如果为 True,则训练元特征存储在 self.train_meta_features_ 中。StackingCVRegressor 的新方法 pred_meta_features。人们可以使用此方法获取测试元特征。 (#294 via takashioya)
  • StackingCVRegressor 的新属性 store_train_meta_features 和方法 pred_meta_features 也已添加到 StackingRegressorStackingClassifierStackingCVClassifier 中 (#299 & #300)
  • 新增函数(evaluate.mcnemar_tables),用于从模型预测数组创建多个 2x2 列联表,可用于多个 McNemar (post-hoc) 检验或 Cochran's Q 或 F 检验等。 (#307)
  • 新增函数(evaluate.cochrans_q),用于执行 Cochran's Q 检验以比较多个分类器的准确性。 (#310)
变更
错误修复
  • 改进了通过精确 McNemar 检验计算的 p 值的数值稳定性 (#306)
  • 使用该库不再需要 nose (#302)

版本 0.9.1 (2017-11-19)

下载
新特性
  • 添加了 mlxtend.evaluate.bootstrap_point632_score,用于使用 .632 bootstrap 评估估算器的性能。 (#283)
  • 通过 apriori 函数生成频繁项集的新参数 max_len,允许提前停止。 (#270)
变更
  • SequentialFeatureSelector 中的所有特征索引元组现在都按排序顺序排列。 (#262)
  • SequentialFeatureSelector 现在按照 Novovicova & Kittler (1994) 中描述的方式运行浮动包含/排除的延续。请注意,这在任何测试场景中都没有导致性能差异,但在某些边缘情况下可能导致更好的性能。 (#262)
  • utils.Counter 现在接受一个 name 变量来帮助区分多个计数器,时间精度可以通过 'precision' kwarg 设置,新的属性 end_time 保存了最后一次迭代完成的时间。 (#278 via Mathew Savage)
错误修复
  • 修复了使用 SciPy 1.0 时 McNemar 检验发生的弃用错误。 (#283)

版本 0.9.0 (2017-10-21)

下载
新特性
  • 添加了 evaluate.permutation_test,这是一个用于假设检验(或 A/B 测试)的置换检验,用于检验两个样本是否来自同一分布。换句话说,这是一个检验两个组是否没有显著差异(例如,治疗组和对照组)的零假设的过程。 (#250)
  • 将 `'leverage'` 和 `'conviction` 添加到 frequent_patterns.association_rules 函数作为评估指标。 (#246 & #247)
  • PrincipalComponentAnalysis 添加了 loadings_ 属性,用于计算特征在主成分上的因子载荷。 (#251)
  • 允许在集成和堆叠估算器中对分类器/回归器进行网格搜索。 (#259)
  • 新增 make_multiplexer_dataset 函数,用于创建由 n 位布尔多路复用器生成的数据集,以评估监督学习算法。 (#263)
  • 新增 BootstrapOutOfBag 类,是 out-of-bag bootstrap 的实现,用于评估监督学习算法。 (#265)
  • StackingClassifierStackingCVClassifierStackingRegressorStackingCVRegressorEnsembleVoteClassifier 的参数现在可以使用 scikit-learn 的 GridSearchCV 进行调优 (#254 via James Bourbeau)
变更
  • frequent_patterns.association_rules 返回的 `'support'` 列已更改为计算“先行项与后继项的并集”的支持度,并添加了新的 antecedant support' 和 `'consequent support'` 列以避免歧义。 (#245)
  • 允许通过 scikit-learn 的 clone 函数克隆 OnehotTransactions,这对于例如 scikit-learn 的 FeatureUnionGridSearchCV 是必需的(通过 Iaroslav Shcherbatyi)。 (#249)
错误修复
  • 修复了 _IterativeModel 子类中 self._init_time 参数的问题。 (#256)
  • 修复了在 Python 2.7 上运行 plot_ecdf 时发生的精度 bug。 (264)
  • PrincipalComponentAnalysis 中来自 SVD 的向量现在已缩放,因此通过 solver='eigen'solver='svd' 的特征值现在存储具有相同大小的特征值。 (#251)

版本 0.8.0 (2017-09-09)

下载
新特性
  • 添加了 mlxtend.evaluate.bootstrap,它实现了普通的非参数 bootstrap 来 bootstrap 单个统计量(例如,回归拟合的均值、中位数、R^2 等) #232
  • SequentialFeatureSelectork_features 现在接受字符串参数“best”或“parsimonious”以实现更“自动化”的特征选择。例如,如果提供“best”,特征选择器将返回具有最佳交叉验证性能的特征子集。如果提供“parsimonious”作为参数,将选择在交叉验证性能的一个标准误差内的最小特征子集。 #238
变更
  • SequentialFeatureSelector 现在使用 np.nanmean 而不是正常均值来支持可能返回 np.nan 的评分器 #211 (via mrkaiser)
  • skip_if_stuck 参数已从 SequentialFeatureSelector 中移除,取而代之的是更高效的实现,它比较了条件包含/排除结果(在浮动版本中)与先前缓存的采样特征集的性能 #237
  • ExhaustiveFeatureSelector 已修改以显著减少内存消耗 #195 (via Adam Erickson)
错误修复
  • 修复了 SequentialFeatureSelector 选择的特征子集大于通过 k_features 元组最大值指定的子集的 bug #213

版本 0.7.0 (2017-06-22)

下载
新特性
变更
  • TensorFlow 估算器已从 mlxtend 中移除,因为 TensorFlow 现在有非常方便的方式来构建估算器,这使得这些实现变得过时。
  • plot_decision_regions 现在支持绘制超过 2 个训练特征的决策区域 #189, via James Bourbeau)。
  • mlxtend.feature_selection.SequentialFeatureSelectormlxtend.feature_selection.ExhaustiveFeatureSelector 中的并行执行现在在不同的特征子集上进行,而不是在不同的交叉验证折叠上进行,以便在特征数量很大时更好地利用具有多个处理器的机器 (#193, via @whalebot-helmsman)。
  • 如果在 StackingCVClassifer 中将 pandas DataFrames 或 Python 列表的列表作为 fit 参数输入,则会引发有意义的错误消息 (198)。
  • StackingCVClassifiern_folds 参数已更改为 cv,现在可以接受 scikit-learn 中可用的任何交叉验证技术。例如,StackingCVClassifier(..., cv=StratifiedKFold(n_splits=3))StackingCVClassifier(..., cv=GroupKFold(n_splits=3)) (#203, via Konstantinos Paliouras)。
错误修复
  • SequentialFeatureSelector 现在正确接受 scoring 参数的 None 参数,以从 scikit-learn 分类器和回归器中推断默认评分指标 (#171)。
  • plot_decision_regions 函数现在支持通过 matplotlib 的 plt.subplots 生成的现有轴对象。 (#184参见示例)
  • 使 math.num_combinationsmath.num_permutations 对于大量组合和排列具有数值稳定性 (#200)。

版本 0.6.0 (2017-03-18)

下载
新特性
  • 实现了一个 association_rules 函数,该函数允许根据频繁项集列表生成规则(通过 Joshua Goerner)。
变更
  • 通过 plotting.plot_decision_regions 为绘图添加了黑色 edgecolor,以便在 matplotlib>=2.0 中使标记更容易与背景区分开来。
  • association 子模块已重命名为 frequent_patterns
错误修复
  • apriori 结果的 DataFrame 索引现在是唯一的且有序的。
  • 修复了 autompg 和 wine 数据集中的拼写错误(通过 James Bourbeau)。

版本 0.5.1 (2017-02-14)

下载
新特性
  • EnsembleVoteClassifier 新增了一个 refit 属性,如果 refit=False,则防止重新拟合分类器以节省计算时间。
  • evaluate 中添加了一个新的 lift_score 函数来计算 lift 分数(通过 Batuhan Bardak)。
  • 如果底层模型支持多元目标,StackingClassifierStackingRegressor 也支持多元目标(通过 kernc)。
  • StackingClassifier 新增了一个像 StackingCVClassifier 一样的 use_features_in_secondary 属性。
变更
  • SequentialFeatureSelector 中的默认详细级别更改为 0
  • 如果在调用 predict 之前没有 fitEnsembleVoteClassifier 现在会引发 NotFittedError。(通过 Anton Loss
  • 添加了新的 TensorFlow 变量初始化语法,以确保与 TensorFlow 1.0 兼容
错误修复
  • 修复了 SequentialFeatureSelectork_features 的错误默认值
  • SequentialFeautureSelector 中选定的特征子集转换为集合,以防止如果 k_idx 是同一组合的不同排列时迭代器卡住(通过 Zac Wellmer)。
  • 修复了学习曲线的问题,该问题导致性能指标被颠倒(通过 ipashchenko
  • 修复了在浮动变体中存在性能相似的子集时,SequentialFeatureSelector 中可能发生的错误(通过 Zac Wellmer)。

版本 0.5.0 (2016-11-09)

下载
新特性
  • mlxtend.feature_selection 中新增 ExhaustiveFeatureSelector 估算器,用于评估指定范围内的所有特征组合
  • StackingClassifier 新增参数 average_probas,默认为 True 以保持当前行为。但新增了弃用警告,未来版本 (0.6.0) 中将默认为 Falseaverage_probas=False 将导致堆叠级别 1 的预测概率,而不是平均这些概率。
  • “mlxtend.classifier”中新增 StackingCVClassifier 估算器,用于实现堆叠集成,该集成使用交叉验证技术训练元估算器以避免过拟合(Reiichiro Nakano
  • 新增 OnehotTransactions 编码器类,添加到 preprocessing 子模块,用于将交易数据转换为独热编码数组
  • mlxtend.feature_selection 中的 SequentialFeatureSelector 估算器现在可以通过 control+c 安全地中止进程,并且弃用了 print_progress,转而使用更可调的 verbose 参数(Will McGinnis
  • association 中新增 apriori 函数,用于从交易数据中提取频繁项集以进行关联规则挖掘
  • plotting 中新增 checkerboard_plot 函数,用于绘制棋盘表格/热图
  • evaluate 中新增 mcnemar_tablemcnemar 函数,用于计算 2x2 列联表和 McNemar 检验
变更
  • 所有绘图函数已移至 mlxtend.plotting,以便与持续集成服务兼容,并使 matplotlib 对于 mlxtend 核心功能的用户成为可选安装项
  • 添加了 scikit-learn 0.18 的兼容层,使用新的 model_selection 模块,同时保持对 scikit-learn 0.17 的向后兼容性。
错误修复
  • 如果存在超过 4 个类别标签,mlxtend.plotting.plot_decision_regions 现在可以正确绘制决策区域
  • X_higlight 参数是 1D 数组时,在 plot_decision_regions 中引发 AttributeErrorchkoar

版本 0.4.2 (2016-08-24)

下载
新特性
  • 新增 preprocessing.CopyTransformer,一个通过 transformfit_transform 返回输入数组副本的模拟类
变更
  • CI 中添加了 AppVeyor,以确保 MS Windows 兼容性
  • 数据集现在保存为压缩的 .txt 或 .csv 文件,而不是导入为 Python 对象
  • feature_selection.SequentialFeatureSelector 现在支持使用元组指定“最小-最大” k_features 范围来选择 k_features
  • PrincipalComponentAnalysis 添加了“SVD 求解器”选项
  • 如果在调用 fit 之前调用了 transformget_metric_dict,则在 SequentialFeatureSelector 中引发带有“not fitted”消息的 AttributeError
  • 如果在 TfMultiLayerPerceptron 的隐藏层中激活函数是 ReLU,则使用小的正偏置单元,以避免死神经元
  • SequentialFeatureSelector 添加了一个可选的 clone_estimator 参数,默认为 True,以避免修改原始估算器对象
  • evaluate.plot_decision_regions 函数中进行了更严格的类型和形状检查
  • 如果输入数组*不是*稀疏的,DenseTransformer 现在不会引发错误
  • 使用 scikit-learn 的 BaseEstimator 作为 feature_selection.ColumnSelector 的父类进行 API 清理
错误修复
  • 修复了当为 SequentialFeatureSelectork_features 参数提供元组范围且评分指标小于 -1(例如 scikit-learn 的 MSE 评分函数)时出现的问题(wahutch
  • 修复了在 StackingClassifierverbose > 1 时发生的 AttributeError 问题
  • 修复了 classifier.SoftmaxRegression 中的一个 bug,该 bug 使用了偏移量的平均值而不是它们的总和来更新偏置单元
  • 修复了 MLP _layer_mapping 函数中一个罕见的 bug,该 bug 导致在初始化权重和偏置时交换了随机数生成种子

版本 0.4.1 (2016-05-01)

下载
新特性
  • 新增 TensorFlow 线性回归估算器(tf_regressor.TfLinearRegression
  • 新增 k 均值聚类估算器(cluster.Kmeans
  • 新增 TensorFlow k 均值聚类估算器(tf_cluster.Kmeans
变更
  • 由于估算器类的重构,fit 方法的 init_weights 参数已全局重命名为 init_params
  • 由于代码清理和重构,估算器的整体性能有所提升
  • 添加了额外的几种检查以验证正确的数组类型,并提供更有意义的异常消息
  • tf_classifier.TfMultiLayerPerceptron 分类器添加了可选的 dropout 以进行正则化
  • tf_classifier.TfMultiLayerPerceptron 分类器添加了可选的 decay 参数,用于通过学习率 eta 的指数衰减实现自适应学习
  • 用更简化的 MultiLayerPerceptronclassifier.MultiLayerPerceptron)替换了旧的 NeuralNetMLP;现在输出层也带有 softmax 和分类交叉熵损失。
  • 统一了 fit 函数的 init_params 参数,以便在算法停止的地方继续训练(如果支持)

版本 0.4.0 (2016-04-09)

新特性
变更
  • mlxtend.preprocessing.standardize 中的 column 参数现在默认为 None,以便更方便地标准化所有列

版本 0.3.0 (2016-01-31)

下载
新特性
  • classifier.NeuralNetMLP 添加了进度条跟踪器
  • 添加了一个函数来对预测与目标类别标签进行评分 evaluate.scoring
  • 添加了混淆矩阵函数来创建(evaluate.confusion_matrix)和绘制(evaluate.plot_confusion_matrix)混淆矩阵
  • mlxtend.evaluate.plot_learning_curves 中新增样式参数和改进的轴缩放
  • mlxtend.data 添加了 loadlocal_mnist,用于将本地字节文件中的 MNIST 流式传输到 numpy 数组中
  • 新增 NeuralNetMLP 参数:random_weights, shuffle_init, shuffle_epoch
  • 新增 SFS 功能,例如生成 pandas DataFrame 结果表和绘图函数(带有置信区间、标准差和标准误差条)
  • SFS 中添加了对回归估算器的支持
  • 新增波士顿 housing dataset
  • 新增 classifier.NeuralNetMLPshuffle 参数
变更
  • mlxtend.preprocessing.standardize 函数现在可选地返回从数组估计的参数,以便重用。进一步的改进使得 standardize 函数更智能,以避免零除错误
  • evaluate.plot_decision_regions 函数的美学改进,例如隐藏绘图轴
  • classifier.EnsembleClassfier 重命名为 classifier.EnsembleVoteClassifier
  • 改进了 PerceptronAdalineLinearRegressionLogisticRegression 中的随机权重初始化
  • mlxtend.classifier.Adalinelearning 参数更改为 solver,并添加了“正规方程”作为封闭形式解求解器
  • 在 1 维评估中,隐藏 mlxtend.evaluate.plot_decision_regions 中的 y 轴标签
  • 序贯特征选择算法已统一为一个单独的 SequentialFeatureSelector 类,带有参数以启用浮动选择并在前向选择和后向选择之间切换。
  • MNIST 的分层抽样(现在从 10 个数字类别中抽取 500 个随机样本)
  • mlxtend.plotting 重命名为 mlxtend.general_plotting,以区分通用绘图函数和专业效用函数(例如 evaluate.plot_decision_regions

版本 0.2.9 (2015-07-14)

下载
新特性
  • 序贯特征选择算法:SFS、SFFS、SBS 和 SFBS
变更
  • LogisticRegression 中的 regularizationlambda 参数更改为单个参数 l2_lambda

版本 0.2.8 (2015-06-27)

  • API 更改
    • mlxtend.sklearn.EnsembleClassifier -> mlxtend.classifier.EnsembleClassifier
    • mlxtend.sklearn.ColumnSelector -> mlxtend.feature_selection.ColumnSelector
    • mlxtend.sklearn.DenseTransformer -> mlxtend.preprocessing.DenseTransformer
    • mlxtend.pandas.standardizing -> mlxtend.preprocessing.standardizing
    • mlxtend.pandas.minmax_scaling -> mlxtend.preprocessing.minmax_scaling
    • mlxtend.matplotlib -> mlxtend.plotting
  • mlxtend.classifier.NeuralNetMLP 添加了动量学习参数(alpha 系数)。
  • mlxtend.classifier.NeuralNetMLP 添加了自适应学习率(递减常数)。
  • mlxtend.pandas.minmax_scaling 更名为 mlxtend.preprocessing.minmax_scaling,现在也支持 NumPy 数组
  • mlxtend.pandas.standardizing 更名为 mlxtend.preprocessing.standardizing,现在支持 NumPy 数组和 pandas DataFrame;此外,现在可以使用 ddof 参数来设置计算标准差时的自由度

版本 0.2.7 (2015-06-20)

  • 新增多层感知机(前馈人工神经网络)分类器为 mlxtend.classifier.NeuralNetMLP
  • mlxtend.data 添加了来自 MNIST 手写数字数据集的 5000 个带标签的训练样本

版本 0.2.6 (2015-05-08)

  • 新增使用不同求解器(梯度下降、随机梯度下降和封闭形式解(正规方程))的普通最小二乘回归
  • 为逻辑回归分类器添加了随机权重初始化选项,并更新了 l2 正则化
  • mlxtend.data 添加了 wine 数据集
  • mlxtend.matplotlib.enrichtment_plot 添加了 invert_axes 参数,以便可选地在 x 轴上绘制“Count”
  • Alejandro C. Bahnsenmlxtend.sklearn.EnsembleClassifier 新增 verbose 参数
  • 新增 mlxtend.pandas.standardizing,用于标准化 Pandas DataFrame 中的列
  • mlxtend.matplotlib.enrichment_plot 添加了参数 linestylesmarkers
  • mlxtend.regression.lin_regplot 自动添加 np.newaxis 并支持 python 列表
  • 新增分词器:mlxtend.text.extract_emoticonsmlxtend.text.extract_words_and_emoticons

版本 0.2.5 (2015-04-17)

  • 新增序贯后向选择(mlxtend.sklearn.SBS)
  • mlxtend.evaluate.plot_decision_regions 添加了 X_highlight 参数,用于高亮显示测试数据点。
  • 添加了 mlxtend.regression.lin_regplot,用于绘制线性回归拟合的直线。
  • 添加了 mlxtend.matplotlib.stacked_barplot,用于方便地使用 pandas DataFrame 生成堆叠条形图。
  • 新增 mlxtend.matplotlib.enrichment_plot

版本 0.2.4 (2015-03-15)

  • mlxtend.evaluate.learning_curves 添加了 scoring (由用户 pfsq 提供)
  • 修复了由缺少 README.html 文件引起的 setup.py 错误
  • 用于 pandas DataFrames 和 Numpy 数组的 matplotlib.category_scatter

版本 0.2.3 (2015-03-11)

  • 新增逻辑回归
  • 梯度下降和随机梯度下降感知器已更改为 Adaline(自适应线性神经元)
  • Perceptron 和 Adaline 用于 {0, 1} 类别
  • 新增 mlxtend.preprocessing.shuffle_arrays_unison 函数,用于统一打乱一个或多个 NumPy 数组。
  • 为随机梯度下降分类器添加了 shuffle 和随机种子参数。
  • mlxtend.file_io.find_filegroups 添加了 rstrip 参数,以允许修剪基本名称。
  • mlxtend.file_io.find_filegroupsfind_files 添加了 ignore_substring 参数。
  • 使用更强大的 regex 替换了 mlxtend.file_io.find_filegroups 中的 .rstrip。
  • mlxtend.sklearn.EnsembleClassifier 的网格搜索支持

版本 0.2.2 (2015-03-01)

  • 改进了 EnsembleClassifier 的鲁棒性。
  • 扩展了 plot_decision_regions() 功能,用于绘制 1D 决策边界。
  • 函数 matplotlib.plot_decision_regions 已重组为 evaluate.plot_decision_regions。
  • evaluate.plot_learning_curves() 函数已添加。
  • 新增了 Rosenblatt、梯度下降和随机梯度下降感知器。

版本 0.2.1 (2015-01-20)

  • 新增 mlxtend.pandas.minmax_scaling - 一个用于重新缩放 pandas DataFrame 列的函数。
  • EnsembleClassifier 接口的微小更新(新增 voting 参数)
  • 修复了 EnsembleClassifier 在类别标签不是从 0 到 n 的整数时无法返回正确类别标签的 bug。
  • 新增 matplotlib 函数,用于绘制分类器的决策区域。

版本 0.2.0 (2015-01-13)

  • 改进了 mlxtend.text.generalize_duplcheck,以删除重复项并防止无限循环问题。
  • 为 mlxtend.file_io.find_files 添加了 recursive 搜索参数。
  • 为 mlxtend.file_io.find_files 添加了 check_ext 参数,以基于文件扩展名进行搜索。
  • mlxtend.file_io.find 的默认参数是忽略不可见文件。
  • EnsembleClassifier 添加了 transformfit_transform
  • 新增 mlxtend.file_io.find_filegroups 函数。

版本 0.1.9 (2015-01-10)

  • 实现了 scikit-learn EnsembleClassifier(多数投票规则)类。

版本 0.1.8 (2015-01-07)

  • 改进了 mlxtend.text.generalize_names,以处理某些荷兰姓氏前缀(van, van der, de 等)。
  • 新增 mlxtend.text.generalize_name_duplcheck 函数,用于将 mlxtend.text.generalize_names 函数应用于 pandas DataFrame,而不创建重复项。

版本 0.1.7 (2015-01-07)

  • 新增文本工具,包含名称泛化功能。
  • 新增文件 I/O 工具。

版本 0.1.6 (2015-01-04)

  • 新增组合和排列估算器。

版本 0.1.5 (2014-12-11)

  • 新增 DenseTransformer,用于管道和网格搜索。

版本 0.1.4 (2014-08-20)

  • mean_centering 函数现在是一个类,它创建 MeanCenterer 对象,这些对象可以通过 fit 方法拟合数据,并通过 transformfit_transform 方法将数据中心化到列均值。

版本 0.1.3 (2014-08-19)

  • 新增 preprocessing 模块和 mean_centering 函数。

版本 0.1.2 (2014-08-19)

  • 新增 matplotlib 工具和 remove_borders 函数。

版本 0.1.1 (2014-08-13)

  • 简化了 ColumnSelector 的代码。