np.random 模块与伯努利试验
您可以将伯努利试验理解为抛掷一枚可能有偏的硬币。具体来说,每次抛掷以概率 p 得到正面(成功),以概率 1-p 得到反面(失败)。在本练习中,您将编写一个函数来执行 n 次伯努利试验:perform_bernoulli_trials(n, p),该函数返回在 n 次伯努利试验中成功的次数,其中每次试验的成功概率为 p。要执行每一次伯努利试验,请使用 rng.random() 函数,它会返回一个介于 0 和 1 之间的随机数。
本练习是课程的一部分
Python 中的统计思维(第 1 部分)
练习说明
- 定义函数
perform_bernoulli_trials(n, p)。- 将计数伯努利试验成功(
True)次数的变量n_success初始化为 0。 - 编写一个
for循环,每次迭代执行一次伯努利试验;若结果为True,则将成功次数加 1。通过遍历range(n)执行n次迭代。- 要执行一次伯努利试验,使用
rng.random()选择一个介于 0 和 1 的随机数。若该数小于p,则将n_success加 1(使用+= 1运算符)。一个随机数生成器已实例化为变量rng并完成设定种子。
- 要执行一次伯努利试验,使用
- 函数返回成功次数
n_success。
- 将计数伯努利试验成功(
交互式实操练习
通过完成这段示例代码来试试这个练习。
def perform_bernoulli_trials(n, p):
"""Perform n Bernoulli trials with success probability p
and return number of successes."""
# Initialize number of successes: n_success
n_success = ____
# Perform trials
for i in ____:
# Choose random number between zero and one: random_number
# If less than p, it's a success so add one to n_success
if ____:
____
return n_success