Python numpy.nanmean函数方法的使用

NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。本文主要介绍一下NumPy中nanmean方法的使用。

numpy.nanmean

numpy.nanmean(a, axis=None, dtype=None, out=None, keepdims=)    [source]

沿指定轴计算算术平均值,忽略NaN。

返回数组元素的平均值。 默认情况下,平均值取自展平的数组,否则取自指定的轴。float64中间值和返回值用于整数输入。

对于所有NaN片,将返回NaN并引发RuntimeWarning。

1.8.0版中的新功能。

参数 :

a :array_like

包含期望平均值的数字的数组。

如果a不是数组,则尝试进行转换。

axis :{int, int类型tuple, None}, 可选

计算均值所依据的一个或多个轴。

默认值是计算平坦数组的平均值。

dtype :data-type, 可选

用于计算平均值的类型。对于整数输入,

默认值为float64;对于不精确的输入,

它与输入dtype相同。

out :ndarray, 可选

要在其中放置结果的备用输出数组。

默认值为None。如果提供的话,

它的形状必须与预期的输出形状相同,

但是如果需要的话,

将强制转换类型。有关更多详细信息,

请参见ufuncs-output-type。

keepdims :bool, 可选

如果将其设置为True,

那么被缩减的轴将在结果中保留尺寸为1的维度。

使用此选项,结果将相对于原始a正确传递。

 如果该值不是默认值,

则keepdims将传递给ndarray子类的meansum方法。

如果子类方法未实现keepdims,则将引发任何异常。

返回值 :

m :ndarray, see dtype parameter above

如果out = None,则返回包含平均值的新数组,

否则返回对输出数组的引用。 

对于仅包含NaN的切片,将返回Nan。

Notes

算术平均值是沿轴的非NaN元素之和除以非NaN元素的数量。

请注意,对于浮点输入,将使用与输入相同的精度来计算平均值。根据输入数据,这可能导致结果不准确,尤其是对于float32。使用dtype关键字指定高精度的累加器可以缓解此问题。

例子

>>> a = np.array([[1, np.nan], [3, 4]])
>>> np.nanmean(a)
2.6666666666666665
>>> np.nanmean(a, axis=0)
array([2.,  4.])
>>> np.nanmean(a, axis=1)
array([1.,  3.5]) # may vary
推荐阅读
cjavapy编程之路首页