#### Previous topic

numpy.ma.arange

#### Next topic

numpy.ma.ediff1d

# numpy.ma.choose

`numpy.ma.``choose`(indices, choices, out=None, mode='raise')

  Use an index array to construct a new array from a set of choices.

  Given an array of integers and a set of n choice arrays, this method will create a new array that merges each of the choice arrays. Where a value in a is i, the new array will have the value that choices[i] contains in the same place.

  Parameters: | a : ndarray of ints This array must contain integers in `[0, n-1]`, where n is the number of choices. choices : sequence of arrays Choice arrays. The index array and all of the choices should be broadcastable to the same shape. out : array, optional If provided, the result will be inserted into this array. It should be of the appropriate shape and dtype. mode : {‘raise’, ‘wrap’, ‘clip’}, optional Specifies how out-of-bounds indices will behave. ‘raise’ : raise an error ‘wrap’ : wrap around ‘clip’ : clip to the range
  Returns: | merged_array : array

  See also

  `choose`
    equivalent function

  Examples

      >>> choice = np.array([[1,1,1], [2,2,2], [3,3,3]])
      >>> a = np.array([2, 1, 0])
      >>> np.ma.choose(a, choice)
      masked_array(data = [3 2 1],
            mask = False,
            fill_value=999999)