【发布时间】:2021-08-27 09:34:10
【问题描述】:
我想用这段代码堆叠数组。
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([7, 8])
np.stack((a, b), axis=-1)
但它会返回
ValueError:所有输入数组必须具有相同的形状错误。
我希望输出是:
array([[[1, 2, 3], 7],
[[4, 5, 6], 8]])
【问题讨论】:
-
您确定要此
np.object,还是在寻找array([[[1, 2, 3, 7], [[4, 5, 6, 8]])? -
我正在寻找作为数组的对象([[[1, 2, 3], 7], [[4, 5, 6], 8]])
-
@MichaelSzczesny 它与定义具有不同行大小的 numpy 数组无关。我想连接这些数组,如预期输出所示。
-
原来
a是一个(n,3)数值数组;在组合数组中,它被分解为n(3,) 数组。要恢复a,您必须使用np.stack(res[:,0])。合并后的数组会占用更多内存,并且对于大多数操作来说会更难使用。