我有以下数据(约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查找所有可能的对的完整出现次数。我该如何实现?
答案 0 :(得分:1)
您可以对交易ID进行交叉联接,然后按不同对分组,从而按字母顺序对重复对进行重复数据删除。
cross = df.merge(df, on='Transaction')
cross[cross['Item_x']>cross['Item_y']].groupby(['Item_x','Item_y']).size()