泊松分布常用于工程与科学领域,描述“连续时间/空间维度上随机事件发生次数”的场景(如医院一个晚上的急救电话数量,模拟公交车在某站点上车的乘客数量等)。此时,随机变量(事件次数)是离散的,而参考空间(时间/空间)是连续的。 研究"某段时间内发生几次"的问题通常用泊松分布建模。
▲图1
若随机变量 ,则其概率质量函数为:
其中参数 是泊松率(rate),表示单位时间/空间内事件发生的平均次数。
图2 展示了不同 下的PMF和CDF曲线。 python代码见文末。
▲图2
关键特性:期望 = 方差(这是泊松分布区别于其他分布的核心特征)。
上述公式的推导过程:
注:利用了指数函数的级数展开
利用公式
设在某时段进人某景区游览的游客人数服从参数
游客是否乘坐观光缆车,符合二项分布的特征。这是泊松分布与二项分布的复合形式。
设进入景区的游客总人数为随机变量
设乘坐观光缆车的人数为随机变量
▲图3
如图3所示,设一个全集
根据全概率公式,
将上述两个分布代入,展开得:
先展开组合数
令
代入后化简:
综上,进入该景区的游客乘坐观光缆车人数
进入该景区的游客乘坐观光缆车的平均人数即为随机变量
附:python画泊松分布的PMF和CDF
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import poisson
# 设置λ的取值和k的范围
colors_list = ['red', 'blue', 'green']
lambdas = [2, 4, 10]
k = np.arange(0, 21)
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False
fig, (ax1,ax2) = plt.subplots(1, 2, figsize=(14, 5) )
for i in range(3):
px = poisson.pmf(k, lambdas[i])
ax1.scatter(k, px, s = 80, color = colors_list[i],
marker='o', alpha=0.99, label = f'λ={lambdas[i]}')
for j in range(21):
ax1.vlines(j, 0, px[j], color = colors_list[i], alpha=0.3)
ax1.set(xlabel ='k')
ax1.set(ylabel = 'P(X=k)')
ax1.set(title = '不同参数泊松分布的PMF')
ax1.legend()
ax1.set_xticks(range(21))
ax1.grid(True, linestyle='--', alpha=0.35)
ax1.set_ylim(-0.005, 0.3)
for i in range(3):
Fx = poisson.cdf(k, lambdas[i])
ax2.scatter(k, Fx, color = colors_list[i], marker='o',
label = f'λ={lambdas[i]}')
for j in range(21):
ax2.hlines( Fx[j], j, j+1, color = colors_list[i], alpha=0.6)
ax2.set(xlabel ='k')
ax2.set(ylabel = 'P(X≤k)')
ax2.set(title = '不同参数泊松分布的CDF')
ax2.legend()
ax2.set_xticks(range(21))
ax2.grid(True, linestyle='--', alpha=0.7)
ax2.set_ylim(-0.02, 1.02)
# 调整布局并显示
plt.tight_layout()
plt.show()
fig.savefig("x.png", dpi=300)