我有2列的表格。第一个是order_id,第二个是item_name。我想要基于order_id的商品组合的前10个选择
数据看起来像
order_id Item_Name
1 A
1 B
1 C
1 D
2 A
2 B
2 D
2 E
2 B
2 C
3 D
3 E
3 F
3 G
3 A
3 B
4 F
4 D
4 A
4 B
4 C
我希望按管道将排名靠前的组合排名并分隔
组合可以用于任意数量的Item_Name数字
答案 0 :(得分:0)
IIUC
n=10
df.groupby('order_id').i.value_counts().groupby('order_id').head(n).astype(str).reset_index(name='v').groupby('order_id').i.agg('|'.join)