【发布时间】:2016-05-12 12:36:11
【问题描述】:
我有一组文档和一组标签。 现在,我正在使用 train_test_split 以 90:10 的比例拆分我的数据集。但是,我希望使用 Kfold 交叉验证。
train=[]
with open("/Users/rte/Documents/Documents.txt") as f:
for line in f:
train.append(line.strip().split())
labels=[]
with open("/Users/rte/Documents/Labels.txt") as t:
for line in t:
labels.append(line.strip().split())
X_train, X_test, Y_train, Y_test= train_test_split(train, labels, test_size=0.1, random_state=42)
当我尝试 scikit learn 文档中提供的方法时:我收到一条错误消息:
kf=KFold(len(train), n_folds=3)
for train_index, test_index in kf:
X_train, X_test = train[train_index],train[test_index]
y_train, y_test = labels[train_index],labels[test_index]
错误
X_train, X_test = train[train_index],train[test_index]
TypeError: only integer arrays with one element can be converted to an index
如何对我的文档和标签执行 10 折交叉验证?
【问题讨论】:
-
到目前为止,为了让 Kfold 交叉验证发挥作用,您做了哪些尝试?你看过documentation page上的例子吗?
-
是的,我已经在我的文档和标签集上尝试了那里给出的示例,但我收到一个错误:X_train, X_test = train[train_index],train[test_index] TypeError: only integer arrays一个元素可以转换为索引
标签: python scikit-learn