numpy:使用多维索引索引一维数组

numpy: indexing 1d array with multidimensional index

如何使用高维索引数组索引低维数据数组?

例如:给定一维数据数组和二维索引数组:

data = np.array([11,12,13])
idx = np.array([[0,1],
                [1,2])

我想要一个二维数据数组:

np.array([[11,12],
          [12,13]])

这在 Python / NumPy 中非常容易,感谢 advanced Numpy indexing system,您只需使用索引作为切片,例如data[idx].

data = np.array([11,12,13])
idx = np.array([[0,1],
                [1,2]])

# this will produce the correct result
data[idx]
# array([[11, 12],
#        [12, 13]])