使用索引数组向量化Numpy 4D数组中的索引选择

时间:2018-08-21 04:57:52

标签: python numpy numpy-slicing

在没有for循环的情况下,我无法执行以下操作:

我有一个这样的数组A:

A.shape = [50,80,100,100]

还有一个数组B,它是:

B.shape = [50,5]

对于k,B [k]是我要保留的沿A轴= 1的索引(0 <= B [k,i] <79)

我想以C结束:

C.shape = [50,5,100,100]

我可以做到:

for k in range(A.shape[0]):
    C[k] = A[k][B[k]]

但是我没有找到矢量化的表达方式。由于此命令已经运行了很多次:是否有更好(更快)的C语言获取方法?

0 个答案:

没有答案