Python 假设检验
James Chapman
Curriculum Manager, DataCamp
age_first_code_cut 标注 Stack Overflow 用户首次编程的时间"adult" 表示 14 岁或以上开始"child" 表示 14 岁之前开始假设 是关于未知总体参数的陈述
假设检验 比较两个相互竞争的假设
原假设($H_{0}$) 是现有观点
备择假设($H_{A}$) 是研究者提出的新"挑战者"观点
针对本问题:
显著性水平 是假设检验中的"排除合理怀疑"标准

假设检验检查样本统计量是否落在原假设分布的尾部
| 测验 | 尾部 |
|---|---|
| 备择假设 与原假设不同 | 双尾 |
| 备择假设 大于 原假设 | 右尾 |
| 备择假设 小于 原假设 | 左尾 |
$H_{A}$:作为儿童开始编程的数据科学家比例大于35%
这是一个右尾检验

p 值:在原假设为真时,得到该结果的概率
prop_child_samp = (stack_overflow['age_first_code_cut'] == "child").mean()
0.39141972578505085
prop_child_hyp = 0.35
std_error = np.std(first_code_boot_distn, ddof=1)
0.010351057228878566
z_score = (prop_child_samp - prop_child_hyp) / std_error
4.001497129152506
norm.cdf() 是 scipy.stats 的正态分布 CDF。norm.cdf()。1 - norm.cdf()。
from scipy.stats import norm
1 - norm.cdf(z_score, loc=0, scale=1)
3.1471479512323874e-05
Python 假设检验