【发布时间】:2018-08-13 10:32:45
【问题描述】:
我有一个 DataFrame,其中多行共享 group_id 值(非常多的组)。
有没有一种优雅的方法可以将这些数据随机拆分为训练和测试数据,并且训练集和测试集不共享 group_id?
我现在能想到的最好的流程是
- 从 msk = np.random.rand()
创建掩码
- 将其应用于 DataFrame
- 检查测试文件中与训练集共享 group_id 的行并将这些行移动到训练集。
这显然是不优雅的,并且有多个问题(包括测试数据最终为空的可能性)。我觉得必须有更好的方法,是吗?
谢谢
【问题讨论】:
标签: python-3.x pandas numpy random scikit-learn