You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python pandas:分组累计求和并统计达标次数(含重置规则)

Pandas分组累加达标次数统计问题

我来整理这个关于Pandas分组统计的问题内容,具体如下:

原始DataFrame数据

Hr Name Count Day
6 1318 10.0 Friday
7 1318 20.0 Friday
8 1318 2.0 Friday
9 1318 18.0 Friday
6 1318 2.0 Monday
7 1318 15.0 Monday
8 1318 2.0 Monday
9 1318 5.0 Monday
6 1319 20.0 Friday
7 1319 30.0 Friday
8 1319 50.0 Friday
9 1319 5.0 Friday
6 1319 3.0 Monday
7 1319 30.0 Monday
8 1319 2.0 Monday
9 1319 5.0 Monday

需求说明

我们需要按Name和Day对数据分组,遍历每组的Count值进行累加,规则如下:

  • 一旦累加值≥20,就记1次达标
  • 达标后立即重置累加器,从下一个Count的实际值重新开始累加
  • 最后统计每个Day下各个Name的达标总次数

期望的输出结果是:

[{'Friday' :[2,3],'Monday':[1,1]}]

计算逻辑示例

拿Friday的数据来具体说明计算过程:

1318Friday[10+20=30 ≥20 记1,2+18=20 ≥20 记1,总计2]
1319Friday[20 ≥20 记1,30 ≥20 记1,50 ≥20 记1,5不满足,总计3]
最终得到{'Friday' : [2,3]}

已尝试的代码

目前已经尝试了以下代码,但还没实现目标:

finalresult = [data]
df = pd.DataFrame(finalresult)
df['csum'] = df.groupby(['Day','Name'])['Count'].cumsum()

内容的提问来源于stack exchange,提问作者MMMMS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:57:02