繁体   English   中英

3D Arrays Numpy 中的关节和组合

[英]Arthimatic and combining in 3D Arrays Numpy

假设我有一个 3D 数组 x:

x = np.arange(0, 24).reshape(4, 3, 2)

output: 
array([[[ 0,  1],
    [ 2,  3],
    [ 4,  5]],

   [[ 6,  7],
    [ 8,  9],
    [10, 11]],

   [[12, 13],
    [14, 15],
    [16, 17]],

   [[18, 19],
    [20, 21],
    [22, 23]]])

如果我想明智地连接这一行的副本,但每次我想在每对内部的第一个元素上加 1,我该怎么做?

我可以连接 1x

np.concatenate([x, x], axis=0)

大概我可以在一个循环中做到这一点(尽管在 Numpy 中可能有更好的方法)。 但是我不知道如何+1。

这允许我将 1 添加到所有元素,但是我只有一个 3x4 的值矩阵 +1 并且我没有单元格的 rest!

x[:,:,0] + 1

output:
array([[ 1,  3,  5],
   [ 7,  9, 11],
   [13, 15, 17],
   [19, 21, 23]])

感觉这是一个以前必须问过的问题? 但是我找不到足够的关于多维 arrays 的算法或切片的材料。

谢谢

只需连接和修改:

a = np.concatenate([x, x], axis=0)
a[x.shape[0]:,:,0] += 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM