2017-10-04 175 views
1

我想我的數據集分成訓練和測試數據集,但我得到這個錯誤:模塊「sklearn」有沒有屬性「cross_validation」

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' 

我該如何處理這個?

+0

你是如何導入'sklearn'? 你試過[很多](https://stackoverflow.com/questions/16743889/cant-use-scikit-learn-attributeerror-module-object-has-no-attribute)[解決方案](https:// stackoverflow .com/questions/40496969/attributeerror-module-sklearn-metrics-has-no-attribute-calinski-harabaz-scor)在線找到? – Antimony

回答

12

sklearn不會自動導入其子包。如果你只通過:import sklearn導入,那麼它不會工作。改爲使用import sklearn.cross_validation導入。

Furhter,sklearn.cross_validation將在版本0.20中棄用。改爲使用sklearn.model_selection.train_test_split

+1

打敗我。歡迎來到堆棧溢出!這個答案會更好一些[鏈接源代碼](http://scikit-learn.org/0.19/modules/generated/sklearn.cross_validation.train_test_split.html):) –

相關問題