我试图使用scikit学习软件包中的svm函数来获取python,但是我收到了错误消息:
from sklearn.utils.validation import check_arrays
ImportError:无法导入名称' check_arrays'
我正在使用python 3.4。任何人都可以给我一个建议吗?提前谢谢。
答案 0 :(得分:20)
此方法在0.16中被删除,取而代之的是(非常不同的)check_array
函数。
您可能会收到此错误,因为您没有正确地从0.15升级到0.16。 [或者因为你在sklearn中依赖于一个非真正公共的功能]。见http://scikit-learn.org/dev/install.html#canopy-and-anaconda-for-all-supported-platforms。
如果使用anaconda / conda安装,则应使用conda机制进行升级,而不是pip。否则旧的.pyc文件可能会保留在您的文件夹中。
答案 1 :(得分:8)
似乎“check_arrays”不再存在(不再)。 我修好了:
sudo vi /usr/lib64/python2.7/site-packages/sklearn/metrics/cluster/bicluster/bicluster_metrics.py
改变这个: 来自sklearn.utils.validation import check_arrays 至: 从sklearn.utils.validation导入check_array作为check_arrays
有点像黑客,但它对我有用。
答案 2 :(得分:4)
对我来说......
这有效:
from sklearn.utils import check_array
还有:
from sklearn.utils.validation import check_array
我使用的是版本0.16.0
>>> sklearn .__版本__
'0.16.0'
这样做:
import sklearn
print sklearn.__version__
告诉我们结果。
答案 3 :(得分:0)
您应该将check_arrays更改为check_array。
来源:https://github.com/scikit-learn/scikit-learn/issues/4624