有什么方法可以让我在一行中完成以下操作? 假设我有一组概率,
p=np.array([0.75, 0.63, 0.33, 0.25, 0.47])
其中每个值对应于选择1的概率,而(1-p)对应于选择0的概率,即0.75是选择1的概率,而1-0.75是选择0的概率,0.63用于选择用于选择0的1和0. - 0.63,依此类推。有没有更简单的方法来执行以下操作,希望没有循环?
values = np.empty(p.shape)
for i, prob in enumerate(p):
values[i] = np.random.binomial(1, prob)
我知道可以使用map完成,但是有没有办法在numpy中直接执行它?
答案 0 :(得分:2)
values = np.random.binomial(1, p)