为了账号安全,请及时绑定邮箱和手机立即绑定

如何根据随机索引数组将向量中的元素插入到矩阵中

如何根据随机索引数组将向量中的元素插入到矩阵中

湖上湖 2023-05-23 16:40:12
基本上,我试图根据随机索引将向量中的元素插入到矩阵中size = 100000answer_count = 4num_range = int(1e4)a = torch.randint(-num_range, num_range, size=(size, ))b = torch.randint(-num_range, num_range, size=(size, ))answers = torch.randint(-num_range, num_range, size=(size, answer_count))for i in range(size): answers[i, np.random.randint(answer_count)] = a[i] + b[i]我试过类似的东西c = a + bpos = torch.randint(answer_count, size=(size, ))answers[:, pos] = c但我肯定做错了什么
查看完整描述

1 回答

?
一只名叫tom的猫

TA贡献1906条经验 获得超2个赞

我认为您需要像这样更改最后一行:

answers[np.arange(size), pos] = c

问题在于高级索引的不正确使用。要了解这些索引的区别,请尝试打印出answers[:, pos]vs. answers[np.arange(size), pos],您会明白为什么前一个不起作用。用一行answers[np.arange(size), pos]选择每一行,同时用每一行选择所有行


查看完整回答
反对 回复 2023-05-23
  • 1 回答
  • 0 关注
  • 64 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信