numpy.ma.masked_array.hardmask#
property
- property ma.masked_array.hardmask#
指定是否可以通过赋值来取消屏蔽值.
默认情况下,为掩码数组条目分配确定值将取消掩码.当 hardmask 为
True
时,掩码不会通过赋值更改.示例
>>> import numpy as np >>> x = np.arange(10) >>> m = np.ma.masked_array(x, x>5) >>> assert not m.hardmask
由于 m 有一个软掩码,分配一个元素值会取消该元素的掩码:
>>> m[8] = 42 >>> m masked_array(data=[0, 1, 2, 3, 4, 5, --, --, 42, --], mask=[False, False, False, False, False, False, True, True, False, True], fill_value=999999)
在硬化之后,掩码不受赋值的影响:
>>> hardened = np.ma.harden_mask(m) >>> assert m.hardmask and hardened is m >>> m[:] = 23 >>> m masked_array(data=[23, 23, 23, 23, 23, 23, --, --, 23, --], mask=[False, False, False, False, False, False, True, True, False, True], fill_value=999999)