模块'sklearn'没有属性'cross_validation'

Nar*_*ren 27 python scikit-learn cross-validation

我试图将我的数据集拆分为训练和测试数据集,但我收到此错误:

X_train,X_test,Y_train,Y_test = sklearn.cross_validation.train_test_split(X,df1['ENTRIESn_hourly'])
Run Code Online (Sandbox Code Playgroud)
AttributeError                            Traceback (most recent call last)
<ipython-input-53-5445dab94861> in <module>()
----> 1 X_train,X_test,Y_train,Y_test = sklearn.cross_validation.train_test_split(X,df1['ENTRIESn_hourly'])

AttributeError: module 'sklearn' has no attribute 'cross_validation'
Run Code Online (Sandbox Code Playgroud)

我怎么处理这个?

Bre*_*sen 66

sklearn不会自动导入其子包.如果您只通过:导入import sklearn,那么它将无法正常工作.import sklearn.cross_validation改为导入.

Furhter sklearn.cross_validation将在0.20版本中弃用.请sklearn.model_selection.train_test_split改用.

  • 打我一拳。欢迎使用堆栈溢出!使用某些 [链接源](http://scikit-learn.org/0.19/modules/generated/sklearn.cross_validation.train_test_split.html) 时,这个答案会更好:) (4认同)

gog*_*sca 7

尝试这个:

from sklearn.model_selection import train_test_split
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.33, random_state=101)
Run Code Online (Sandbox Code Playgroud)