正态分布,最早由棣莫弗在二项分布的渐近公式中得到,而真正奠定其地位的,应是高斯对测量误差的研究,故而又称Gauss分布。。测量是人类定量认识自然界的基础,测量误差的普遍性,使得正态分布拥有广泛的应用场景,或许正因如此,正太分布在分布族谱图中居于核心的位置。
正态分布 N ( μ , σ ) N(\mu, \sigma) N(μ,σ)受到期望 μ \mu μ和方差 σ 2 \sigma^2 σ2的调控,其概率密度函数为
1 2 π σ 2 exp [ − ( x − μ ) 2 2 σ 2 ] \frac{1}{\sqrt{2\pi\sigma^2}}\exp[-\frac{(x-\mu)^2}{2\sigma^2}] 2πσ21exp[−2σ2(x−μ)2]
若 k k k个互相独立的随机变量 ξ 1 , ξ 2 , ⋯ , ξ k \xi_1, \xi_2,\cdots,\xi_k ξ1,ξ2,⋯,ξk,均服从标准正态分布,则这k个随机变量的平方和构成一个新变量,新变量服从 χ 2 \chi^2 χ2分布。其概率密度函数为
ρ ( x ) = ( 1 / 2 ) k / 2 Γ ( k / 2 ) x k / 2 − 1 e − x / 2 \rho(x)=\frac{(1/2)^{k/2}}{\Gamma(k/2)}x^{k/2-1}e^{-x/2} ρ(x)=Γ(k/2)(1/2)k/2xk/2−1e−x/2
关于正态分布与卡方分布详细关系,可参考这篇:正态分布和卡方分布的关系
两个服从 χ 2 \chi^2 χ2分布的独立随机变量在归一化后相除,就得到了 F F F分布。
设总体 X ∼ N ( 0 , 1 ) X\sim N(0,1) X∼N(0,1), ( X 1 , X 2 , ⋯ , X n 1 ) (X_1, X_2,\cdots, X_{n_1}) (X1,X2,⋯,Xn1)和 ( Y 1 , Y 2 , ⋯ , Y n 2 ) (Y_1, Y_2,\cdots, Y_{n_2}) (Y1,Y2,⋯,Yn2)来自X的两个独自的样本,则统计量 ∑ X i 2 \sum X_i^2 ∑Xi2和 ∑ Y i 2 \sum Y_i^2 ∑Yi2分别服从 χ 2 ( n 1 ) \chi^2(n_1) χ2(n1)和 χ 2 ( n 2 ) \chi^2(n_2) χ2(n2)分布。则统计量 F F F定义为
F = ∑ X i 2 n 1 / ∑ Y i 2 n 2 F=\frac{\sum X_i^2}{n_1}/\frac{\sum Y_i^2}{n_2} F=n1∑Xi2/n2∑Yi2
其概率密度为
f ( x , n 1 , n 2 ) = ( n 1 n 2 ) n 1 2 B ( n 1 2 , n 2 2 ) x n 1 2 − 1 ( 1 + n 1 n 2 x ) − n 1 + n 2 2 , x > 0 f(x,n_1, n_2)=\frac{(\frac{n_1}{n_2})^\frac{n_1}{2}}{\Beta(\frac{n_1}{2},\frac{n_2}{2})}x^{\frac{n_1}{2}-1}(1+\frac{n_1}{n_2}x)^{-\frac{n_1+n_2}{2}}, x>0 f(x,n1,n2)=B(2n1,2n2)(n2n1)2n1x2n1−1(1+n2n1x)−2n1+n2,x>0
其中 B \Beta B为Beta函数。
下面构造两组服从卡方分布的随机变量,并对二者归一化后相除,
k k k个按照正态分布的随机变量,然后将其平方和绘制出来。
import numpy as np
from scipy.stats import f, chi2
import matplotlib.pyplot as plt
n1, n2 = 50, 100
xs = chi2(n1).rvs(size=10000)
ys = chi2(n2).rvs(size=10000)
# 根据xs和ys构造的F分布的样本
fs = (xs/n1)/(ys/n2)
plt.hist(fs, density=True, bins=100, alpha=0.8)
rv = f(n1, n2)
st, ed = rv.interval(0.995)
xs = np.linspace(st, ed, 200)
plt.plot(xs, rv.pdf(xs))
plt.show()
结果如下