Spec-Zone.ru › NumPy 2.0

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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.ma.make_mask.html

Spec-Zone.ru

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