numpy.ma.masked_where
- ma.masked_where(condition, a, copy=True)[source]
-
Маскирование массива, где выполняется условие.
Возвращает
aкак массив, замаскированный там, гдеconditionравно True. Любые замаскированные значения вaилиconditionтакже маскируются в выходных данных.- Параметры
-
- conditionarray_like
-
Условие маскирования. При тестировании значений с плавающей точкой на равенство
condition, используйтеmasked_values. - aarray_like
-
Массив для маскирования.
- copybool
-
Если True (по умолчанию), создаёт копию
aв результате. Если False, модифицируетaна месте и возвращает представление.
- Возвращаемое значение
-
- resultMaskedArray
-
Результат маскирования
aтам, гдеconditionравно True.
См. также
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', dtype='<U1')Эффект аргумента
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–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.ma.masked_where.html