2024-09-29 09:33:29 发布
网友
我有这样一个数据框:
TransactionID ProductID 1 132 1 256 1 985 2 321 3 451 3 219
我想按“TransactionID”分组,并将“ProductID”分配给列表,如下所示:
list = [[132, 256, 985], [321], [451, 291]]
完成这项任务的正确方法是什么
提前谢谢
以下不是很好,但可以工作
result = [list(i.ProductID) for i in dict(list(df.groupby("TransactionID"))).values()]
像这样的事情可能会有帮助 您只需将它们按TransactionID分组,然后从中取出ProductID并转换为列表
TransactionID
ProductID
grouped_list = list(df.groupby('TransactionID')['ProductID'].apply(list))
正如评论中提到的,使用'list'作为变量名是不好的。这是因为您将通过将list命令设置为从df中提取的分组列表来重新定义list命令的原始函数
以下不是很好,但可以工作
像这样的事情可能会有帮助
您只需将它们按
TransactionID
分组,然后从中取出ProductID
并转换为列表正如评论中提到的,使用'list'作为变量名是不好的。这是因为您将通过将list命令设置为从df中提取的分组列表来重新定义list命令的原始函数
相关问题 更多 >
编程相关推荐