将一列瞬时值转换为Pandas

时间:2017-09-21 20:11:28

标签: python pandas dataframe

如何将一列瞬时值转换为Python / Pandas中累积值的列?

例: 我有一个带有列的pandas数据框:

0.1
0.2
0.1
0.4
0.1

我想创建一个包含累计值的新列:

0.1
0.3
0.4
0.8
0.9

我已经尝试过像这样循环:

for i in range(1, data_frame.index.size):
    data_frame.new.iloc[i] = data_frame.new.iloc[i-1] + data_frame.old.iloc[i]

它有效,但是花费了不可接受的时间。

1 个答案:

答案 0 :(得分:0)

使用cumsum

In [157]: df
Out[157]: 
     0
0  0.1
1  0.2
2  0.1
3  0.4
4  0.1

In [158]: df[0].cumsum()
Out[158]: 
0    0.1
1    0.3
2    0.4
3    0.8
4    0.9
Name: 0, dtype: float64