Scikit learn 如何将数据分成三部分,其中一部分不使用?
我有一个csv,我想将80%分为培训,10%分为开发测试,10%分为测试集。dev测试将不再使用 我已将其设置为:Scikit learn 如何将数据分成三部分,其中一部分不使用?,scikit-learn,Scikit Learn,我有一个csv,我想将80%分为培训,10%分为开发测试,10%分为测试集。dev测试将不再使用 我已将其设置为: import sklearn import csv with open('Letter.csv') as f: reader = csv.reader(f) annotated_data = [r for r in reader] 对于拆分: import random random.seed(1234) random.shuffle(annotated_da
import sklearn
import csv
with open('Letter.csv') as f:
reader = csv.reader(f)
annotated_data = [r for r in reader]
对于拆分:
import random
random.seed(1234)
random.shuffle(annotated_data)
但是我所看到的所有分割都只分为两组,我看不出在哪里指定分割多少分区,例如我想要80%的训练。也许我是瞎子,但有人能帮我吗?我不知道如何使用熊猫
同样,一旦我拆分了它,我如何分别访问这些集合?例如,我可以把每一条记录作为一个整体来读取,并计算条目的数量,但一旦我将其拆分,我想计算每套中有多少条记录。对不起,如果这值得它自己的帖子,但我不想垃圾邮件 不,在scikit中,可以学习直接分成三组。 典型的方法是两次拆分。80/20,然后50/50拆分20%。您想检查-函数 本质上,包含数据
X
和y
的代码可以如下所示:
import numpy as np
from sklearn.model_selection import train_test_split
X, y = np.arange(100).reshape((5, 2)), range(5)
X_train, X_tmp, y_train, y_tmp = train_test_split(X, y, test_size=0.2)
X_dev, X_test, y_dev, y_test = train_test_split(X_tmp, y_tmp, test_size=0.5)
现在您需要使用(X\u-train,y\u-train)
,(X\u-dev,y\u-dev)
和(X\u-test,y\u-test)
您可以使用两次: