Indexing routines

See also

Indexing

Generating index arrays

method description
c_ Translates slice objects to concatenation along the second axis.
r_ Translates slice objects to concatenation along the first axis.
s_ A nicer way to build up index tuples for arrays.
nonzero(a) Return the indices of the elements that are non-zero.
where(condition, [x, y]) Return elements chosen from x or y depending on condition.
indices(dimensions[, dtype, sparse]) Return an array representing the indices of a grid.
ix_(*args) Construct an open mesh from multiple sequences.
ogrid nd_grid instance which returns an open multi-dimensional “meshgrid”.
ravel_multi_index(multi_index, dims[, mode, …]) Converts a tuple of index arrays into an array of flat indices, applying boundary modes to the multi-index.
unravel_index(indices, shape[, order]) Converts a flat index or array of flat indices into a tuple of coordinate arrays.
diag_indices(n[, ndim]) Return the indices to access the main diagonal of an array.
diag_indices_from(arr) Return the indices to access the main diagonal of an n-dimensional array.
mask_indices(n, mask_func[, k]) Return the indices to access (n, n) arrays, given a masking function.
tril_indices(n[, k, m]) Return the indices for the lower-triangle of an (n, m) array.
tril_indices_from(arr[, k]) Return the indices for the lower-triangle of arr.
triu_indices(n[, k, m]) Return the indices for the upper-triangle of an (n, m) array.
triu_indices_from(arr[, k]) Return the indices for the upper-triangle of arr.

Indexing-like operations

method description
take(a, indices[, axis, out, mode]) Take elements from an array along an axis.
take_along_axis(arr, indices, axis) Take values from the input array by matching 1d index and data slices.
choose(a, choices[, out, mode]) Construct an array from an index array and a set of arrays to choose from.
compress(condition, a[, axis, out]) Return selected slices of an array along given axis.
diag(v[, k]) Extract a diagonal or construct a diagonal array.
diagonal(a[, offset, axis1, axis2]) Return specified diagonals.
select(condlist, choicelist[, default]) Return an array drawn from elements in choicelist, depending on conditions.
lib.stride_tricks.as_strided(x[, shape, …]) Create a view into the array with the given shape and strides.

Inserting data into arrays

method description
place(arr, mask, vals) Change elements of an array based on conditional and input values.
put(a, ind, v[, mode]) Replaces specified elements of an array with given values.
put_along_axis(arr, indices, values, axis) Put values into the destination array by matching 1d index and data slices.
putmask(a, mask, values) Changes elements of an array based on conditional and input values.
fill_diagonal(a, val[, wrap]) Fill the main diagonal of the given array of any dimensionality.

Iterating over arrays

method description
nditer Efficient multi-dimensional iterator object to iterate over arrays.
ndenumerate(arr) Multidimensional index iterator.
ndindex(*shape) An N-dimensional iterator object to index arrays.
nested_iters() Create nditers for use in nested loops
flatiter Flat iterator object to iterate over arrays.
lib.Arrayterator(var[, buf_size]) Buffered iterator for big arrays.