计算一个二维NumPy数组中所有列的总和可以使用NumPy提供的sum函数。
具体的代码如下所示:
import numpy as np
# 创建二维NumPy数组
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 计算所有列的总和
col_sum = np.sum(arr, axis=0)
print(col_sum)
上述代码中,首先通过np.array
函数创建了一个二维数组arr
,其值为:
[[1 2 3]
[4 5 6]
[7 8 9]]
接着,通过np.sum
函数计算了所有列的总和,axis=0
参数表示按列求和,得到的结果是:
[12 15 18]
即第一列的总和为12,第二列的总和为15,第三列的总和为18。
除此之外,如果要计算一个高维数组(比如三维数组)中所有行的总和,也可以使用类似的方式,只需要将axis
参数设置为1即可。示例如下:
import numpy as np
# 创建三维NumPy数组
arr = np.array([[[1, 2, 3], [4, 5, 6], [7, 8, 9]],
[[1, 2, 3], [4, 5, 6], [7, 8, 9]],
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]])
# 计算所有行的总和
row_sum = np.sum(arr, axis=1)
print(row_sum)
上述代码中,首先通过np.array
函数创建了一个三维数组arr
,其值为:
[[[1 2 3]
[4 5 6]
[7 8 9]]
[[1 2 3]
[4 5 6]
[7 8 9]]
[[1 2 3]
[4 5 6]
[7 8 9]]]
接着,通过np.sum
函数计算了所有行的总和,axis=1
参数表示按行求和,得到的结果是:
[[12 15 18]
[12 15 18]
[12 15 18]]
即每个二维子数组的行的总和都是一样的,为12、15和18。