我已经将一个客户列表导入到python中以运行一些RFM分析,这为RFM类的数据添加了一个新字段,所以现在我的数据如下所示:
customer RFMClass
0 0001914f-4655-4148-a1dc-1f25ca6d1f15 343
1 0002e50a-5551-4d9a-8734-76307dfe2131 341
2 00039977-512e-47ad-b929-170f18a1b14a 442
3 000693ff-2c61-425c-97c1-0286c874dd2f 443
4 00095dc2-7f37-48b0-894f-910d90cbbee2 142
5 000b748b-7ea0-48f2-a875-5f6cb95561d9 141
...
我想绘制一个直方图,显示每个RFM类中的客户数量,如何计算每个类别中不同客户ID的数量?
我尝试在1
的每一行添加一个summary['number'] = 1
,认为可能更容易计算这些而不是客户ID,因为这些已在我的代码中被删除,但我无法弄清楚如何对每个RFM类进行求和。
关于我如何做到这一点的任何想法?
答案 0 :(得分:0)
我通过在我的RFM课程中使用.groupby
并对“'数字”进行求和来解决这个问题。我分配到每一行:
byhour = df.groupby(['Hour']).agg({'Orders': 'sum'})
print(byhour)
然后产生所需的输出:
Orders
Hour
0 902
1 438
2 307
3 162
4 149
5 233
6 721