如何创建一个df,以增量/顺序的方式显示唯一值的计数?

g0czyy6m  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(280)

这个问题在这里已经有了答案

如何在Dataframe中增加groupby中的行计数(1个答案)
10个月前关门了。
我的Dataframe如下所示:

ID          Date
1001        2020-01-01   
1001        2020-02-01
1002        2020-01-01
1002        2020-02-01
1002        2020-03-01

我想创建一个具有唯一id值的df,以及该id随日期重复的次数。我尝试了以下代码:

df.groupby(['ID','Date'])['ID'].count()

我得到的结果是:

ID        Date
1001      2020-01-01       1
          2020-02-01       1
1002      2020-01-01       1
          2020-02-01       1
          2020-03-01       1

但我要创建的是这个,即列名'count',应该是df格式:

ID        Date             Count
1001      2020-01-01       1
          2020-02-01       2
1002      2020-01-01       1
          2020-02-01       2
          2020-03-01       3

输出非常接近,只需要稍微调整一下。有人能帮我吗?

cyej8jka

cyej8jka1#

试试这个:

df['count'] = df.groupby(by=['ID']).cumcount()+1
print(df)

     ID        Date  count
0  1001  2020-01-01      1
1  1001  2020-02-01      2
2  1002  2020-01-01      1
3  1002  2020-02-01      2
4  1002  2020-03-01      3

相关问题