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

Python按多列分组基于基准列计算运行累积和的优化问题

实现方案

核心逻辑:你原计算逻辑中每一行的r_pwr - d_pwr + l_wr - e_pwr刚好和final列取值相等,且diff在同一个diff+id分组内是固定值,因此可以直接对final按分组做累积和后加diff即可,大幅简化代码。

注意点

  • 你原有代码中的ex_pwr属于笔误,实际列名应为e_pwr
  • 你需求中提到需要按两个列分组,因此分组键建议使用['diff', 'id'],避免后续出现同id不同diff的场景下计算错误

简化后代码

df['cumul'] = df['diff'] + df.groupby(['diff', 'id'])['final'].cumsum()

运行后得到的cumul列和你给出的预期输出完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 03:33:02