小编Chr*_*ian的帖子

如何基于 2D 索引和 1D 值向量替换 Numpy 3D 数组中沿 z 轴的值

我似乎很难理解数组索引。

给出的内容:

我确实有一个像这样的 3d 数组:

a_3d = np.zeros((3,3,3))
Run Code Online (Sandbox Code Playgroud)

一个二维索引数组:

a_2d_index = np.array([[0,0,1], [0,0,0], [0,1,1]]).astype('bool')
Run Code Online (Sandbox Code Playgroud)

以及在 x,y 位置放置到 3d 数组中的值:

a_1d_fill = np.array([10,20,30])
Run Code Online (Sandbox Code Playgroud)

现在,我确实想使用 a_2d_index 来查找 a_3d 中的位置并将 a_1d_fill 垂直放置在这个 x,y 位置......

最终结果应如下所示:

a_3d := [[[0,0, 10],
          [0,0,  0],
          [0,10,10]],
         [[0,0, 20],
          [0,0,  0],
          [0,20,20]],
         [[0,0, 30],
          [0,0,  0],
          [0,30,30]]]
Run Code Online (Sandbox Code Playgroud)

这将用于非常大的阵列,因此内存效率和速度至关重要......(少量复制,最好就地修改)

arrays indexing numpy

6
推荐指数
2
解决办法
1711
查看次数

标签 统计

arrays ×1

indexing ×1

numpy ×1