概率基础——泊松分布
概率基础——泊松分布
泊松分布是统计学中一种重要的概率分布模型,主要用于描述单位时间或空间内稀有事件的发生次数。本文将从泊松分布的理论基础出发,通过数学公式推导和实际案例分析,帮助读者全面理解这一重要概念。
一、泊松分布的定义与公式
在统计学中,泊松分布是一种用来描述单位时间(或空间)内事件发生次数的概率分布。它常被用来模拟稀有事件在固定时间或空间内的发生情况。泊松分布的概率质量函数(PMF)为:
$$
P(X = k) = \frac{e^{-\lambda} \lambda^k}{k!}
$$
其中,$k$表示事件发生的次数,$\lambda$是单位时间(或空间)内事件发生的平均次数。
二、泊松分布的理论背景
泊松分布的出现是基于二项分布的一种极限情况。具体来说,当二项分布的试验次数$n$很大,每次试验成功的概率$p$很小,但是试验次数$n$乘以成功概率$p$的期望值$np$保持适中时,二项分布可以近似为泊松分布。这种情况下,泊松分布的参数$\lambda$即为$np$。
三、泊松分布的应用案例
一个典型的例子是飞机事故的发生情况。假设我们将一天内所有飞机起飞和降落的次数视为一系列独立同分布的伯努利试验,每次试验成功的概率$p$即是一架飞机出现事故的概率,而试验次数$n$则是一天内飞机起飞和降落的总次数。在这种情况下,如果$n$很大而$p$很小,使得$np$保持适中,那么飞机事故的总数就可以用泊松分布来近似描述。
下面通过Python代码来绘制不同参数$\lambda$下的泊松分布概率质量函数:
import matplotlib.pyplot as plt
from scipy.stats import poisson
# 参数设置
lambd = 5 # 平均发生次数
# x范围为0到20,即事件发生的次数范围
x = range(0, 21)
params = [10, 5]
fig, ax = plt.subplots(2, 1, figsize=(10, 6))
for i in range(len(params)):
poisson_rv = poisson(mu=params[i])
mean, var, skew, kurt = poisson_rv.stats(moments='mvsk')
ax[i].plot(x, poisson_rv.pmf(x), 'ro', lw=5, alpha=0.6, ms=8)
ax[i].vlines(x, 0, poisson_rv.pmf(x), colors='r', lw=5)
ax[i].set_title(r'$\lambda$ = %d' % params[i])
ax[i].set_xticks(x)
ax[i].grid(ls='--')
# 打印信息
print('$\lambda$={}, E[X]={},V[X]={}'.format(params[i], mean, var))
plt.show()
对$\lambda = 5$的泊松分布进行采样:
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import poisson
# 参数设置
lambda_ = 5 # 平均发生次数
data = poisson.rvs(lambda_, size=100000)
plt.figure()
plt.hist(data, density=True, alpha=0.7, edgecolor='b')
plt.gca().set_xticks(range(0, 15))
# 打印信息
print('E[X]={:.2f}, V[X]={:.2f}'.format(np.mean(data), np.var(data)))
plt.grid(ls='--')
plt.show()
通过10万次采样试验得出统计结论,根据结果计算均值和方差,与模型的理论推导值一致。
四、总结
泊松分布具有广泛的应用场景,特别是在各种计数过程中,如电话呼入量、网站访问量、交通事故发生数等。对于飞机事故这类稀有事件,泊松分布的使用能够为我们提供有效的建模方法,从而更好地理解和预测事件的发生情况。