Spec-Zone.ru › NumPy 2.0

numpy.ravel_multi_index

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

Преобразует кортеж массивов индексов в массив плоских индексов, применяя режимы границ к многомерному индексу.

Параметры:
multi_indexкортеж array_like

Кортеж целочисленных массивов, по одному массиву для каждой размерности.

dimsкортеж целых чисел

Форма массива, в который применяются индексы из multi_index.

mode{‘raise’, ‘wrap’, ‘clip’}, необязательно

Указывает, как обрабатываются индексы, выходящие за пределы. Можно указать один режим или кортеж режимов, по одному режиму на индекс.

  • ‘raise’ – выбросить ошибку (по умолчанию)
  • ‘wrap’ – перемотка
  • ‘clip’ – обрезка до диапазона

В режиме ‘clip’ отрицательный индекс, который обычно перематывается, обрезается до 0.

order{‘C’, ‘F’}, необязательно

Определяет, как многомерный индекс должен рассматриваться как индексация в строчно-главной (стиль C) или столбцово-главной (стиль Fortran) порядке.

Возвращает:
растянутые_индексыndarray

Массив индексов во «плоской» версии массива размерностей dims.

См. также

unravel_index

Замечания

В версии 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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.ravel_multi_index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API