我有以下数据(来自一些20000行的示例)
Date Time Transaction Item Year Month Day Weekday Hour
0 2016-10-30 2018-10-25 09:58:11 1 Bread 2016 10 30 6 9
1 2016-10-30 2018-10-25 10:05:34 2 Scandinavian 2016 10 30 6 10
2 2016-10-30 2018-10-25 10:05:34 2 Scandinavian 2016 10 30 6 10
3 2016-10-30 2018-10-25 10:07:57 3 Hot chocolate 2016 10 30 6 10
4 2016-10-30 2018-10-25 10:07:57 3 Jam 2016 10 30 6 10
5 2016-10-30 2018-10-25 10:07:57 3 Cookies 2016 10 30 6 10
6 2016-10-30 2018-10-25 10:08:41 4 Muffin 2016 10 30 6 10
7 2016-10-30 2018-10-25 10:13:03 5 Coffee 2016 10 30 6 10
8 2016-10-30 2018-10-25 10:13:03 5 Pastry 2016 10 30 6 10
9 2016-10-30 2018-10-25 10:13:03 5 Bread 2016 10 30 6 10
我正在尝试分析两个最常购买的物品。像面包和果酱或咖啡和面包。我有交易ID,因此可以基于它分析此属性。我想根据交易ID找到所有可能的对的完整出现次数。我该如何实现?
最佳答案
您可以对交易ID进行交叉联接,然后按不同对分组,从而按字母顺序对这些对进行重复数据删除。
cross = df.merge(df, on='Transaction')
cross[cross['Item_x']>cross['Item_y']].groupby(['Item_x','Item_y']).size()
关于python - 同一列中一对行元素的出现次数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52982083/