pandas 运行总和(无循环) [英] Running sum in pandas (without loop)

查看:66
本文介绍了 pandas 运行总和(无循环)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在熊猫数据框上建立一个连续的总和.我有类似的东西:

I'd like to build a running sum over a pandas dataframe. I have something like:

10/10/2012:  50,  0
10/11/2012: -10, 90
10/12/2012: 100, -5

我想得到:

10/10/2012:  50,  0
10/11/2012:  40, 90
10/12/2012: 140, 85

因此,每个单元格应该是其自身与所有先前单元格的和,我应该如何在不使用循环的情况下做到这一点.

So every cell should be the sum of itself and all previous cells, how should I do this without using a loop.

推荐答案

如@JonClements所述,您可以使用

As @JonClements mentions, you can do this using the cumsum DataFrame method:

from pandas import DataFrame
df = DataFrame({0: {'10/10/2012': 50, '10/11/2012': -10, '10/12/2012': 100}, 1: {'10/10/2012': 0, '10/11/2012': 90, '10/12/2012': -5}})

In [3]: df
Out[3]: 
              0   1
10/10/2012   50   0
10/11/2012  -10  90
10/12/2012  100  -5

In [4]: df.cumsum()
Out[4]: 
              0   1
10/10/2012   50   0
10/11/2012   40  90
10/12/2012  140  85

这篇关于 pandas 运行总和(无循环)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆