【发布时间】:2019-06-21 16:30:10
【问题描述】:
我有一个 3x2x2 numpy 数组,我想将另一个 3x2 数组加入它,这样我的新数组就是 3x2x3。我一直在尝试使用堆栈和连接,但我不断收到ValueError: all input arrays must have the same shape。现有数组如下
array([[[1, 1],
[2, 2]],
[[3, 3],
[4, 4]],
[[5, 5],
[6, 6]]])
我希望加入另一个这样的数组:
array([[1, 2],
[3, 4],
[5, 6]])
输出是这样的:
array([[[1., 1., 1.],
[2., 2., 2.]],
[[3., 3., 3.],
[4., 4., 4.]],
[[5., 5., 5.],
[6., 6., 6.]]])
我不确定我是否正确编写了输出,因为 numpy 显示具有 3 个维度的矩阵的方式让我感到困惑 - 结果应该具有形状 (3,2,3)。我希望迭代地执行此操作,以便我可以继续扩展矩阵,以便形状为 (3,2,4) 然后 (3,2,5) 然后 (3,2,6) 等等...
【问题讨论】:
-
而想要的输出是..?
-
您引用了
stack错误消息,但concatenate抱怨all the input arrays must have same number of dimensions。正确的?你知道如何纠正吗?如何给(3,2)数组添加维度? -
为什么要迭代地做这个?为什么不将所有 (3,2) 数组收集到一个列表中,然后将它们与一个
concatenate连接起来?
标签: python numpy concatenation