[英]Is there a way to concatenate two numpy arrays with different dimensions?
我正在使用深度学习模型,该模型试图将带有尺寸(1,2)的标签与一个numpy数组(25,25)连接起来。 我不确定是否有可能得到(627,0)的维度,但是,模型摘要说这是它期望的输入形状。
我试图连接它们,但我得到错误“所有输入数组维度除了连接轴必须完全匹配”按预期。
x = np.concatenate((X[1], to_categorical(Y_train[1]))
其中X =(25,25)且Y_train是(1,0),使得to_categorical(Y_train [1])等于(2,1)。
有没有办法用这些尺寸得到这个(627,0)尺寸?
@Psidom对此有一个很好的答案:
假设您有1维和2维阵列
你可以使用numpy.column_stack
:
np.column_stack((array_1, array_2))
其中隐式地将1-d数组转换为2-d,因此等效于np.concatenate((array_1, array_2[:,None]), axis=1)
。
a = np.arange(6).reshape(2,3)
b = np.arange(2)
a
#array([[0, 1, 2],
# [3, 4, 5]])
b
#array([0, 1])
np.column_stack((a, b))
#array([[0, 1, 2, 0],
# [3, 4, 5, 1]])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.