numpy.ravel_multi_index
-
numpy.ravel_multi_index(multi_index, dims, mode='raise', order='C') -
Преобразует кортеж массивов индексов в массив плоских индексов, применяя режимы обработки границ к многомерному индексу.
- Параметры
-
-
multi_indextuple of array_like -
Кортеж целочисленных массивов, по одному массиву для каждой размерности.
-
dimstuple of ints -
Форма массива, в который индексы из
multi_indexприменяются. -
mode{‘raise’, ‘wrap’, ‘clip’}, optional -
Определяет, как обрабатываются индексы, выходящие за пределы границ. Может указать один режим или кортеж режимов, по одному режиму для каждого индекса.
- ‘raise’ – выбросить ошибку (по умолчанию)
- ‘wrap’ – перенос за пределы границ
- ‘clip’ – обрезать до диапазона
В режиме ‘clip’ отрицательный индекс, который обычно бы переносился, вместо этого будет обрезан до 0.
-
order{‘C’, ‘F’}, optional -
Определяет, должен ли многомерный индекс интерпретироваться как индексация в порядке строк (стиль C) или столбцов (стиль Fortran).
-
- Возвращает
-
-
raveled_indicesndarray -
Массив индексов в плоской версии массива с размерностями
dims.
-
См. также
Примечания
Новое в версии 1.6.0.
Примеры
>>> 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
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/generated/numpy.ravel_multi_index.html