numpy.ravel_multi_index#
- numpy.ravel_multi_index(multi_index, dims, mode='raise', order='C')#
将索引数组的元组转换为扁平索引数组,对多索引应用边界模式.
- 参数:
- multi_index数组类元组
一个整数数组的元组,每个维度对应一个数组.
- dimsints 的元组
multi_index
的索引应用到的数组的形状.- mode{‘raise’, ‘wrap’, ‘clip’}, 可选
指定如何处理越界索引.可以指定一种模式或一个模式的元组,每个索引一种模式.
‘raise’ – 引发错误(默认)
‘wrap’ – 环绕
‘clip’ – 裁剪到范围
在 ‘clip’ 模式下,通常会回绕的负索引将改为剪辑到 0.
- order{‘C’, ‘F’}, 可选
确定多索引是否应视为按行主序(C 风格)或列主序(Fortran 风格)进行索引.
- 返回:
- raveled_indicesndarray
一个索引数组,指向维度为
dims
的数组的扁平化版本.
备注
在 1.6.0 版本加入.
示例
>>> 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