xorbits.numpy.ravel_multi_index#

xorbits.numpy.ravel_multi_index(multi_index, dims, mode='raise', order='C')#

Converts a tuple of index arrays into an array of flat indices, applying boundary modes to the multi-index.

Parameters
  • multi_index (tuple of array_like) – A tuple of integer arrays, one array for each dimension.

  • dims (tuple of ints) – The shape of array into which the indices from multi_index apply.

  • mode ({'raise', 'wrap', 'clip'}, optional) –

    Specifies how out-of-bounds indices are handled. Can specify either one mode or a tuple of modes, one mode per index.

    • ’raise’ – raise an error (default)

    • ’wrap’ – wrap around

    • ’clip’ – clip to the range

    In ‘clip’ mode, a negative index which would normally wrap will clip to 0 instead.

  • order ({'C', 'F'}, optional) – Determines whether the multi-index should be viewed as indexing in row-major (C-style) or column-major (Fortran-style) order.

Returns

raveled_indices – An array of indices into the flattened version of an array of dimensions dims.

Return type

ndarray

See also

unravel_index

Notes

New in version 1.6.0(numpy).

Examples

>>> arr = np.array([[3,6,6],[4,5,1]])  
>>> np.ravel_multi_index(arr, (7,6))  
array([22, 41, 37])
>>> np.ravel_multi_index(arr, (7,6), order='F')  
array([31, 41, 13])
>>> np.ravel_multi_index(arr, (4,6), mode='clip')  
array([22, 23, 19])
>>> np.ravel_multi_index(arr, (4,4), mode=('clip','wrap'))  
array([12, 13, 13])
>>> np.ravel_multi_index((3,1,4,1), (6,7,8,9))  
1621

Warning

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

This docstring was copied from numpy.