numpy.ma.masked_values#

ma.masked_values(x, value, rtol=1e-05, atol=1e-08, copy=True, shrink=True)[source]#

使用浮點數相等性進行遮罩。

返回一個 MaskedArray,其中陣列 x 中的資料近似等於 value 的位置會被遮罩,判斷依據是使用 isclosemasked_values 的預設容差與 isclose 的容差相同。

對於整數類型,會使用完全相等性,如同 masked_equal 一樣。

fill_value 會設定為 value,且如果可能,遮罩會設定為 nomask

參數:
xarray_like

要遮罩的陣列。

valuefloat

遮罩值。

rtol, atolfloat, optional

傳遞給 isclose 的容差參數

copybool, optional

是否返回 x 的副本。

shrinkbool, optional

是否將全為 False 的遮罩摺疊為 nomask

返回:
resultMaskedArray

遮罩 x 中近似等於 value 的位置的結果。

另請參閱

masked_where

在條件符合處進行遮罩。

masked_equal

在等於給定值(整數)處進行遮罩。

範例

>>> import numpy as np
>>> import numpy.ma as ma
>>> x = np.array([1, 1.1, 2, 1.1, 3])
>>> ma.masked_values(x, 1.1)
masked_array(data=[1.0, --, 2.0, --, 3.0],
             mask=[False,  True, False,  True, False],
       fill_value=1.1)

請注意,如果可能,mask 會設定為 nomask

>>> ma.masked_values(x, 2.1)
masked_array(data=[1. , 1.1, 2. , 1.1, 3. ],
             mask=False,
       fill_value=2.1)

masked_equal 不同,masked_values 可以執行近似相等性。

>>> ma.masked_values(x, 2.1, atol=1e-1)
masked_array(data=[1.0, 1.1, --, 1.1, 3.0],
             mask=[False, False,  True, False, False],
       fill_value=2.1)