掷两个公平骰子
到目前为止,您已经知道如何实现模拟的前两个步骤。现在让我们实现下一步——定义随机变量之间的关系。
在很多情况下,模拟涉及的不止一个随机变量,而是多个。想一想这样一个游戏:掷两个骰子,如果两个骰子点数相同就获胜。这里我们有两个随机变量——两个骰子——以及它们之间的关系——若点数相同则赢,不同则输。实际中,随机变量之间的关系可能复杂得多,尤其是在模拟天气等现象时。
完成本练习后,您将熟悉如何实现运行模拟的第三步——定义随机变量之间的关系。
本练习是课程的一部分
Python 中的统计模拟
练习说明
- 将
num_dice设为 2。 - 补全
np.random.choice()函数,掷两个骰子,并将结果记录在变量outcomes中。 - 填写布尔条件,检查两个骰子的点数是否相同。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Initialize number of dice, simulate & record outcome
die, probabilities, num_dice = [1,2,3,4,5,6], [1/6, 1/6, 1/6, 1/6, 1/6, 1/6], ____
outcomes = np.random.choice(____, size=____, p=____)
# Win if the two dice show the same number
if ____ == ____:
answer = 'win'
else:
answer = 'lose'
print("The dice show {} and {}. You {}!".format(outcomes[0], outcomes[1], answer))