簡體   English   中英

在 numpy 中做到這一點的簡單方法?

[英]Easy way to do this in numpy?

假設我有一個 BxNxL 數組 M。換句話說,M 由 B NxL 個矩陣組成。 此外,我有一個 LxB 列向量 Q。是否有任何簡單的方法(沒有 for 循環)將 Q 的第 i 列廣播(求和)到 M 中的第 i 個矩陣?

所以你的迭代代碼會是?

for i in range(...):    
    res[i,:,:] = M[i,:,:] + Q[:,i]    # NxL + L

與整個陣列

res = M + Q.T[:,None,:]     # BxNxL  + (Bx1xL)

(我寫的沒有測試例子,所以可能有錯誤,但基本思路應該是對的)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM