numpy.sum
用于计算数组元素的总和
axis表示维度,0第一维度(列),1 第二维度(行)
import numpy as np
a = np.array([[1, 2],
[3, 4],
[5, 6]])
# 加总和
print("加总和",a.sum())
# 加总和 列
print("按列加",a.sum(axis=0))
# 加总和 行
print("按行加",a.sum(axis=1))
numpy.min 和 numpy.max
分别用于计算数组元素的最小值和最大值
import numpy as np
a = np.array([[1,2],
[5, 3],
[4, 6]])
# 求所有元素中最大的元素
print("最大元素",a.max())
# 按列找出元素中的最大的元素
print("按列 最大元素",a.max(axis=0))
# 按行找出元素中的最大的元素
print("按行 最大元素",a.max(axis=1))
# 求所有元素中最小的的元素
print("最大元素",a.min())
# 按列找出元素中的最小的元素
print("按列 最小元素",a.min(axis=0))
# 按行找出元素中的最小的元素
print("按行 最小元素",a.min(axis=1))
逐值累加
在 NumPy 中,逐元累加通常指的是对数组的元素依次进行累加操作,得到一个新的数组,其中每个元素都是原数组从开始到该位置元素的累积和。可以使用 numpy.cumsum() 函数来实现这一功能。
函数介绍
numpy.cumsum() 函数用于返回给定数组沿指定轴的累积和。其基本语法如下
numpy.cumsum(a, axis=None, dtype=None, out=None)
-
a:输入的数组。axis:可选参数,指定计算累积和的轴。如果axis=None(默认值),则将数组扁平化后计算累积和;如果axis=0,则沿列方向计算累积和;如果axis=1,则沿行方向计算累积和。dtype:可选参数,指定输出数组的数据类型。out:可选参数,用于存储结果的数组。
不指定axis
扁平化后的一维数组为 [1, 2, 5, 3, 4, 6]。累积和的计算过程如下:
- 第一个元素的累积和就是它本身,即
1。 - 第二个元素的累积和是前两个元素的和,即
1 + 2 = 3。 - 第三个元素的累积和是前三个元素的和,即
1 + 2 + 5 = 8。 - 第四个元素的累积和是前四个元素的和,即
1 + 2 + 5 + 3 = 11。 - 第五个元素的累积和是前五个元素的和,即
1 + 2 + 5 + 3 + 4 = 15。 - 第六个元素的累积和是所有元素的和,即
1 + 2 + 5 + 3 + 4 + 6 = 21。
指定axis
import numpy as np
a = np.array([[1,2], [5, 3],[4, 6]])
# 指定axis=0
print(a.cumsum(axis=0))
# 指定axis=1
print(a.cumsum(axis=1))
按行逐值累加的计算过程
对数组 a 进行逐值累加,也就是对每一行的元素依次累加。下面是具体的计算步骤:
第一行 [1, 2]
- 第一个元素的累加和就是它本身,即
1。 - 第二个元素的累加和是当前元素与前面元素的和,也就是
1 + 2 = 3。
所以第一行累加后的结果是[1, 3]。
第二行 [5, 3]
- 第一个元素的累加和为
5。 - 第二个元素的累加和是
5 + 3 = 8。
所以第二行累加后的结果是[5, 8]。
第三行 [4, 6]
- 第一个元素的累加和是
4。 - 第二个元素的累加和是
4 + 6 = 10。
所以第三行累加后的结果是[4, 10]。