如何将数据框的列分组以在熊猫中列出?
问题描述:
member_srl click_day productid
0 6963 20170106 3927352
1 6963 20170106 3790726
2 6963 20170106 977962
3 6963 20170106 1393860
4 6963 20170106 3759353
这是我的df,我想将member_srl和click_day分组,以获得productid的列表。例如,member_srl 6963和click_day 20170106将对应产品列表:[3927352,3790726,977962,1393860,3759353]如何将数据框的列分组以在熊猫中列出?
谢谢。
答
df = df.groupby(['member_srl','click_day'])['productid'].apply(list)
print (df)
member_srl click_day
6963 20170106 [3927352, 3790726, 977962, 1393860, 3759353]
Name: productid, dtype: object
df = df.groupby(['member_srl','click_day'])['productid'].apply(list).reset_index()
print (df)
member_srl click_day productid
0 6963 20170106 [3927352, 3790726, 977962, 1393860, 3759353]
嗯,看来我应该扩大我的记忆(16G),而原来的CSV是16G。当我使用你的代码时它崩溃了。谢谢。 – yanachen
在我看来,如果使用16GB csv,16GB内存是有问题的。 :(可以添加内存或使用其他机器? – jezrael
谢谢。我将数据移动到另一台机器。非常感谢。 – yanachen