如何将先前行值和当前行值相加到新列中? 我当前的输出:
index,value
0,1
1,2
2,3
3,4
4,5
我的目标输出是:
index,value,sum
0,1,1
1,2,3
2,3,6
3,4,10
4,5,15
我知道使用 Excel 很容易做到这一点,但我正在寻找使用 pandas 的解决方案。
我的代码:
import random, pandas
recordlist=[1,2,3,4,5]
df=pandas.DataFrame(recordlist, columns=["Values"])
最佳答案
使用cumsum
df.assign(sum=df.value.cumsum())
value sum
index
0 1 1
1 2 3
2 3 6
3 4 10
4 5 15
或者
df['sum'] = df.value.cumsum()
df
value sum
index
0 1 1
1 2 3
2 3 6
3 4 10
4 5 15
如果df
是一个系列
pd.DataFrame(dict(value=df, sum=df.cumsum())
关于python - 前几行值的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43396855/