我想访问带有索引数组的多维python数组,使用整个数组来索引目标元素。 让我更好地解释一下:
A = np.arange(4).reshape(2,2)
a = [1,1]
>>> A[a[0],a[1]]
3
我的目的是传递数组而不对索引值进行硬编码并获得相同的结果,即值A[1,1]
。我试过,但我找到的唯一方法是以不同的方式工作:
>>> A[a]
array([[2, 3],
[2, 3]])
新数组的构造是什么结果,其中索引数组的每个值从被索引的数组中选择一行,结果数组具有结果形状(索引元素的数量,行的大小)。
谢谢。
答案 0 :(得分:2)
将 tuple
(不是list
)传递给__getitem__
([..]
索引器)。
A[tuple(a)]
3