numpy.ravel_multi_index#
- numpy.ravel_multi_index(multi_index, dims, mode='raise', порядок='C')#
Преобразует кортеж индексных массивов в массив плоских индексов, применяя граничные режимы к мульти-индексу.
- Параметры:
- multi_indexкортеж из array_like
Кортеж целочисленных массивов, по одному массиву для каждого измерения.
- dimsкортеж целых чисел
Форма массива, в который индексы из
multi_indexapply.- mode{‘raise’, ‘wrap’, ‘clip’}, опционально
Определяет, как обрабатываются индексы вне диапазона. Можно указать либо один режим, либо кортеж режимов, по одному режиму на индекс.
'raise' – вызвать ошибку (по умолчанию)
‘wrap’ – циклический перенос
‘clip’ – обрезать до диапазона
В режиме 'clip' отрицательный индекс, который обычно зацикливается, будет обрезаться до 0.
- порядок{'C', 'F'}, опционально
Определяет, следует ли рассматривать мультииндекс как индексацию в порядке row-major (C-стиль) или column-major (Fortran-стиль).
- Возвращает:
- raveled_indicesndarray
Массив индексов в уплощённую версию массива размерностей
dims.
Смотрите также
Примеры
>>> import numpy as np >>> 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