xorbits.numpy.putmask#

xorbits.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 where mask.flat[n]==True.

If values is not the same size as a and mask then it will repeat. This gives behavior different from a[mask] = values.

Parameters
  • a (ndarray) – Target array.

  • mask (array_like) – Boolean mask array. It has to be the same shape as a.

  • values (array_like) – Values to put into a where mask is True. If values is smaller than a it will be repeated.

See also

place, put, take, copyto

Examples

>>> x = np.arange(6).reshape(2, 3)  
>>> np.putmask(x, x>2, x**2)  
>>> x  
array([[ 0,  1,  2],
       [ 9, 16, 25]])

If values is smaller than a it is repeated:

>>> x = np.arange(5)  
>>> np.putmask(x, x>1, [-33, -44])  
>>> x  
array([  0,   1, -33, -44, -33])

Warning

This method has not been implemented yet. Xorbits will try to execute it with numpy.

This docstring was copied from numpy.