Scikit learn 如何修复';名称';交叉验证&x27;未定义';python中的错误

Scikit learn 如何修复';名称';交叉验证&x27;未定义';python中的错误,scikit-learn,cross-validation,xgbclassifier,Scikit Learn,Cross Validation,Xgbclassifier,我正在尝试运行XGBClassifier参数调优,并在这行代码之后出现“name‘cross_validation’not defined”错误: kfold\u 5=交叉验证.kfold(n=len(X),shuffle=True,n\u folds=numFolds) 可能我没有导入相应的库?首先,获取您的版本: import sklearn sklearn.__version__ scikit学习版本0.17之后,交叉验证.KFold已迁移到模型选择.KFold 如果您有0.17版本,

我正在尝试运行XGBClassifier参数调优,并在这行代码之后出现“name‘cross_validation’not defined”错误:

kfold\u 5=交叉验证.kfold(n=len(X),shuffle=True,n\u folds=numFolds)

可能我没有导入相应的库?

首先,获取您的版本:

import sklearn
sklearn.__version__
scikit学习版本0.17之后,
交叉验证.KFold
已迁移到
模型选择.KFold

如果您有0.17版本,请使用以下命令:

from sklearn.cross_validation import KFold

kfold_5 = KFold(n= len(X), n_folds = numFolds, shuffle=True)
from sklearn.model_selection import KFold

kfold_5 = KFold(n_splits = numFolds, shuffle=True)
如果您的版本高于0.17,请使用以下命令:

from sklearn.cross_validation import KFold

kfold_5 = KFold(n= len(X), n_folds = numFolds, shuffle=True)
from sklearn.model_selection import KFold

kfold_5 = KFold(n_splits = numFolds, shuffle=True)

如果我的答案正确,请告诉我helps@serafeim很好的回答很好。导入语句取决于OP的sklearn版本。我已经更新了我的答案。事实上现在是-(+1)(以前的答案版本假设OP有一个新版本,但没有提供此类信息)@serafeim对于第一个代码段,我得到了“第二个我得到”的“没有名为'sklearn.cross_validation'的模块”TypeError:u init_uu()得到了一个意外的关键字参数'n'“第二,您是否准确地键入了
kfold\u 5=kfold(n\u splits=numfold,shuffle=True)
?输入参数与第一种情况不同,在本例中。@ErezBen Moshe请密切注意提供的代码段;在第二个代码段中,不应该有任何参数
n