a = np.array([1, 2, 3])
aa = np.array([1], [2], [3])
b = np.array([1, 2, 3])
bb = np.array([1], [2], [3])
np.concatenate((a, b), axis = 1)
array([1, 2, 3, 1, 2, 3]) # It's ok, that's what I was expecting
np.concatenate((a, b), axis = 0)
array([1, 2, 3, 1, 2, 3]) # It's not ok, that's not what I was expecting
我期待:
array([[1, 2, 3],
[1, 2, 3]])
即使使用 aa 和 bb,我也会遇到同样的不一致。 那么是否有一种简单的解决方案可以沿轴 0 连接两个一维数组?
最佳答案
注意 a
和 b
都是一维的;没有要连接的轴 1。你要vstack
:
>>> import numpy as np
>>> a = np.array([1,2,3])
>>> b = a.copy()
>>> np.vstack([a,b])
array([[1, 2, 3],
[1, 2, 3]])
或者,您可以先 reshape a
和 b
:
>>> np.concatenate([a[np.newaxis,:],b[np.newaxis,:]],axis = 0)
array([[1, 2, 3],
[1, 2, 3]])
关于python - 连接两个一维到两列数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14482696/