numpy.ravel_multi_index#
- numpy.ravel_multi_index(multi_index, dims, mode='raise', order='C')#
將索引陣列的元組轉換為扁平索引陣列,並將邊界模式應用於多重索引。
- 參數:
- multi_indexarray_like 元組
整數陣列的元組,每個維度一個陣列。
- dims整數元組
從
multi_index
套用索引的陣列形狀。- mode{‘raise’, ‘wrap’, ‘clip’}, optional
指定如何處理超出邊界的索引。可以指定一個模式或模式元組,每個索引一個模式。
‘raise’ – 引發錯誤 (預設)
‘wrap’ – 環繞
‘clip’ – 裁剪到範圍
在 ‘clip’ 模式下,通常會環繞的負索引將裁剪為 0。
- order{‘C’, ‘F’}, optional
決定多重索引應視為以 row-major (C-style) 或 column-major (Fortran-style) 順序索引。
- 返回:
- 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