gpt4 book ai didi

python - 如何使用时间点计算 Pandas 中的累积 groupby 计数?

转载 作者:太空狗 更新时间:2023-10-30 00:28:55 24 4
gpt4 key购买 nike

我有一个 df,其中包含 JIRA 票证的多个每周快照。我想计算年初至今的票数。

df 看起来像这样:

pointInTime   ticketId
2008-01-01 111
2008-01-01 222
2008-01-01 333
2008-01-07 444
2008-01-07 555
2008-01-07 666
2008-01-14 777
2008-01-14 888
2008-01-14 999

因此,如果我 df.groupby(['pointInTime'])['ticketId'].count() 我可以获得每个快照中的 ID 计数。但是我想要实现的是计算累计和。

并且有一个 df 看起来像这样:

pointInTime   ticketId   cumCount
2008-01-01 111 3
2008-01-01 222 3
2008-01-01 333 3
2008-01-07 444 6
2008-01-07 555 6
2008-01-07 666 6
2008-01-14 777 9
2008-01-14 888 9
2008-01-14 999 9

因此对于 2008-01-07 票数将是 2008-01-07 的计数 + 2008-01-01 的计数>。

最佳答案

使用GroupBy.countcumsum , 然后 map结果返回到“pointInTime”:

df['cumCount'] = (
df['pointInTime'].map(df.groupby('pointInTime')['ticketId'].count().cumsum()))
df

pointInTime ticketId cumCount
0 2008-01-01 111 3
1 2008-01-01 222 3
2 2008-01-01 333 3
3 2008-01-07 444 6
4 2008-01-07 555 6
5 2008-01-07 666 6
6 2008-01-14 777 9
7 2008-01-14 888 9
8 2008-01-14 999 9

关于python - 如何使用时间点计算 Pandas 中的累积 groupby 计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56651686/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com