本文介绍了 pandas 分组累积计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何对两个分组(ID和名称)进行累加计算?例如,我有:

How do I do a cumcount on two groupings, id and name? For example I have:

id  name
1   name1
1   name1
1   name2
2   name3
2   name3
2   name3

我希望它看起来像:

id  name   cumcount
1   name1  1 
1   name1  2
1   name2  1
2   name3  1
2   name3  2
2   name3  3

基本上是ID中每个名称的连续计数.

Basically a running tally for each name in an id.

推荐答案

您可以使用groupby.cumcount:

df['cumcount'] = df.groupby(['id', 'name']).cumcount() + 1

df
#  id   name    cumcount
#0  1   name1   1
#1  1   name1   2
#2  1   name2   1
#3  2   name3   1
#4  2   name3   2
#5  2   name3   3

这篇关于 pandas 分组累积计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-27 21:44