Python 中的 numpy.sum()

17 Mar 2025 | 4 分钟阅读

numpy.sum() 函数在 Python 的 NumPy 包中可用。此函数用于计算给定数组的所有元素的总和、每行的总和以及每列的总和。

本质上,此总和计算数组的元素,获取 ndarray 中的元素,并将它们加在一起。也可以添加数组的行和列元素。输出将采用数组对象的形式。

numpy.sum()

语法

numpy.sum() 函数的语法如下:

参数

1) arr: array_like

这是一个 ndarray。这是我们要对其元素求和的源数组。此参数是必不可少的,并在 numpy.sum() 函数中起着至关重要的作用。

2) axis: int 或 None 或 int 元组(可选)

此参数定义执行求和的轴。默认轴为 None,这将对数组的所有元素求和。当轴为负数时,它从最后一个轴计数到第一个轴。在 1.7.0 版本中,当轴是 int 元组时,将对元组中指定的所有轴执行求和,而不是像以前那样对单个轴或所有轴执行求和。

3) dtype: dtype(可选)

此参数定义累加器和返回数组的类型,在该数组中对元素求和。默认情况下,使用 arr 的 dtype,除非 arr 具有精度低于默认平台整数的整数 dtype。在这种情况下,当 arr 有符号时,使用平台整数,当 arr 无符号时,使用与平台整数相同精度的无符号整数。

4) out: ndarray(可选)

此参数定义将放置结果的替代输出数组。此结果数组必须具有与预期输出相同的形状。输出值的类型将在必要时进行强制转换。

5) keepdims: bool(可选)

此参数定义一个布尔值。当此参数设置为 True 时,缩减的轴将保留在结果中,作为大小为 1 的维度。借助此选项,结果将针对输入数组正确广播。当传递默认值时,keepdims 不会传递给 ndarray 子类的 sum 方法,但在非默认值的情况下则不会。如果子类方法未实现 keepdims,则会引发任何异常。

6) initial: 标量

此参数定义总和的起始值。

返回值

此函数返回与 arr 形状相同且已删除指定轴的数组。当 arr 是 0-d 数组,或者当轴为 None 时,将返回一个标量。当指定数组输出时,将返回对 out 的引用。

示例 1:numpy.array()

输出

0.9

在上面的代码中

  • 我们已经导入了带有别名“np”的 numpy。
  • 我们使用 np.array() 函数创建了一个数组“a”。
  • 我们声明了变量“b”,并分配了 np.sum() 函数的返回值。
  • 我们在函数中传递了数组“a”。
  • 最后,我们尝试打印 b 的值。

在输出中,显示了数组的所有元素的总和。

示例 2

输出

6

在上面的代码中

  • 我们已经导入了带有别名“np”的 numpy。
  • 我们使用 np.array() 函数创建了一个数组“a”。
  • 我们声明了变量“x”,并分配了 np.sum() 函数的返回值。
  • 我们在函数中传递了数组“a”和 int32 的数据类型。
  • 最后,我们尝试打印 x 的值。

在输出中,仅显示了整数的总和,而不是浮点值。

示例 3

在上面的代码中

输出

13

示例 4

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们使用 np.array() 函数创建了一个数组“a”。
  • 我们声明了变量“b”,并分配了 np.sum() 函数的返回值。
  • 我们在函数中传递了数组“a”和 axis=0。
  • 最后,我们尝试打印 b 的值。

在输出中,已相应地计算了列元素的总和。

输出

array([4, 9])

示例 5

输出

array([5, 8])

示例 6

输出

23

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们声明了变量“b”,并分配了 np.sum() 函数的返回值。
  • 我们在函数中传递了元素数量和初始值。
  • 最后,我们尝试打印 b 的值。

在输出中,初始值已添加到元素序列中的最后一个元素,然后执行了所有元素的总和。


下一个主题Numpy.random()