numpy的坐标操作

import numpy as np

predict = np.random.rand(7, 3)
gt = np.random.randint(0, 3, (7, 1))
# [[0.86111937 0.17885014 0.15346783]
#  [0.18914942 0.55776159 0.76759271]
#  [0.08425694 0.54494251 0.3043947 ]
#  [0.82567279 0.99587862 0.57488206]
#  [0.21186169 0.24997568 0.36392427]
#  [0.91367358 0.5245865  0.30387125]
#  [0.47643958 0.89592537 0.95115335]]
#
#
# [[2]
#  [0]
#  [2]
#  [1]
#  [2]
#  [0]
#  [1]]

有个需求就是比如gt第一行是2就是需要在predict的第一行的2位置值乘以-1, 上面就是需要-0.15346783,其他的以此类推。

实现如下:

import numpy as np

predict = np.random.rand(7, 3)#[7,3]
gt = np.random.randint(0, 3, (7, 1))#[7,1]

predict[[(0,1,2,3,4,5,6), gt.reshape(-1)]] *= -100000

这里为了方便观察,乘以很大值

posted @   无左无右  阅读(57)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示