numpy.nanmean#
- numpy.nanmean(a, axis=None, dtype=None, out=None, keepdims=<no value>, *, where=<no value>)[原始碼]#
計算沿指定軸的算術平均值,忽略 NaN。
傳回陣列元素的平均值。預設情況下,平均值取自展平的陣列,否則取自指定的軸。
float64
中間值和傳回值用於整數輸入。對於全為 NaN 的切片,將傳回 NaN 並引發 RuntimeWarning。
- 參數:
- aarray_like
包含要計算平均值的數字的陣列。如果 a 不是陣列,則會嘗試轉換。
- axis{int, tuple of int, None}, optional
計算平均值的軸或軸。預設值是計算展平陣列的平均值。
- dtypedata-type, optional
用於計算平均值的類型。對於整數輸入,預設值為
float64
;對於非精確輸入,它與輸入 dtype 相同。- outndarray, optional
放置結果的替代輸出陣列。預設值為
None
;如果提供,則它必須具有與預期輸出相同的形狀,但如有必要,將強制轉換類型。有關更多詳細資訊,請參閱輸出類型判斷。- keepdimsbool, optional
如果設定為 True,則縮減的軸將保留在結果中,作為大小為一的維度。使用此選項,結果將針對原始 a 正確廣播。
如果值不是預設值,則 keepdims 將傳遞到
mean
或sum
ndarray
子類別的方法。如果子類別方法未實作 keepdims,則會引發任何例外。- wherearray_like of bool, optional
要包含在平均值中的元素。有關詳細資訊,請參閱
reduce
。1.22.0 版本新增。
- 傳回值:
- mndarray, 請參閱上面的 dtype 參數
如果 out=None,則傳回包含平均值的新陣列,否則傳回對輸出陣列的參考。對於僅包含 NaN 的切片,將傳回 Nan。
註解
算術平均值是非 NaN 元素沿軸的總和除以非 NaN 元素的數量。
請注意,對於浮點輸入,平均值是使用與輸入相同的精度計算的。根據輸入資料,這可能會導致結果不準確,尤其是對於
float32
。使用dtype
關鍵字指定更高精度的累加器可以減輕此問題。範例
>>> import numpy as np >>> 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