文章目录
- 正态分布
- 卡方分布
- 卡方分布的极限
正态分布
正态分布,最早由棣莫弗在二项分布的渐近公式中得到,而真正奠定其地位的,应是高斯对测量误差的研究,故而又称Gauss分布。。测量是人类定量认识自然界的基础,测量误差的普遍性,使得正态分布拥有广泛的应用场景,或许正因如此,正太分布在分布族谱图中居于核心的位置。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mlvio9Ie-1684141311474)(python/dist_family.jpg)]
正态分布 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]
当 μ = 0 \mu=0 μ=0而 σ = 1 \sigma=1 σ=1时,为标准正态分布 N ( 0 , 1 ) N(0,1) N(0,1),对应概率分布函数为 Φ ( x ) = 1 2 π exp [ − x 2 2 ] \Phi(x)=\frac{1}{\sqrt{2\pi}}\exp[-\frac{x^2}{2}] Φ(x)=2π1exp[−2x2]。
卡方分布
若 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
下面就通过构造 k k k个按照正态分布的随机变量,然后将其平方和绘制出来。
import numpy as np
from scipy.stats import norm, chi2
import matplotlib.pyplot as plt
k = 200
xs = [np.sum(norm.rvs(size=200)**2) for _ in range(10000)]
plt.hist(xs, density=True, bins=100, alpha=0.8)
rv = chi2(k)
st, ed = rv.interval(0.995)
xs = np.linspace(st, ed, 200)
plt.plot(xs, rv.pdf(xs))
plt.show()
效果为
卡方分布的极限
卡方分布的PDF受到 k k k的调节,随着 k k k值不断增大,卡方分布越来越接近正态分布。而且卡方分布常用的统计特征也与 k k k密切相关,其期望为 k k k,方差为 2 k 2k 2k,中位数在 k − 3 2 k-\frac 3 2 k−23附近。
下面分别更改 k k k值,来生成一组卡方分布的随机数,并与期望为 k k k、标准差为 k 2 \sqrt{\frac k2} 2k的正态分布曲线作比较。
fig = plt.figure()
for i,k in enumerate([1,10,100,1000]):
ax = fig.add_subplot(2,2,i+1)
chis = chi2(k).rvs(size=10000) # 卡方分布
ax.hist(chis, density=True, bins=100, alpha=0.8)
rv = norm(k, np.sqrt(2*k))
st, ed = rv.interval(0.995)
xs = np.linspace(st, ed, 200)
ax.plot(xs, rv.pdf(xs))
ax.set_title(f"k={k}")
plt.show()
结果如下,可见随着 k k k的逐渐变大,卡方分布越来越趋近于正态分布。