多重比较问题
当研究者反复在不同变量/样本之间进行显著性检验时,就会出现多重比较问题。仅凭随机性,我们也会偶尔得到具有统计显著性的结果。
在本练习中,您将使用得自德州奥斯汀市员工薪资的数据。您会将他们的薪资与随机生成的数据进行比较,观察这些随机数据在多大程度上会被判为能够"显著"解释员工薪资。显然,这类"显著性"是虚假的,因为随机数对解释任何事物都帮不上忙!
一个包含警员薪资的 DataFrame(police_salaries_df)已为您加载,同时还加载了 pandas(命名为 pd)、NumPy(命名为 np)、Matplotlib(命名为 plt),以及来自 SciPy 的 stats。
本练习是课程的一部分
Python 推断基础
练习说明
- 将数据集中人员数量存入
n_rows(每行代表 1 个人),并将显著结果的计数n_significant初始化为 0。 - 编写一个运行 1000 次的
for循环,每次生成n_rows个随机数。 - 计算这些随机数与警员薪资之间的 Pearson R 及其对应的 p 值。
- 如果 p 值在 5% 水平上显著,使用
+=运算符将n_significant加 1。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Compute number of rows and initialize n_significant
n_rows = ____
n_significant = ____
# For loop which generates n_rows random numbers 1000 times
for i in ____:
random_nums = np.random.uniform(size=____)
# Compute correlation between random_nums and police salaries
r, p_value = stats.____(____, random_nums)
# If the p-value is significant at 5%, increment n_significant
if ____ < ____:
____ += 1
print(n_significant)