我试图生成一个numpy随机值数组,满足一些额外的约束,并且对于给定的固定长度N.是否更好:
制作一个列表(一次一次采样),然后将其转换为numpy数组
while len(list)<N:
num=np.random.rand(1)
if num <.5:
list.append(np.random.rand(1))
x=np.array(list)
使用矢量化代码,追加到数组:
x=np.array([])
while x.shape[0]<N:
x=np.append(x,np.random.rand(int(N/2))
x=x[x<.5][:N]
超过数组长度,然后尝试直到屏蔽版本足够长
x=np.array([])
while x.shape[0]<N:
x=np.random.rand(4*N)
x=x[x<.5][:N]