0Pricing
Learn AI with Python · 课时

假设检验

使用 scipy.stats 学习零假设、p 值、t 检验和卡方检验

假设检验 是 CoddyKit 上的免费 Learn AI with Python 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Learn AI with Python 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Learn AI with Python 课程共包含 4 节课。

什么是假设检验

假设检验利用数据判断观察到的效应是真实的,还是仅仅由随机因素造成的。这是数据科学家为“新设计提高了点击次数”等主张提供依据的方法。

原假设与备择假设

原假设 H0 表示没有效应(默认且持怀疑态度的立场)。备择假设 H1 表示存在效应。我们会尝试收集反对 H0 的证据。

p 值

p 值表示在 H0 为真的情况下,观察到如此极端数据的概率。较小的 p 值意味着这些数据在 H0 下非常出乎意料,因此我们会对 H0 产生怀疑。

显著性水平

我们会将 p 与阈值 alpha 进行比较(通常为 0.05)。如果 p < alpha,我们就拒绝 H0;否则就不能拒绝 H0。alpha 是可接受的假阳性率。

p 值不代表什么

p 值不是 H0 为真的概率,也不是效应大小。样本量很大时,极小的 p 值可能只反映一个小到无实际意义的差异。请始终同时报告效应大小。

单样本 t 检验

ttest_1samp 用于检查样本均值是否不同于某个已知值,例如平均响应时间是否不同于 200 毫秒的目标值。

from scipy import stats
import numpy as np
times = np.array([198, 205, 210, 195, 220, 208])
t, p = stats.ttest_1samp(times, popmean=200)
print(t, p)

双样本 t 检验

ttest_ind 比较两个 INDEPENDENT 组的均值,这是标准的 A/B 测试分析方法。

control = np.array([20, 22, 19, 24, 21])
treat = np.array([25, 27, 24, 29, 26])
t, p = stats.ttest_ind(control, treat)
print(t, p)   # small p -> groups differ

解读结果

将 p 值与 alpha 进行比较,并用通俗的语言陈述结论。显著性是一项决策,而不是确定性的证明。

alpha = 0.05
if p < alpha:
    print("Reject H0: the groups differ significantly")
else:
    print("Fail to reject H0: no significant difference")

卡方独立性检验

chi2_contingency 使用由计数组成的列联表,检验两个 CATEGORICAL 变量是否相关。

table = np.array([[30, 10], [20, 40]])   # rows: group, cols: outcome
chi2, p, dof, expected = stats.chi2_contingency(table)
print(chi2, p)

第一类错误与第二类错误

第一类错误(假阳性)会拒绝真实的 H0,其发生率为 alpha。第二类错误(假阴性)无法拒绝错误的 H0,其发生率为 beta。统计功效 = 1 - beta,表示检测到真实效应的概率。

权衡

降低 alpha 会减少假阳性,但会提高假阴性率(降低统计功效)。更大的样本量可以同时减少两类错误,这就是为什么在实验前进行样本量规划很重要。

快速检查

请测试您对假设检验的掌握情况。

回顾

假设检验要点:

  • H0(无效应)与 H1(有效应)对比;收集反对 H0 的证据
  • p 值 = P(如此极端的数据 | H0);当 p < alpha 时拒绝 H0
  • p 不是 H0 为真的概率,也不是效应大小
  • ttest_1samp、ttest_ind、chi2_contingency
  • 第一类错误(假阳性,发生率为 alpha)与第二类错误(假阴性,发生率为 beta);统计功效 = 1-beta

常见问题解答

「假设检验」课时是免费的吗?

是的 — 「假设检验」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Learn AI with Python 课程的其余内容,请升级到 CoddyKit PRO。 Learn AI with Python 课程共包含 4 节课。

「假设检验」这节课中我会学到什么?

使用 scipy.stats 学习零假设、p 值、t 检验和卡方检验 你通过在浏览器中直接运行的动手代码来练习 Learn AI with Python,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Learn AI with Python 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Learn AI with Python 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「假设检验」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Learn AI with Python 课中编写并运行代码吗?

能。每节 Learn AI with Python 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 描述性统计与分布
  2. 概率与贝叶斯定理
  3. 假设检验
  4. 相关性与协方差
← 返回 Learn AI with Python