我正在通过Python Data Science Essentials (2nd Edition)工作。
本书提供以下代码:
chosen_random_state = 1
X_train, X_test, y_train, y_test = cross_validation.train_test_split(X, y, test_size=0.30, ran-dom_state=chosen_random_state)
print ("(X train shape %s, X test shape %s, \ny train shape %s, y test shape %s" \
% (X_train.shape, X_test.shape, y_train.shape, y_test.shape))
h1.fit(X_train,y_train)
print (h1.score(X_test,y_test))
当我尝试运行它时,出现以下错误:---------------------------------------------------------------------------
NameError Traceback (most recent call last) <ipython-input-137-c5136df13468> in <module>()
1 chosen_random_state = 1
----> 2 X_train, X_test, y_train, y_test = cross_validation.train_test_split(X, y, test_size=0.30, random_state=chosen_random_state)
3 print ("(X train shape %s, X test shape %s, \ny train shape %s, y test shape %s" % (X_train.shape, X_test.shape, y_train.shape, y_test.shape))
4 h1.fit(X_train,y_train)
5 print (h1.score(X_test,y_test))
NameError: name 'cross_validation' is not defined
我怀疑我可能必须导入一个书中没有提到的图书馆。我已经搜索了手册,但找不到此功能。这是我需要创建的功能,还是有人可以将我指向相关的库? 最佳答案
cross_validation
的sklearn
子模块是deprecated。您应该使用sklearn.model_selection
instead
from sklearn import model_selection
...
X_train, X_test, y_train, y_test = model_selection.train_test_split(X, y, test_size=0.30, random_state=chosen_random_state)
...
关于python - Scikit学习(Python 3.5): Do I need to import a library to make this work?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43291548/