Nic*_*mer 2 python arrays numpy multidimensional-array
我有一个索引元组数组,我想用它从多维numpy数组中挑选出值,
import numpy
a = numpy.random.rand(10, 10, 10)
idx = [[1, 1, 2], [0, 3, 7], [9, 8, 4], [9, 9, 9]]
Run Code Online (Sandbox Code Playgroud)
理解[a[i, j, k] for i, j, k in idx]只有在a.ndim知道的情况下才有效.
任何提示?
您可以将转置版本转换idx为元组,然后为矢量化解决方案编制索引 -
a[tuple(np.transpose(idx))]
Run Code Online (Sandbox Code Playgroud)