Math-00.数学分布-28.F分布

F 分布(F-distribution)是两个独立 卡方分布 变量(各自除以自由度)之比的分布,是方差齐性检验方差分析ANOVA)中 F 统计量的参考分布。

段末注释ANOVA(analysis of variance)通过比较组间与组内方差判断多组均值是否相等。

读前说明:连续分布,支撑集 $(0,+\infty)$。系列:26 卡方 | Math-01 F检验


1. 产生背景与直观

图 1 两方差之比

设 $U \sim \chi^2_{d_1}$,$V \sim \chi^2_{d_2}$ 独立,则

$$
F = \frac{U/d_1}{V/d_2} \sim F(d_1, d_2)
$$

直觉:比较两组数据的波动幅度是否相同,或多组均值差异是否超过组内随机波动。


2. 定义与参数

$X \sim F(d_1, d_2)$:

要素 内容
支撑集 $(0, +\infty)$
参数 分子自由度 $d_1$,分母自由度 $d_2$

3. PDF 与 CDF

图 2 右偏 PDF

3.1 PDF

$$
f(x) = \frac{\sqrt{(d_1 x)^{d_1} d_2^{d_2}}}{x, B(d_1/2, d_2/2),(d_1 x + d_2)^{(d_1+d_2)/2}}, \quad x>0
$$

$B$ 为 Beta 函数。实际计算用 scipy.stats.f

3.2 分位数

$F_{\alpha}(d_1,d_2)$ 为 ANOVA / F 检验临界值;注意单尾解释。


4. 数字特征

公式($d_2>2$)
$\mathbb{E}[X]$ $d_2/(d_2-2)$
$\mathrm{Var}(X)$ $\dfrac{2d_2^2(d_1+d_2-2)}{d_1(d_2-2)^2(d_2-4)}$($d_2>4$)
众数 $\dfrac{d_2(d_1-2)}{d_1(d_2+2)}$($d_1>2$)

$d_2$ 大时 $F$ 接近 1。


5. 与其他分布的关系

关系 说明
$\chi^2$ $F(d_1,d_2) = \dfrac{\chi^2_{d_1}/d_1}{\chi^2_{d_2}/d_2}$
t 分布 $t^2(\nu) = F(1, \nu)$ → 27
方差比 两独立正态样本方差比 $\sim F(n_1-1, n_2-1)$
ANOVA 组间 MS / 组内 MS $\sim F(k-1, N-k)$

6. 前提假设

作为检验统计量分布:

假设 含义 违背时
正态总体(ANOVA) 各组独立正态 非正态 → Kruskal-Wallis 等
方差齐性 各组 $\sigma^2$ 相等 Welch ANOVA
独立组/独立样本 组间、组内独立 重复测量 → 混合模型
$\chi^2$ 构成独立 $F=\frac{\chi_1^2/d_1}{\chi_2^2/d_2}$ 分子分母独立

段末注释:F 分布通常不直接对原始观测建模,而是方差比、ANOVA 等检验的参考分布。


7. 适用场景

图 3 ANOVA 与方差比

场景 示例
方差齐性检验 Levene / F 检验(两组方差)
单因素 ANOVA 多组酶活条件比较
回归整体显著性 模型 MSR/MSE
方差成分 实验设计

存量:两组数据差异显著性检验 中 F 检验条目。


8. 局限与误用

图 4 局限

误用 后果
非正态 + 小样本 ANOVA I 类错误率失真
方差不齐仍用标准 ANOVA 用 Welch ANOVA
多重比较不校正 仅 F 显著不够,需 post-hoc
双尾/单尾混淆 F 检验通常单尾(右尾)

9. 参数估计与推断

F 分布作为检验统计量分布,而非直接对观测值建模。

单因素 ANOVA

$$
F = \frac{\mathrm{MS}{\mathrm{between}}}{\mathrm{MS}{\mathrm{within}}} \sim F(k-1,, N-k)
$$

两组方差比

$$
F = \frac{s_1^2}{s_2^2} \sim F(n_1-1, n_2-1)
$$


10. 示例与代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import numpy as np
from scipy import stats
import matplotlib.pyplot as plt

# 三组酶活 ANOVA
g1 = [1.0, 1.1, 0.95, 1.05, 1.02]
g2 = [1.2, 1.3, 1.15, 1.25, 1.18]
g3 = [0.9, 0.85, 0.92, 0.88, 0.91]
F, p = stats.f_oneway(g1, g2, g3)
print(f"one-way ANOVA: F={F:.3f}, p={p:.4f}")

# 两组方差比 F 检验
s1 = np.var(g1, ddof=1)
s2 = np.var(g2, ddof=1)
F_var = s1 / s2
p_var = 2 * min(stats.f.cdf(F_var, len(g1)-1, len(g2)-1),
1 - stats.f.cdf(F_var, len(g1)-1, len(g2)-1))
print(f"variance ratio F={F_var:.3f}, two-tailed p≈{p_var:.4f}")

x = np.linspace(0.01, 5, 300)
for d1, d2 in [(5, 10), (10, 10), (30, 30)]:
plt.plot(x, stats.f.pdf(x, d1, d2), label=f'F({d1},{d2})')
plt.legend(); plt.savefig('f_pdf.png', dpi=150)

11. 小结

  • $F(d_1,d_2)$:$\chi^2$ 之比;ANOVA 与方差齐性的标准参考。
  • 26 $\chi^2$27 t 一体掌握。

系列导航26 卡方 | 01 总论

-------------本文结束感谢您的阅读-------------