首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何进行训练测试拆分,以使Python中的每个类都有足够的训练和测试数据?

如何进行训练测试拆分,以使Python中的每个类都有足够的训练和测试数据?
EN

Stack Overflow用户
提问于 2019-05-25 19:57:26
回答 2查看 300关注 0票数 1

我有一个数据集,它有5个类,分布如下:

从发行版中可以明显看出,类1的样本非常少。

如何对这些数据进行训练-测试拆分,以便Python中的每个类别都有足够的训练和测试数据?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-25 22:43:29

train_test_split中的stratify参数设置为目标列。

stratify将确保每个类被平均拆分。Doc

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, stratify=y)

票数 2
EN

Stack Overflow用户

发布于 2019-05-25 20:39:59

默认情况下,除非将shuffle参数值设置为False,否则train_test_split函数会在拆分之前打乱数据集。我认为,如果shuffle为真,它将确保数据集的训练部分具有所有类别的值。此外,如果您希望train_test_split的结果是确定性的,那么可以使用random_state参数。请参阅documentation了解更多信息。希望能有所帮助。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56304624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档