2013-06-21 48 views

回答

2

我建議你首先創建它擁有每a細胞相應的權重矩陣r。然後,做乘法。所以,你可以利用矢量化的好處。

例子:

r = np.zeros(a.shape) 
for i in range(a.shape[0]): 
    for j in range(a.shape[1]): 
     # compute r[i, j] 

a = a * r 

如果你的隨機數不依賴於a細胞,只需要運行:

a = a * numpy.random.rand(a.shape[0], a.shape[1]) 

如果你希望你的隨機數不爲列改變,那麼您可以利用broadcasting

a = a * numpy.random.rand(a.shape[0], 1) 

For遍歷數組,你可以檢查this documentation

0

的方式來訪問numpy.ndarray元素是:

a[i,j]=a[i,j]*r