我将 train_test_split 导入为:
from sklearn.model_selection import train_test_split 并给出错误无法导入名称“comb”。
我使用的版本是 scipy 0.18.1 和 sklearn 0.17.1
以下是错误的详细信息,如果您觉得有问题,请在这里指导。
Traceback (most recent call last):
File "<ipython-input-21-e45e815fd516>", line 1, in <module>
from sklearn import model_selection
File "C:\Users\rahulsharma53\AppData\Local\Continuum\Anaconda3\lib\site-packages\sklearn\model_selection\__init__.py", line 1, in <module>
from ._split import BaseCrossValidator
File "C:\Users\rahulsharma53\AppData\Local\Continuum\Anaconda3\lib\site-packages\sklearn\model_selection\_split.py", line 31, in <module>
from ..utils.fixes import signature, comb
ImportError: cannot import name 'comb
上面评论中的建议对我有用。
scikit-learn 版本 0.17.1 没有“模型选择”模块(它有“cross_validation”模块,参考here https://github.com/scikit-learn/scikit-learn/issues/6161)。由于您已经安装了 Anaconda,尝试使用 pip 安装程序将 scikit-learn 升级到最新版本可能会导致与已安装的 scipy 和 numpy 版本不匹配(使用 pip 安装程序升级它们不会解决问题)。解决方案是使用 anaconda 的安装程序升级所有三个库,但在此之前必须卸载所有现有版本,首先使用 pip (如果像我一样,您已经走了 pip 路线),然后使用 conda。
遵循参考文献中的建议link https://github.com/scikit-learn/scikit-learn/issues/5146:
点卸载:
pip uninstall numpy scipy -y
pip uninstall scikit-learn -y
康达卸载:
conda uninstall numpy scipy scikit-learn -y
康达安装:
conda install numpy scipy scikit-learn -y
在重试导入子句之前,不要忘记重新启动 Anaconda。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)