this = rand(100,3,4)
for i in range(0,100):
for j in range(0,3):
for k in range(0,4):
if rand()<0.5:
this[i,j,k]=0
rand
为numpy.random.rand
以上是否可以用链式列表理解来编写?
目标:为&#34中的每个术语分配值0;这个&#34; (3D矩阵)具有一定概率(0.5)
答案 0 :(得分:3)
在我看来,你最好使用内置的numpy例程,例如numpy.where
......
>>> import numpy
>>> import numpy.random
>>> x = numpy.random.rand(100, 3, 4)
>>> mask = numpy.random.rand(*x.shape)
>>> result = numpy.where(mask < 0.5, 0, x)