标准/正态分布(python实现)
正态分布(Normal Distribution)又称为高斯分布(Gaussian Distribution),是概率论和统计学中最为重要的概率分布之一。正态分布的概率密度函数具有钟形曲线的形状,呈现对称性。
正态分布
正态分布由两个参数完全确定:
- μ \muμ(均值):决定曲线的中心位置
- σ \sigmaσ(标准差):决定曲线的宽度或分布的离散程度
具体而言,如果一个随机变量 X XX 服从正态分布 N ( μ , σ 2 ) N(\mu,\sigma ^2)N(μ,σ2),则其概率密度函数为:
f ( x ) = 1 σ 2 π exp ( − ( x − μ ) 2 2 σ 2 ) f(x)=\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)f(x)=σ2π1exp(−2σ2(x−μ)2)
其中,e x p expexp 表示自然对数的指数函数,π \piπ 表示圆周率。
import numpy as np import matplotlib.pyplot as plt from scipy.stats import norm mu = 50 # 均值 sigma = 10 # 标准差 # 生成正态分布随机数 samples_normal = np.random.normal(mu, sigma, 10000) # 绘制正态分布的概率密度函数图形 x_normal = np.linspace(0, 100, 500) # x轴范围 y_normal = norm.pdf(x_normal, mu, sigma) # 计算概率密度函数值 # 绘制直方图: 箱子数 概率密度 透明度 plt.hist(samples_normal, bins=50, density=True, alpha=0.5, label='Generated Samples') plt.plot(x_normal, y_normal, color='red', label='PDF') plt.xlabel('x') plt.ylabel('Probability Density') plt.title('Normal Distribution') plt.legend() plt.show()
标准正态分布
标准正态分布(Standard Normal Distribution)是正态分布的一种特殊形式,具有均值为 0、标准差为 1 的特性。其概率密度函数记作 φ ( z ) \varphi(z)φ(z),其中 z zz 表示标准正态随机变量。且该曲线在均值 0 处取得峰值,并对称于均值。
正态分布与标准正态分布之间存在着一种转换关系;标准化是指将原始的正态分布随机变量 X XX 通过下式转换为标准正态分布随机变量 Z ZZ:
Z = X − μ σ Z = \frac {X - \mu} {\sigma}Z=σX−μ
其中,Z ZZ 表示标准化后的随机变量,X XX 表示原始的正态分布随机变量,μ \muμ 和 σ \sigmaσ 分别表示原始正态分布的均值和标准差。
标准正态分布在统计推断和假设检验中具有重要的应用,因为许多统计方法都基于标准正态分布的性质进行计算和推导。常见的统计推断方法,如 Z ZZ 检验和 t tt 检验,都依赖于标准正态分布。
import numpy as np import matplotlib.pyplot as plt from scipy.stats import norm # 标准正态分布 samples_standard_normal = np.random.standard_normal(10000) # 绘制标准正态分布的概率密度函数图形 x_standard_normal = np.linspace(-10, 10, 500) # x轴范围 y_standard_normal = norm.pdf(x_standard_normal, 0, 1) # 计算概率密度函数值 plt.hist(samples_standard_normal, bins=50, density=True, alpha=0.5, label='Generated Samples') plt.plot(x_standard_normal, y_standard_normal, color='red', label='PDF') plt.xlabel('x') plt.ylabel('Probability Density') plt.title('Normal Distribution') plt.legend() plt.show()