繁体   English   中英

在 Python 中连接 3 个多维数组

[英]Concatenating 3 multidimensional arrays in Python

我有三个形状为(1,9,2)的数组I1,I2,I3 我正在尝试追加,但出现错误。 新数组应具有形状(3,9,2)

import numpy as np

I1 = np.array([[[0, 2],
        [2, 3],
        [2, 5],
        [3, 4],
        [3, 6],
        [4, 1],
        [4, 7],
        [5, 6],
        [6, 7]]])

I2 = np.array([[[1, 1],
        [2, 3],
        [2, 5],
        [3, 4],
        [3, 6],
        [4, 1],
        [4, 7],
        [5, 6],
        [6, 7]]])

I3 = np.array([[[2, 2],
        [2, 3],
        [2, 5],
        [3, 4],
        [3, 6],
        [4, 1],
        [4, 7],
        [5, 6],
        [6, 7]]])

I=np.append(I1,I2,I3,axis=0)

错误是

in <module>
    Iit=np.append(Iit1,Iit2,Iit3,axis=0)

  File "<__array_function__ internals>", line 4, in append

TypeError: _append_dispatcher() got multiple values for argument 'axis'

使用I=np.concatenate([I1,I2,I3],axis=0)而不是append Append 执行您对列表的期望(无论如何,出于内存分配的原因,尽量不要在 numpy 中使用它!)`

与@Dominik 不同的方式是

I = np.stack((I1,I2,I3))

stack创建一个新轴。

暂无
暂无

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

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