numpy.ma.masked_array.hardmask#
свойство
- свойство 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)