numpy.putmask
- numpy.putmask(a, mask, values)
-
Изменяет элементы массива на основе условных значений и входных данных.
Устанавливает
a.flat[n] = values[n]для каждого n, гдеmask.flat[n]==True.Если
valuesне имеет того же размера, что иaиmask, то значения будут повторяться. Это даёт поведение, отличное отa[mask] = values.- Параметры
-
- andarray
-
Целевой массив.
- maskarray_like
-
Массив булевых масок. Он должен иметь такую же форму, как и
a. - valuesarray_like
-
Значения, которые нужно поместить в
aтам, гдеmaskравно True. Еслиvaluesменьшеa, то оно будет повторяться.
Примеры
>>> x = np.arange(6).reshape(2, 3) >>> np.putmask(x, x>2, x**2) >>> x array([[ 0, 1, 2], [ 9, 16, 25]])Если
valuesменьшеa, оно повторяется:>>> x = np.arange(5) >>> np.putmask(x, x>1, [-33, -44]) >>> x array([ 0, 1, -33, -44, -33])
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.putmask.html