SunnyEdward 2022-03-03 15:18 采纳率: 75%
浏览 1486
已结题

关于torch.cat拼接问题

问题相关代码

print(link_od)
print(link_od.shape)
print(etaODAVG)
print(etaODAVG.shape)
x_lstm = torch.cat([x_link_od,
                    etaODAVG],
                   -1)
print(x_lstm)
运行结果及报错内容

tensor([[187975,  55639],
        [ 82492,  25441],
        [ 82492,  25441]])
torch.Size([3, 2])
tensor([[-0.4727],
        [-0.2943],
        [-0.2943]])
torch.Size([3, 1])

RuntimeError: Tensors must have same number of dimensions: got 3 and 2

我想要达到的结果

请问怎样才能让torch.cat成功运行,将第二个tensor按行拼接到第一个tensor后面。

  • 写回答

1条回答 默认 最新

  • 爱晚乏客游 2022-03-03 15:42
    关注

    你这只能按列拼接,按行拼接link_od两列数据,etaODAVG一列数据肯定不行啊

    x_lstm = torch.cat((link_od,etaODAVG),1),#按列拼接
    tensor([[ 1.8798e+05,  5.5639e+04, -4.7270e-01],
            [ 8.2492e+04,  2.5441e+04, -2.9430e-01],
            [ 8.2492e+04,  2.5441e+04, -2.9430e-01]])
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 3月11日
  • 已采纳回答 3月3日
  • 创建了问题 3月3日