用其他数组切片numpy数组

2024-04-25 17:46:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图提取由x中包含的一组索引指定的numpy数组y的子集,同时仍然保留{}的一些索引。一个具体的例子。让y具有形状(10,10,10,3),而{}具有形状{}。x的最后一个维度对应于y前三个维度的索引。也就是说,我希望高效的切片操作具有与此相同的结果:

for i in x.shape[0]:
    for j in x.shape[1]:
        z[i,j,:] = y[x[i,j,0],x[i,j,1],x[i,j,2],:]

理想情况下,无论x的维数是多少,答案都是有效的。在

一般来说,yN+1-维的,形状是(...,N),而{}是{}-维,形状是(...,N),结果与{}具有相同的形状。在

这样做的动机是从向量场中提取向量的子集。在


Tags: 答案innumpyfor情况切片数组子集
1条回答
网友
1楼 · 发布于 2024-04-25 17:46:47

这应该可以很好地工作:

y[x[..., 0], x[..., 1], x[..., 2]]

一般情况下:

^{pr2}$

相关问题 更多 >