我使用的是Ubuntu 14.04中的python 2.7。我用这些命令安装了scikit-learn, numpy和matplotlib:

sudo apt-get install build-essential python-dev python-numpy \
python-numpy-dev python-scipy libatlas-dev g++ python-matplotlib \
ipython

但是当我导入这些包时:

from sklearn.cross_validation import train_test_split

它返回给我这个错误:

ImportError: No module named sklearn.cross_validation

我需要做什么?


当前回答

Train_test_split是sklearn模块的一部分。因此,您可能需要从Model_selection导入模块

代码:

from sklearn.model_selection import train_test_split

其他回答

将数据集分为训练集和测试集

from sklearn.model_selection import train_test_split

sklearn。Cross_validation现在改为sklearn.model_selection

只使用

from sklearn.model_selection import train_test_split

我想那会有用的。

cross_validation不再可用。

尝试使用model_selection代替cross_validation:

from sklearn.model_selection import train_test_split

这可能是由于sklearn.cross_validation的弃用。 请替换sklearn。使用sklearn.model_selection进行交叉验证

Ref - https://github.com/amueller/scipy_2015_sklearn_tutorial/issues/60

我猜交叉选择已经不活跃了。我们应该用模型选择来代替。您可以从sklearn编写它来运行。导入train_test_split

这是它。