将累积的金额应用于一系列pandas.df

时间:2017-09-01 10:56:34

标签: python python-2.7 pandas

最近,我试图找到一种有效的方法来对系列进行累计求和。

>>> df=pd.DataFrame()
>>> df['a']=[1,3,1,4,2,5,3,8]
>>> df
       a
    0  1
    1  3
    2  1
    3  4
    4  2
    5  5
    6  3
    7  8

预期产出:

df
       a  b
    0  1  1
    1  3  4
    2  1  5
    3  4  9
    4  2  11
    5  5  16
    6  3  19
    7  8  27

每个b[i]等于sum(a[j] for j<=i)

我通过

解决问题
df['b']=df.a
for i in range(df.shape[0]-1):
    df.b.ix[i+1]+=df.b.ix[i] if df.b.ix[i+1] else df.b.ix[i]

它不够简洁,我想取消循环。 我来这里寻求建议。

1 个答案:

答案 0 :(得分:1)