如何使用Python Numpy中的train_test_split将数据拆分为训练,测试和验证数据集?分割不应随机

时间:2019-11-21 08:13:39

标签: python numpy train-test-split

我想将数据类别明智地分为训练,测试和验证集。例如:如果我们在数据集中有3个正,负和中性类别。正面类别分为训练,测试和验证。与其他两个类别相同。拆分率为80%的数据用于培训,而20%的数据用于测试。从80%的训练数据中,将10%用于验证数据。但是最重​​要的是分割后的数据不应随机。

1 个答案:

答案 0 :(得分:0)

您可以使用stratify参数执行此操作:

例如: 如果要使用Iris数据集执行此操作。

from sklearn import cross_validation, datasets 

X = iris.data[:,:2]
y = iris.target

cross_validation.train_test_split(X,y,stratify=y)

您可以在此处了解更多信息: https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html