如何使用 NumPy sum 函数?
Numpy 是一个 Python 库,用于处理大型多维数组和矩阵,以及大量用于操作它们的数学函数。Numpy 的 sum() 函数用于计算沿指定轴的数组元素之和。在本文中,我们将借助实际示例了解如何使用 Numpy sum() 函数。
了解 Numpy Sum 函数
numpy.sum() 函数用于计算沿给定指定轴的数组元素之和。数组是传递给 sum() 函数的主要参数,也是控制求和轴的附加参数,返回结果的数据类型也传递给该函数。
语法
numpy.sum(a, axis=None, dtype=None, keepdims=False)
上述语法中使用的参数为:
a: 输入数组。
axis: 确定执行求和运算的轴。默认情况下,如果未指定 axis,则对数组的所有元素计算求和。
dtype: 指定返回数组的数据类型。如果未提供,则使用输入数组的数据类型。
keepdims: 如果设置为 True,则输出数组的维度将与输入数组相同,但计算总和的轴除外。
示例 1:对一维数组求和
在下面的示例中,np.array() 创建一个 NumPy 数组 arr,其值为 [1, 2, 3, 4, 5]。然后将 sum() 函数应用于数组 arr,而不指定任何轴。结果存储在变量 result 中。最后,打印数组中所有元素的总和,输出 15。
import numpy as np arr = np.array([1, 2, 3, 4, 5]) result = np.sum(arr) print(result)
输出
15
示例 2:对 2D 数组求和
在下面的示例中,我们创建一个 2D NumPy 数组 arr,其值为 [[1, 2], [3, 4], [5, 6]]。sum() 函数应用于数组 arr,不指定任何轴,计算数组中所有元素的总和。然后将结果存储在变量 result 中。最后,打印二维数组中所有元素的总和,输出 2
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]]) result = np.sum(arr) print(result)
输出
21
示例 3:跨指定轴求和
在下面的示例中,我们创建一个二维 NumPy 数组 arr,其值为 [[1, 2], [3, 4], [5, 6]]。
sum() 函数应用于数组 arr,指定 axis=0,即垂直轴,计算总和按列计算数组中所有元素的总和。然后将结果存储在变量 result 中。最后打印二维数组中垂直轴上所有元素按列计算的总和,输出 [9 12]。类似地,我们可以通过指定 axis =1 在行中添加元素,从而得到一个数组 [3, 7, 11],它表示二维数组 arr 中每行的总和。
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]]) result_column = np.sum(arr, axis=0) result_row = np.sum(arr, axis=1) print(result)
输出
[9 12] [3 7 11]
示例 4:指定数据类型和保留维度
我们还可以在使用时指定返回数组的数据类型sum() 函数。通过将 keepdims 参数指定为 True,Sum() 函数还可以保留原始数组的维度。
在下面的示例中,我们将输入数组的数据类型指定为 np.float32,将输出数组的所需数据类型指定为 np.int32。此外,我们设置了 keepdims=True,这确保输出数组的维度与输入数组的维度相匹配,但计算总和的轴除外。结果是一个二维数组 [[21]],表示输入数组 arr 中所有元素的总和。
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6]], dtype=np.float32) result = np.sum(arr, dtype=np.int32, keepdims=True) print(result)
输出
[[21]]
结论
在本文中,我们讨论了如何使用 Numpy sum 函数在指定轴上添加数组元素。 sum() 可用于 1D、2D 或更高维数组,并提供指定求和轴、输出数据类型和保持数组维度的功能。