numpy.ma.fix_invalid#

ma.fix_invalid(a, mask=np.False_, copy=True, fill_value=None)[原始碼]#

傳回輸入,其中無效資料已遮罩並替換為填充值。

無效資料表示 naninf 等值。

參數:
aarray_like

輸入陣列,ndarray(或其子類別)。

masksequence,選用

遮罩。必須可轉換為與 data 相同形狀的布林陣列。True 表示遮罩(即無效)資料。

copybool,選用

是否使用 a 的副本 (True) 或就地修正 a (False)。預設值為 True。

fill_valuescalar,選用

用於修正無效資料的值。預設值為 None,在這種情況下會使用 a.fill_value

傳回:
bMaskedArray

已修正無效條目的輸入陣列。

說明

預設會執行複製。

範例

>>> import numpy as np
>>> x = np.ma.array([1., -1, np.nan, np.inf], mask=[1] + [0]*3)
>>> x
masked_array(data=[--, -1.0, nan, inf],
             mask=[ True, False, False, False],
       fill_value=1e+20)
>>> np.ma.fix_invalid(x)
masked_array(data=[--, -1.0, --, --],
             mask=[ True, False,  True,  True],
       fill_value=1e+20)
>>> fixed = np.ma.fix_invalid(x)
>>> fixed.data
array([ 1.e+00, -1.e+00,  1.e+20,  1.e+20])
>>> x.data
array([ 1., -1., nan, inf])