作者NMOSFET (NMOSFET)
看板Python
标题[问题] numpy broadcasting 的使用
时间Wed Jun 13 23:59:38 2018
各位大大好,小的最近遇到一个问题,
假设有个 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 来多此一举,
能否请各位大大帮我解惑,感恩!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.173.18.6
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1528905581.A.2DF.html
1F:→ ThxThx: A[prb < 0.1] = 0 06/14 16:55
2F:→ ThxThx: 喔有人回了XD 06/14 16:56