module 'sklearn' has no attribute 'cross_validation'

十年热恋 提交于 2020-07-17 07:12:35

问题


I am trying to split my dataset into training and testing dataset, but I am getting this error:

X_train,X_test,Y_train,Y_test = sklearn.cross_validation.train_test_split(X,df1['ENTRIESn_hourly'])

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'

How can I handle this?


回答1:


sklearn does not automatically import its subpackages. If you only imported via: import sklearn, then it wont work. Import with import sklearn.cross_validation instead.

Furhter, sklearn.cross_validation will be deprecated in version 0.20. Use sklearn.model_selection.train_test_split instead.




回答2:


Try this:

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)



回答3:


The equivalent to cross_validation in sklearn is:

  sklearn.model_selection



回答4:


you can try this

X_train,X_test,Y_train,Y_test = 
    sklearn.model_selection.train_test_split(X,boston_df.price)



回答5:


"cross_validation" name is now deprecated and was replaced by "model_selection" inside the new anaconda versions. So you can use

from sklearn.model_selection import train_test_split


来源:https://stackoverflow.com/questions/46572475/module-sklearn-has-no-attribute-cross-validation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!