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