numpy.putmask#
- numpy.putmask(a,mask,values)#
Changes elements of an array based on conditional and input values.
Sets
a.flat[n]=values[n]for each n wheremask.flat[n]==True.Ifvalues is not the same size asa andmask then it will repeat.This gives behavior different from
a[mask]=values.- Parameters:
- andarray
Target array.
- maskarray_like
Boolean mask array. It has to be the same shape asa.
- valuesarray_like
Values to put intoa wheremask is True. Ifvalues is smallerthana it will be repeated.
Examples
>>>importnumpyasnp>>>x=np.arange(6).reshape(2,3)>>>np.putmask(x,x>2,x**2)>>>xarray([[ 0, 1, 2], [ 9, 16, 25]])
Ifvalues is smaller thana it is repeated:
>>>x=np.arange(5)>>>np.putmask(x,x>1,[-33,-44])>>>xarray([ 0, 1, -33, -44, -33])
On this page