gpt4 book ai didi

python - python中条件概率问题的模拟

转载 作者:太空宇宙 更新时间:2023-11-04 04:28:24 24 4
gpt4 key购买 nike

我正在尝试模拟一个简单的条件概率问题。你有两个盒子。如果你打开A你有50%的几率中奖,如果你打开B你有75%的几率中奖。使用一些简单的(坏的)python 我已经厌倦了但是附加不起作用。有没有关于更简洁的方法的想法?

import random
import numpy as np
def liveORdie(prob):
#Takes an argument of the probability of survival
live = 0
for i in range(100):
if random.random() <= prob*1.0:
live =1
return live

def simulate(n):
trials = np.array([0])
for i in range(n):
if random.random() <= 0.5:
np.append(trials,liveORdie(0.5))
print(trials)
else:
np.append(trials,liveORdie(0.75))
return(sum(trials)/n)


simulate(10)

最佳答案

您可以使用列表理解和 numpy 的数组操作使代码更紧凑,如下所示:

import random
import numpy as np

def LiveOrDie():
prob = 0.5 if random.random()<=0.5 else 0.75
return np.sum(np.random.random(100)<=prob)

def simulate(n):
trials = [LiveOrDie() for x in range(n)]
return(sum(trials)/n)

Simulate(10)

关于python - python中条件概率问题的模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53104647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com