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)