Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用变量处理多维数组的元素?_Python_Arrays_Numpy_Matrix_Vector - Fatal编程技术网

Python 如何使用变量处理多维数组的元素?

Python 如何使用变量处理多维数组的元素?,python,arrays,numpy,matrix,vector,Python,Arrays,Numpy,Matrix,Vector,我必须处理一些高维数组,我想通过变量访问它们的字段。 上面的代码显示了一个非常糟糕的解决方案,我相信还有一个更有效的解决方案,类似于cube[vector]或cube[vector[I]for I in range(len(vector))],但它们似乎都不起作用。NumPy索引只是元组,因此您可以: import numpy as np cube = np.zeros((2,2,2,2,2,2,2)) # Make 7 dim hypercube vector=[1,0,1,1,0,1,1]

我必须处理一些高维数组,我想通过变量访问它们的字段。
上面的代码显示了一个非常糟糕的解决方案,我相信还有一个更有效的解决方案,类似于
cube[vector]
cube[vector[I]for I in range(len(vector))]
,但它们似乎都不起作用。

NumPy索引只是元组,因此您可以:

import numpy as np
cube = np.zeros((2,2,2,2,2,2,2)) # Make 7 dim hypercube
vector=[1,0,1,1,0,1,1]
cube[vector[0],vector[1],vector[2],vector[3],vector[4],vector[5],vector[6]] # access the field [1,0,1,1,0,1,1]
cube[tuple(vector)]