NumPy numpy.mean()的使用
将元素总和与沿指定轴的元素数量相除的结果被称为 算术平均值 。numpy.mean()函数用于计算沿指定轴的算术平均值。
此函数返回数组元素的平均值。默认情况下,平均值是在平铺的数组上计算的。否则,在指定的轴上计算,浮点64用于整数输入的中间值以及返回值。
语法
numpy.mean(a, axis=None, dtype=None, out=None, keepdims=<no value>)
参数
这是numpy.mean()函数中的以下参数:
a: array_like
该参数定义了包含所需平均值的元素的源数组。在’a’不是数组的情况下,会尝试进行转换。
axis: None、int或int元组(可选)
该参数定义了计算平均值的轴。默认情况下,计算扁平化数组的平均值。在1.7.0版本中,如果它是int元组,则进行多轴平均值计算,而不是之前的单轴或所有轴计算。
dtype: 数据类型(可选)
该参数用于定义计算平均值时使用的数据类型。对于整数输入,默认值为float64,对于浮点数输入,它与输入的dtype相同。
out: ndarray(可选)
该参数定义了一个替代输出数组,在其中存放结果。所得数组的形状应与期望输出的形状相同。必要时将转换输出值的类型。
keepdims: 布尔值(可选)
当值为true时,缩减的轴在输出/结果中保留为尺寸为1的维度。同时,结果可以正确地广播到输入数组。当设置为默认值时,keepdims 不通过 ndarray 的子类的 mean 方法,但任何非默认值肯定会通过。如果子类方法未实现keepdims,那么肯定会引发异常。
返回值
如果将 ‘out’ 参数设置为 None ,该函数将返回一个包含平均值的新数组。否则,将返回对输出数组的引用。
示例1
import numpy as np
a = np.array([[1, 2], [3, 4]])
b=np.mean(a)
b
x = np.array([[5, 6], [7, 34]])
y=np.mean(x)
y
输出:
2.5
13.0
在上面的代码中
- 我们使用别名np导入了numpy库。
- 我们使用np.array()函数创建了两个数组’a’和’x’。
- 我们声明了变量’b’和’y’,并赋予了np.zeros()函数的返回值。
- 我们将数组’a’和’x’传递给函数。
- 最后,我们尝试打印变量’b’和’y’的值。
示例2
import numpy as np
a = np.array([[2, 4], [3, 5]])
b=np.mean(a,axis=0)
c=np.mean(a,axis=1)
b
c
输出:
array([2.5, 4.5])
array([3., 4.])
示例3
在单精度下,均值可能不准确:
import numpy as np
a = np.zeros((2, 512*512), dtype=np.float32)
a[0, :] = 23.0
a[1, :] = 32.0
c=np.mean(a)
c
输出:
27.5
在上述代码中
- 我们使用别名np导入了numpy。
- 我们使用np.zeros()函数创建了一个名为’a’的数组,并使用dtype float32。
- 我们将第一行的所有元素的值设置为23.0,将第二行的元素设置为32.0。
- 我们将数组’a’传递给函数,并将np.mean()函数的返回值分配给它。
- 最后,我们尝试打印’c’的值。
在输出中,它显示了数组’a’的平均值。
示例4
在float64中计算均值更精确:
import numpy as np
a[0, :] = 2.0
a[1, :] = 0.2
c=np.mean(a)
c
d=np.mean(a, dtype=np.float64)
d
输出:
1.0999985
1.1000000014901161