numpy.putmask#
- numpy.putmask(a, /, маска, values)#
Изменяет элементы массива на основе условия и входных значений.
Задает
a.flat[n] = values[n]для каждого n, гдеmask.flat[n]==True.Если values не того же размера, что и a и маска тогда он будет повторяться. Это дает поведение, отличное от
a[mask] = values.- Параметры:
- andarray
Целевой массив.
- маскаarray_like
Массив булевой маски. Он должен иметь ту же форму, что и a.
- valuesarray_like
Значения для помещения в a где маска равно True. Если values меньше, чем a он будет повторен.
Примеры
>>> import numpy as np >>> 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])