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