为什么无法在Python中连接两个数组?
我有两个数组
>>> 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)