各位大大好,小的最近遇到一個問題,
假設有個 numpy 二維矩陣 A,
我想要讓 A 矩陣裡的值,
以 10% 的機率設為 0,
於是寫了以下程式碼 :
rows = 10
cols = 10
prb = np.random.random((rows, cols))
mask = prb<0.1
for row in range(rows):
for col in range(cols):
if(mask[row][col]):
A[row][col]=0
有沒有能夠利用numpy的broadcasting來達到同樣的效果,
而不是用 for 迴圈,因為上面這種寫法,
我只要在if()裡面產生隨機數判斷就好,
不用在上面宣告 prb 和 mask 來多此一舉,
能否請各位大大幫我解惑,感恩!!