为什么无法在Python中连接两个数组?

0 投票
3 回答
666 浏览
提问于 2025-04-18 13:32

我有两个数组

>>> array1.shape
(97, 195)
>>> array2.shape
(195,)
>>> array1 = numpy.concatenate((array1, array2), axis=0)

当我尝试把它们合并时,出现了一个错误

ValueError: all the input arrays must have same number of dimensions

是不是因为第二个数组的形状是 (195,) 导致了这个问题?

3 个回答

0

还有一种简单的方法可以实现你想要的数组连接,那就是使用Numpy的 vstack 函数,具体用法如下:

array1 = np.vstack([array1, array2])
1

为了让这个能正常工作,你需要确保array2实际上是一个二维数组。

array1 = numpy.concatenate((array1, array2.reshape((1,195)))

这样应该可以正常运行

3

只需要让两个东西的尺寸和大小都一样,除了要合并的那一条轴。

np.concatenate((array1, array2[np.newaxis,...]), axis=0)

撰写回答