numpy.ma.MaskedArray.compress#
方法
- ma.MaskedArray.compress(condition, axis=None, out=None)[原始碼]#
在 condition 為
True
的地方回傳 a。如果 condition 是
MaskedArray
,則遺失值會被視為False
。- 參數:
- conditionvar
布林值一維陣列,選取要回傳的項目。如果 len(condition) 小於沿軸 a 的大小,則輸出會被截斷為 condition 陣列的長度。
- axis{None, int},選用
必須執行運算的軸。
- out{None, ndarray},選用
用於放置結果的替代輸出陣列。它必須具有與預期輸出相同的形狀,但必要時會轉換型別。
- 回傳:
- resultMaskedArray
MaskedArray
物件。
註解
請注意與
compressed
的差異!compress
的輸出有遮罩,而compressed
的輸出則沒有。範例
>>> import numpy as np >>> x = np.ma.array([[1,2,3],[4,5,6],[7,8,9]], mask=[0] + [1,0]*4) >>> x masked_array( data=[[1, --, 3], [--, 5, --], [7, --, 9]], mask=[[False, True, False], [ True, False, True], [False, True, False]], fill_value=999999) >>> x.compress([1, 0, 1]) masked_array(data=[1, 3], mask=[False, False], fill_value=999999)
>>> x.compress([1, 0, 1], axis=1) masked_array( data=[[1, 3], [--, --], [7, 9]], mask=[[False, False], [ True, True], [False, False]], fill_value=999999)