Python 如何按组分割数据?

Python 如何按组分割数据?,python,scikit-learn,Python,Scikit Learn,我有以下数据 user_id, item_id 1, 2 1, 3 2, 5, 2, 4 1, 4 我要使用约束拆分数据: 每个用户必须在列车组或测试组中,但不能同时在两者中 所以[[1,2],[1,3],[1,4]/[2,5],[2,4]]是有效的分割 但是[[1,2],[2,5][1,4]/[1,3]…]不是有效的拆分,因为用户已被拆分 我不确定sklearn.model\u selection import train\u test\u split中的是否支持它。如果您希望在train和

我有以下数据

user_id, item_id
1, 2
1, 3
2, 5,
2, 4
1, 4
我要使用约束拆分数据:

每个用户必须在列车组或测试组中,但不能同时在两者中

所以
[[1,2],[1,3],[1,4]/[2,5],[2,4]]
是有效的分割
但是
[[1,2],[2,5][1,4]/[1,3]…]
不是有效的拆分,因为用户已被拆分


我不确定sklearn.model\u selection import train\u test\u split中的
是否支持它。

如果您希望在train和test中有固定比例的用户,则需要获得唯一用户和split用户。下面是伪代码

train_ids, test_ids = train_test_split(unique_users)
train_X = data[data.user_id==train_ids]
test_X = data[data.user_id==test_ids]

谢谢,我认为正确的语法是
data[data.user.isin(train\u id)]