2
我有這樣的代碼:如何將這段代碼從python循環重寫到numpy向量(for perfomance)?
for j in xrange (j_start, self.max_j):
for i in xrange (0, self.max_i):
new_i = round (i + ((j - j_start) * discriminant))
if new_i >= self.max_i:
continue
self.grid[new_i, j] = standard[i]
,我想扔掉緩慢機Python循環,以加快速度。可以使用numpy向量操作,它們非常快。怎麼做?
j_start, self.max_j, self.max_i, discriminant
int,int,int,float(常量)。
self.grid
二維numpy數組(self.max_i x self.max_j)。
standard
一維numpy數組(self.max_i)。
不幸的是它更復雜:(謝謝你的貢獻,但它並沒有幫助我 –
你在尋找什麼解決方案?一個任何向量化的一般方法是「超出討論的範圍」。 – GaryBishop
我更新瞭解決方案,使其只執行你的代碼(我認爲)。這是否有幫助? – GaryBishop