
我正在嘗試根據第二個 numpy 向量中的值對 numpy 矩陣中每行的特定索引求和。例如,在影像中,有矩陣 A 和索引向量 inds。這里我想總結一下:
A[0, inds[0]] A[1, inds[1]] A[2, inds[2]] A[3, inds[3]]
我目前正在使用 python for 回圈,使代碼很慢。有沒有辦法使用矢量化來做到這一點?謝謝!
uj5u.com熱心網友回復:
是的,numpy 的魔法索引可以做到這一點。只需為第一個維度生成 arange并為第二個維度使用您的坐標:
import numpy as np
x1 = np.array( [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]] )
print(x1[ [0,1,2,3],[2,0,3,1] ].sum())
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/424179.html
