我有一些numpy的操作,我可以在一個循環中完美執行,但我一直無法在一次numpy調用中將它們引導。Vectorise序列numpy計算
# data matrix
d = np.random.rand(1496, 1, 2)
# boolean matrix
r = np.random.rand(5, 1496, 1, 2) > 0.5
# result matrix
x = np.empty((5,))
# How can I avoid this loop?
for i in xrange(r.shape[0]):
x[i] = d[r[i]].sum()
是否有可能通過某種方式來加速向上循環?
不錯的想法乘法float和布爾矩陣並使用廣播(也感謝您的解釋)。 – orange
沒問題。很高興它有幫助。 – Psidom