### Navigation

- index
- modules |
- modules |
- next |
- previous |
- NumPy v1.5 Manual (DRAFT) »
- NumPy Reference »
- Routines »
- Indexing routines »

# 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 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 : array_like 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`

  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])

### Navigation

- index
- modules |
- modules |
- next |
- previous |
- NumPy v1.5 Manual (DRAFT) »
- NumPy Reference »
- Routines »
- Indexing routines »