python - 有没有办法连接两个不同维度的numpy数组?
问题描述
我正在使用一个深度学习模型,该模型试图将具有维度 (1,2) 的标签与 (25,25) 的 numpy 数组连接起来。我不确定是否可以获得 (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对此有很好的回答:
假设您有一个一维数组和一个二维数组
您可以使用numpy.column_stack
:
np.column_stack((array_1, array_2))
它将一维数组隐式转换为二维,因此相当于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]])
推荐阅读
- google-api - Google Calendar Java API 停止向与会者发送邀请
- php - 有没有办法在 2 个 Cest 测试之间共享变量?
- bash - Grep Result 过滤双重结果
- docker - 如何将现有的 mysql 卷附加到新容器?
- php - 如何在不重新加载页面的情况下提交我的表单?
- reactjs - useState() 错误 - 状态值与初始值不同
- python - 在 Python 中创建一个列表并插入到 Oracle 表中,然后能够检索计数,但在 oracle 表中找不到值
- php - 获取dn后PHP LDAP二次查询
- visual-studio-2017 - 如何停止在发布包中生成 pdb 文件
- node.js - 检查 POST 请求处理程序中的函数调用