查找熊猫中每个唯一 ID 的先前计数出现的总和
Posted
技术标签:
【中文标题】查找熊猫中每个唯一 ID 的先前计数出现的总和【英文标题】:Find the sum of previous count occurrences per unique ID in pandas 【发布时间】:2019-05-04 14:12:01 【问题描述】:我有客户 ID 和购买 ID 的历史记录,其中没有客户购买过相同的产品。但是,对于每个购买 ID(这是唯一的),我如何才能找出客户之前购买的次数
我尝试过使用 groupby() 和 sort_values()
df = pd.DataFrame('id_cust': [1,2,1,3,2,4,1],
'id_purchase': ['20A','143C','99B','78R','309D','90J','78J'])
df.sort_values(by='id_cust')
df.groupby('id_cust')['id_purchase'].cumcount()
这是我所期望的:
id_cust id_purchase value
1 20A 1
2 143C 1
1 99B 2
3 78R 1
2 3097D 2
4 900J 1
1 78J 3
【问题讨论】:
【参考方案1】:您可以只在id_cust
列上使用cumcount()
,因为id_purchase
是唯一的:
df['value']=df.groupby('id_cust')['id_cust'].cumcount()+1
print(df)
id_cust id_purchase value
0 1 20A 1
1 2 143C 1
2 1 99B 2
3 3 78R 1
4 2 309D 2
5 4 90J 1
6 1 78J 3
【讨论】:
以上是关于查找熊猫中每个唯一 ID 的先前计数出现的总和的主要内容,如果未能解决你的问题,请参考以下文章