Spec-Zone.ru › NumPy 1.20

numpy.ma.make_mask

ma.make_mask(m, copy=False, shrink=True, dtype=<class 'numpy.bool_'>) [source]

Создать булеву маску из массива.

Возвращает m в виде булевой маски, создавая копию при необходимости или по запросу. Функция может принимать любые последовательности, преобразуемые в целые числа, или nomask. Не требует, чтобы содержимое состояло из 0 и 1; значения 0 интерпретируются как False, а всё остальное — как True.

Параметры
marray_like

Возможная маска.

copybool, optional

Необходимо ли вернуть копию m (True) или m саму (False).

shrinkbool, optional

Необходимо ли сжать m до nomask, если все её значения False.

dtypedtype, optional

Тип данных выходной маски. По умолчанию выходная маска имеет тип данных MaskType (bool). Если тип данных гибкий, каждый поле имеет булев тип. Это игнорируется, когда m является nomask, в этом случае nomask всегда возвращается.

Возвращает
resultndarray

Булева маска, полученная из m.

Примеры

>>> import numpy.ma as ma
>>> m = [True, False, True, True]
>>> ma.make_mask(m)
array([ True, False,  True,  True])
>>> m = [1, 0, 1, 1]
>>> ma.make_mask(m)
array([ True, False,  True,  True])
>>> m = [1, 0, 2, -3]
>>> ma.make_mask(m)
array([ True, False,  True,  True])

Эффект параметра shrink.

>>> m = np.zeros(4)
>>> m
array([0., 0., 0., 0.])
>>> ma.make_mask(m)
False
>>> ma.make_mask(m, shrink=False)
array([False, False, False, False])

Использование гибкого dtype.

>>> m = [1, 0, 1, 1]
>>> n = [0, 1, 0, 0]
>>> arr = []
>>> for man, mouse in zip(m, n):
...     arr.append((man, mouse))
>>> arr
[(1, 0), (0, 1), (1, 0), (1, 0)]
>>> dtype = np.dtype({'names':['man', 'mouse'],
...                   'formats':[np.int64, np.int64]})
>>> arr = np.array(arr, dtype=dtype)
>>> arr
array([(1, 0), (0, 1), (1, 0), (1, 0)],
      dtype=[('man', '<i8'), ('mouse', '<i8')])
>>> ma.make_mask(arr, dtype=dtype)
array([(True, False), (False, True), (True, False), (True, False)],
      dtype=[('man', '|b1'), ('mouse', '|b1')])

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.ma.make_mask.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API