numpy.ma.notmasked_contiguous#

ma.notmasked_contiguous(a, axis=None)[原始碼]#

沿著給定軸尋找遮罩陣列中連續的未遮罩資料。

參數:
aarray_like

輸入陣列。

axisint,選用

執行操作的軸。如果為 None (預設值),則套用至陣列的扁平版本,這與 flatnotmasked_contiguous 相同。

傳回:
endpointslist

陣列中未遮罩索引的切片 (開始和結束索引) 列表。

如果輸入為 2d 且有指定軸,則結果為列表的列表。

備註

最多僅接受 2 維陣列。

範例

>>> import numpy as np
>>> a = np.arange(12).reshape((3, 4))
>>> mask = np.zeros_like(a)
>>> mask[1:, :-1] = 1; mask[0, 1] = 1; mask[-1, 0] = 0
>>> ma = np.ma.array(a, mask=mask)
>>> ma
masked_array(
  data=[[0, --, 2, 3],
        [--, --, --, 7],
        [8, --, --, 11]],
  mask=[[False,  True, False, False],
        [ True,  True,  True, False],
        [False,  True,  True, False]],
  fill_value=999999)
>>> np.array(ma[~ma.mask])
array([ 0,  2,  3,  7, 8, 11])
>>> np.ma.notmasked_contiguous(ma)
[slice(0, 1, None), slice(2, 4, None), slice(7, 9, None), slice(11, 12, None)]
>>> np.ma.notmasked_contiguous(ma, axis=0)
[[slice(0, 1, None), slice(2, 3, None)], [], [slice(0, 1, None)], [slice(0, 3, None)]]
>>> np.ma.notmasked_contiguous(ma, axis=1)
[[slice(0, 1, None), slice(2, 4, None)], [slice(3, 4, None)], [slice(0, 1, None), slice(3, 4, None)]]