Spec-Zone.ru › NumPy 1.14

numpy.ma.masked_where

numpy.ma.masked_where(condition, a, copy=True) [source]

Маска массива, где выполняется условие.

Возвращает a в виде массива, замаскированного там, где condition истинно. Любые замаскированные значения a или condition также маскируются в выходных данных.

Параметры:

condition : array_like

Условие маскирования. При проверке значений с плавающей точкой на равенство используйте masked_values вместо condition.

a : array_like

Массив для маскирования.

copy : bool

Если True (по умолчанию), создает копию a в результате. Если False, изменяет a на месте и возвращает представление.

Возвращает:

result : MaskedArray

Результат маскирования a там, где condition истинно.

См. также

masked_values
Маскирование с использованием равенства с плавающей точкой.
masked_equal
Маскирование, где равно заданному значению.
masked_not_equal
Маскирование, где not не равно заданному значению.
masked_less_equal
Маскирование, где меньше или равно заданному значению.
masked_greater_equal
Маскирование, где больше или равно заданному значению.
masked_less
Маскирование, где меньше заданного значения.
masked_greater
Маскирование, где больше заданного значения.
masked_inside
Маскирование внутри заданного интервала.
masked_outside
Маскирование вне заданного интервала.
masked_invalid
Маскирование недопустимых значений (NaN или inf).

Примеры

>>> import numpy.ma as ma
>>> a = np.arange(4)
>>> a
array([0, 1, 2, 3])
>>> ma.masked_where(a <= 2, a)
masked_array(data = [-- -- -- 3],
      mask = [ True  True  True False],
      fill_value=999999)

Маскирование массива b при условии a.

>>> b = ['a', 'b', 'c', 'd']
>>> ma.masked_where(a == 2, b)
masked_array(data = [a b -- d],
      mask = [False False  True False],
      fill_value=N/A)

Эффект аргумента copy.

>>> c = ma.masked_where(a <= 2, a)
>>> c
masked_array(data = [-- -- -- 3],
      mask = [ True  True  True False],
      fill_value=999999)
>>> c[0] = 99
>>> c
masked_array(data = [99 -- -- 3],
      mask = [False  True  True False],
      fill_value=999999)
>>> a
array([0, 1, 2, 3])
>>> c = ma.masked_where(a <= 2, a, copy=False)
>>> c[0] = 99
>>> c
masked_array(data = [99 -- -- 3],
      mask = [False  True  True False],
      fill_value=999999)
>>> a
array([99,  1,  2,  3])

Когда condition или a содержат замаскированные значения.

>>> a = np.arange(4)
>>> a = ma.masked_where(a == 2, a)
>>> a
masked_array(data = [0 1 -- 3],
      mask = [False False  True False],
      fill_value=999999)
>>> b = np.arange(4)
>>> b = ma.masked_where(b == 0, b)
>>> b
masked_array(data = [-- 1 2 3],
      mask = [ True False False False],
      fill_value=999999)
>>> ma.masked_where(a == 3, b)
masked_array(data = [-- 1 -- --],
      mask = [ True False  True  True],
      fill_value=999999)

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.ma.masked_where.html

Spec-Zone.ru

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