當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python dask.array.ma.masked_where用法及代碼示例


用法:

dask.array.ma.masked_where(condition, a)

屏蔽滿足條件的數組。

此文檔字符串是從 numpy.ma.masked_where 複製而來的。

可能存在與 Dask 版本的一些不一致之處。

返回 a 作為掩碼數組,其中 condition 為 True。 acondition 的任何屏蔽值也在輸出中被屏蔽。

參數

conditionarray_like

掩蔽條件。當condition 測試浮點值是否相等時,請考慮改用masked_values

aarray_like

要屏蔽的數組。

copybool(在 Dask 中不支持)

如果為 True(默認),則在結果中複製 a。如果 False 就地修改 a 並返回一個視圖。

返回

result蒙麵陣列

屏蔽 a 的結果,其中 condition 為 True。

例子

>>> import numpy.ma as ma  
>>> a = np.arange(4)  
>>> a  
array([0, 1, 2, 3])
>>> ma.masked_where(a <= 2, a)  
masked_array(data=[--, --, --, 3],
             mask=[ True,  True,  True, False],
       fill_value=999999)

掩碼數組 ba 為條件。

>>> b = ['a', 'b', 'c', 'd']  
>>> ma.masked_where(a == 2, b)  
masked_array(data=['a', 'b', --, 'd'],
             mask=[False, False,  True, False],
       fill_value='N/A',
            dtype='<U1')

copy 參數的效果。

>>> c = ma.masked_where(a <= 2, a)  
>>> c  
masked_array(data=[--, --, --, 3],
             mask=[ True,  True,  True, False],
       fill_value=999999)
>>> c[0] = 99  
>>> c  
masked_array(data=[99, --, --, 3],
             mask=[False,  True,  True, False],
       fill_value=999999)
>>> a  
array([0, 1, 2, 3])
>>> c = ma.masked_where(a <= 2, a, copy=False)  
>>> c[0] = 99  
>>> c  
masked_array(data=[99, --, --, 3],
             mask=[False,  True,  True, False],
       fill_value=999999)
>>> a  
array([99,  1,  2,  3])

conditiona 包含掩碼值時。

>>> a = np.arange(4)  
>>> a = ma.masked_where(a == 2, a)  
>>> a  
masked_array(data=[0, 1, --, 3],
             mask=[False, False,  True, False],
       fill_value=999999)
>>> b = np.arange(4)  
>>> b = ma.masked_where(b == 0, b)  
>>> b  
masked_array(data=[--, 1, 2, 3],
             mask=[ True, False, False, False],
       fill_value=999999)
>>> ma.masked_where(a == 3, b)  
masked_array(data=[--, 1, --, --],
             mask=[ True, False,  True,  True],
       fill_value=999999)

相關用法


注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 dask.array.ma.masked_where。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。