首页 文章

将数据分组为训练和测试数据,保持比率

提问于
浏览
0

我有虹膜数据集(可以在这里找到:https://www.kaggle.com/uciml/iris),我应该将其分成测试和训练集 . 但是,我需要拆分它,以便训练和测试集中的类分布与完整数据集中的类分布相同 .

我已经在这个问题中看到了最佳答案:how to split a dataset into training and validation set keeping ratio between classes?但由于我是数据科学和python的新手,我很遗憾 .

对于Iris数据集,前50行是一种花,接下来的50行是第二种,后50种是第三种花 . 我怎么写,以便我会得到例如 . 每三分之一的50%测试数据?在上面提到的问题中,我无法真正理解他们在何处以及如何做到这一点 . 如果你能像孩子一样解释这个,我会非常感激 .

x_train是否代表了花的4种不同特征,而y_train是我们拥有的那种花吗?

先感谢您!

编辑:我试过这个

x_train,x_test,y_train,y_test = train_test_split(x,y,test_size = 0.5,random_state = 65)

但这是一个公平的方式吗?我正在选择不同数量的随机状态,直到我在测试和训练集中得到每种花型的25个(它总是大约1/3但是我确实得到了65) . 这感觉有点像作弊......

2 回答

相关问题