求和 a = array([[1,2,3], [4,5,6]]) 求所有元素的和: sum(a) 21 指定求和的维度: 沿着第一维求和: sum(a, axis=0) array([5, 7, 9]) 沿着第二维求和: sum(a, axis=1) array([ 6, 15]) 沿着最后一维求和: sum(a, axis=-1) array([ 6, 15]) 或者使用 sum 方法: a.sum() 21 a.sum(axis=0) array([5, 7, 9]) a.sum(axis=-1) array([ 6, 15])
时间: 2025-03-07 22:20:06 浏览: 62
### 使用Numpy数组沿不同轴求和
在Python中,`numpy.sum()`函数用于计算给定轴上的数组元素之和。此功能支持指定沿着哪个轴执行累加操作[^1]。
当处理多维数组时,理解轴的概念非常重要。每一轴代表一个方向;例如,在二维数组中,第0轴指向行的方向,而第1轴则指向列的方向。对于三维及以上的情况,则有更多层次的轴来指示各个维度之间的关系[^3]。
下面展示了一个具体的例子,说明如何利用`axis`参数控制求和的方向:
```python
import numpy as np
# 创建一个形状为 (2, 3) 的随机浮点型二维数组
arr_2d = np.random.rand(2, 3)
print("原始二维数组:")
print(arr_2d)
# 计算每列(即按行)的总和
sum_columns = np.sum(arr_2d, axis=0)
print("\n各列求和结果:", sum_columns)
# 对整个数组内的所有数值求和
total_sum = np.sum(arr_2d)
print(f"\n全量求和结果: {total_sum}")
# 如果有一个更高维度的数组,比如三维 (2, 3, 4), 可以同样方式工作
arr_3d = np.random.rand(2, 3, 4)
# 这里我们尝试对第三个维度求和
sum_along_third_axis = np.sum(arr_3d, axis=2)
print("\n沿第三轴求和的结果:\n", sum_along_third_axis)
```
上述代码片段展示了如何创建一个多维数组并对其应用不同的求和策略。值得注意的是,即使是在更高的维度上也可以轻松实现这一点,只需调整传递给`np.sum()`函数的`axis`参数即可。
#### 注意事项
- 当设置`axis=None`时,默认会对整个数组的所有元素求和。
- `axis`取值应小于等于输入数组的秩减去1,否则会引发错误。
阅读全文
相关推荐



















