📌  相关文章
📜  Pandas中一列的累积和 - Python(1)

📅  最后修改于: 2023-12-03 15:33:25.059000             🧑  作者: Mango

Pandas中一列的累积和 - Python

在Pandas中,可以使用cumsum()函数取得一组数据的累积和。cumsum()函数可以应用于一维数据(如Series对象)或多维数据(如DataFrame对象)。

使用cumsum()函数计算一维数据的累积和

首先,我们创建一个包含一组随机数的Series对象,并使用cumsum()函数计算其累积和。

import pandas as pd
import numpy as np

# 创建一个包含随机数的Series对象
data = pd.Series(np.random.randn(6))
print("原始数据:\n", data)

# 计算累积和
cum_sum = data.cumsum()
print("累积和:\n", cum_sum)

原始数据:

0   -0.046364
1    1.702207
2    0.563561
3   -0.789668
4   -1.439764
5   -0.308224
dtype: float64

累积和:

0   -0.046364
1    1.655843
2    2.219404
3    1.429736
4   -0.010028
5   -0.318252
dtype: float64
使用cumsum()函数计算多维数据的累积和

接下来,我们创建一个包含多个随机数的DataFrame对象,并使用cumsum()函数计算每列的累积和。

# 创建一个包含随机数的DataFrame对象
data = pd.DataFrame(np.random.randn(6,3), columns=list('ABC'))
print("原始数据:\n", data)

# 计算每列的累积和
cum_sum = data.cumsum()
print("累积和:\n", cum_sum)

原始数据:

          A         B         C
0 -0.090538  0.015312  0.128860
1 -2.359388 -0.269699  0.054949
2 -0.023780 -1.109870  0.358132
3  0.068162 -1.066412  2.048140
4  0.481709  0.049698  0.767091
5 -1.609947 -1.673896 -0.290711

累积和:

          A         B         C
0 -0.090538  0.015312  0.128860
1 -2.449926 -0.254387  0.183809
2 -2.473706 -1.364257  0.541941
3 -2.405544 -2.430669  2.590081
4 -1.923835 -2.380970  3.357172
5 -3.533782 -4.054866  3.066461

上述代码中的cumsum()函数计算了DataFrame对象的每列累积和。我们还可以使用axis参数指定行或列的方向进行计算,如下所示:

# 计算每行的累积和
cum_sum = data.cumsum(axis=1)
print("每行的累积和:\n", cum_sum)

结果:

          A         B         C
0 -0.090538 -0.075226  0.053634
1 -2.359388 -2.629087 -2.574138
2 -0.023780 -1.133650 -0.775518
3  0.068162 -0.998250  1.049891
4  0.481709  0.531407  1.298498
5 -1.609947 -3.283843 -3.574554

上述代码中的cumsum(axis=1)函数计算了DataFrame对象的每行累积和。

总结:

Pandas中的cumsum()函数可以用于一维数据或多维数据,用于计算数据的累积和。在DataFrame对象中,可以使用axis参数指定行或列的方向进行计算。