首页 > 技术文章 > numpy中多维数组的绝对索引

TQCAI 2018-04-19 22:12 原文

这涉及到吧多维数组映射为一维数组。

对于3维数组,有公式:

def MAP(x,y,z):
    return y_s * z_s * x + z_s * y + z

此公式可以推广到N维

测试代码:(两个输出相同,说明测试成功)

import numpy as np

x_s=4
y_s=3
z_s=9

def MAP(x,y,z):
    return y_s * z_s * x + z_s * y + z

org=np.arange(x_s*y_s*z_s)
arr=np.resize(org,[x_s,y_s,z_s])

x=2
y=1
z=3
print(org[MAP(x,y,z)])
print(arr[x,y,z])

 

推荐阅读