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

如何在Pandas DataFrame中计算含当前行的下方行累加和?

Pandas实现当前行及下方行数值求和

要给DataFrame新增列B,计算列A中当前行及所有下方行的数值总和,最简洁高效的方式是利用cumsum()结合行反转操作:

步骤1:构造示例数据

import pandas as pd

df = pd.DataFrame({'A': [2, 4, 3, 1]})

步骤2:计算列B

df['B'] = df['A'][::-1].cumsum()[::-1]

原理说明

  • df['A'][::-1]:将A列的行顺序反转,得到[1, 3, 4, 2]
  • .cumsum():对反转后的列做累计求和,得到[1, 4, 8, 10]
  • [::-1]:再次反转结果,还原为原行顺序,最终得到对应每行的"当前行+下方所有行"的和

验证结果

执行代码后打印DataFrame:

print(df)

输出如下:

A   B
0  2  10
1  4   8
2  3   4
3  1   1

如果数据量较大,这个方法的效率远高于逐行循环计算,是Pandas中处理这类反向累计求和的最优方案之一。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 02:41:07