numpy.ma.MaskedArray.compress#

method

ma.MaskedArray.compress(condition, axis=None, out=None)[源代码]#

返回 condition 为 Truea .

如果 condition 是一个 MaskedArray ,则缺失值被认为是 False .

参数:
conditionvar

选择要返回的条目的布尔 1-D 数组.如果 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)