Python – Pandas Dataframe 所有行求和

Python – Pandas Dataframe 所有行求和

当我们需要对 Pandas Dataframe 中的所有行进行求和时,我们可以使用 Pandas 库的 sum() 方法。下面我们将介绍如何使用此方法对 Pandas Dataframe 的所有行求和。

准备工作

我们首先需要导入 Pandas 库,并创建一个样本 Pandas Dataframe 作为示例代码。代码如下所示:

import pandas as pd

# 创建样本数据
data = {'A': [1, 2, 3, 4, 5],
        'B': [10, 20, 30, 40, 50],
        'C': [100, 200, 300, 400, 500]}
df = pd.DataFrame(data)
print(df)

代码执行结果如下所示:

   A   B    C
0  1  10  100
1  2  20  200
2  3  30  300
3  4  40  400
4  5  50  500

方法一:使用 sum() 方法

我们可以使用 sum() 方法对 Pandas Dataframe 的所有行求和。代码如下所示:

# 对所有行进行求和
row_sum = df.sum(axis=1)
print(row_sum)

代码执行结果如下所示:

0    111
1    222
2    333
3    444
4    555
dtype: int64

在上述代码中,axis=1 表示按行进行求和。我们还可以使用 axis=0 来按列进行求和。

方法二:使用 apply() 方法

除了使用 sum() 方法,我们还可以使用 Pandas Dataframe 的 apply() 方法对所有行进行求和。代码如下所示:

# 使用 apply() 对所有行进行求和
row_sum = df.apply(lambda x: x.sum(), axis=1)
print(row_sum)

代码执行结果和方法一的结果是一致的。

在上述代码中,我们使用了 lambda 函数对每一行进行求和,并将 axis=1 作为函数的参数传入。这里的 x 代表 Pandas Dataframe 的每一行。

方法三:使用 numpy

除了使用 Pandas 库的方法,我们还可以使用 NumPy 库对 Pandas Dataframe 的所有行进行求和。代码如下所示:

# 使用 numpy 对所有行进行求和
import numpy as np

row_sum = np.sum(df, axis=1)
print(row_sum)

代码执行结果和方法一、方法二的结果是一致的。

方法四:使用 sum(axis=1).to_frame() 方法

如果我们希望将所有行的求和结果转换为 Pandas Dataframe 格式,我们可以使用 sum(axis=1).to_frame() 方法。代码如下所示:

# 将求和结果转换为 Pandas Dataframe 格式
row_sum_df = df.sum(axis=1).to_frame()
print(row_sum_df)

代码执行结果如下所示:

     0
0  111
1  222
2  333
3  444
4  555

结论

本文介绍了四种方法对 Pandas Dataframe 的所有行进行求和,包括使用 Pandas 库的 sum() 方法、apply() 方法,使用 NumPy 库,以及将结果转换为 Pandas Dataframe 格式。我们可以根据实际需求选择其中的一种方法来进行操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程