提问人:user1124702 提问时间:1/26/2017 最后编辑:wjandreauser1124702 更新时间:3/2/2023 访问量:61076
Cumsum 作为现有 Pandas 数据帧中的新列
Cumsum as a new column in an existing Pandas dataframe
问:
我有一个 pandas 数据帧定义为:
A B SUM_C
1 1 10
1 2 20
我想做一个累积的SUM_C,并将其作为新列添加到同一个数据帧中。换句话说,我的最终目标是拥有如下所示的数据帧:
A B SUM_C CUMSUM_C
1 1 10 10
1 2 20 30
在 group() 上的 pandas 中使用 cumsum 显示了生成新数据帧的可能性,其中列名 SUM_C 替换为累积总和。但是,我的要求是将累积总和作为新列添加到现有数据帧中。
答:
87赞
blacksite
1/26/2017
#1
只需应用并将其分配给新列:cumsum
pandas.Series
df['SUM_C']
df['CUMSUM_C'] = df['SUM_C'].cumsum()
结果:
df
Out[34]:
A B SUM_C CUMSUM_C
0 1 1 10 10
1 1 2 20 30
评论
1赞
Josh Herzberg
1/29/2020
如果有两列同名,此操作将失败。在这种情况下,请在继续操作之前重命名其中之一。
评论