ma.
array
具有可能被屏蔽的值的数组类。
如果屏蔽值为true,则从任何计算中排除相应的元素。
施工:
x = MaskedArray(data, mask=nomask, dtype=None, copy=False, subok=True, ndmin=0, fill_value=None, keep_mask=True, hard_mask=None, shrink=True, order=None)
输入数据。
面具。必须可转换为形状与相同的布尔数组 data . true表示屏蔽(即无效)数据。
输出的数据类型。如果 dtype 是none,数据参数的类型 (data.dtype )。如果 dtype 不是一个也不同于 data.dtype ,执行复制。
data.dtype
是复制输入数据(true),还是使用引用。默认值为假。
是否返回的子类 MaskedArray 如果可能(真的)或平原 MaskedArray . 默认值为true。
MaskedArray
最小尺寸数。默认值为0。
必要时用于填充屏蔽值的值。如果没有,则使用基于数据类型的默认值。
是否合并 mask 带输入数据的掩码,如果有(真),或仅使用 mask 对于输出(错误)。默认值为true。
是否使用硬面罩。使用硬掩码时,不能取消对屏蔽值的屏蔽。默认值为假。
是否强制压缩空掩码。默认值为true。
指定数组的顺序。如果顺序为“c”,则数组将按c-连续顺序排列(最后一个索引变化最快)。如果order为“f”,则返回的数组将按fortran连续顺序(第一个索引变化最快)。如果顺序为“A”(默认),则返回的数组可以是任意顺序(C-、Fortran连续,甚至不连续),除非需要副本,在这种情况下,它将是C-连续的。
实例
这个 mask 可以使用与 data .
mask
data
>>> data = np.arange(6).reshape((2, 3)) >>> np.ma.MaskedArray(data, mask=[[False, True, False], ... [False, False, True]]) masked_array( data=[[0, --, 2], [3, 4, --]], mask=[[False, True, False], [False, False, True]], fill_value=999999)
或者, mask 可以初始化为与 data 通过传入标量布尔值:
>>> np.ma.MaskedArray(data, mask=False) masked_array( data=[[0, 1, 2], [3, 4, 5]], mask=[[False, False, False], [False, False, False]], fill_value=999999)
>>> np.ma.MaskedArray(data, mask=True) masked_array( data=[[--, --, --], [--, --, --]], mask=[[ True, True, True], [ True, True, True]], fill_value=999999, dtype=int64)
注解
初始化的推荐实践 mask with a scalar boolean value is to use True/False 而不是 np.True_/np.False_ . 原因是 nomask 内部表示为 np.False_ .
True
False
np.True_
np.False_
nomask
>>> np.False_ is np.ma.nomask True
numpy.ma