抛硬币
在视频中,您已经看到自定义函数 get_heads_prob(),它用于估计二项分布的成功概率。本练习中,您将亲自使用它,并在一个抛硬币实验中验证它是否工作良好。
请注意不要混淆:这里涉及两种不同的概率分布!一种是用于建模抛硬币的二项分布。它是离散分布,只有两个取值(正面或反面),并以成功概率(抛到正面)为参数。该参数的贝叶斯估计则是另一种连续的概率分布。我们并不知道它的确切形式,但可以用 get_heads_prob() 来估计并将其可视化。
numpy 和 seaborn 已分别以 np 和 sns 导入。
本练习是课程的一部分
Python 中的贝叶斯数据分析
练习说明
- 生成 1000 次抛硬币结果(0 和 1),正面概率为 50%,赋值给变量
tosses。 - 使用
tosses和get_heads_prob()函数估计正面概率,并将结果赋给heads_prob。 - 绘制您刚刚估计得到的正面概率分布的密度图。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Generate 1000 coin tosses
tosses = ____(____, ____, ____)
# Estimate the heads probability
heads_prob = ____
# Plot the distribution of heads probability
____(____, shade=True, label="heads probabilty")
plt.show()