使用 np.random 模块生成随机数
在本课程及其续集中,我们都会大量使用 np.random 模块。实际上,当您戴上"黑客统计学家"的帽子时,您很可能调用 RNG 实例的方法比调用任何其他函数都多。让我们先用一个简单的函数 rng.random() 来热身。该函数返回 0 到 1 之间的随机数。如果您多次调用 rng.random(),会看到结果在 0 和 1 之间跳动。
在这个练习中,我们将生成大量介于 0 和 1 之间的随机数,然后绘制结果的直方图。如果这些数字是真正随机的,直方图中的所有柱形应当(大致)等高。
您可能注意到,在视频中,Justin 通过向 rng.random() 传入关键字参数 size=4 来一次性生成 4 个随机数。这种做法比使用 for 循环更高效。不过,在本练习中,您将编写一个 for 循环,以体验黑客统计的理念:把同一个实验重复做很多次。
本练习是课程的一部分
Python 中的统计思维(第 1 部分)
练习说明
- 使用种子
42实例化并设定一个随机数生成器rng。 - 初始化一个包含 100,000 个元素的空数组
random_numbers用于存储随机数。请务必使用np.empty(100000)完成此操作。 - 编写一个
for循环,使用rng.random()抽取 100,000 个随机数,并将其存入数组random_numbers。为此,请遍历range(100000)。 - 绘制
random_numbers的直方图。本题仅用于检查随机数生成器,不必给坐标轴加标签。完成后点击 提交答案 显示您的图表。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Instantiate and seed the random number generator
# Initialize random numbers: random_numbers
random_numbers = ____
# Generate random numbers by looping over range(100000)
for i in ____:
random_numbers[i] = ____
# Plot a histogram
_ = plt.hist(____)
# Show the plot
plt.show()