当处理统计学和概率论问题时,我们经常会遇到二项分布和泊松分布这两种离散概率分布。在本文中,我们将使用Python来实现并可视化这两种分布的概率分布图表。
首先,让我们导入所需的库:numpy用于数学计算,matplotlib.pyplot用于绘图,以及scipy.stats中的binom和poisson用于生成二项分布和泊松分布的数据。
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import binom, poisson
接下来,我们定义了二项分布和泊松分布的参数。在这个例子中,我们选择了试验次数n为20,成功的概率p为0.5,并且选择了泊松分布的平均发生次数lambda为5
# 二项分布参数
n = 20 # 试验次数
p = 0.5 # 成功的概率
# 泊松分布参数
lambda_ = 5 # 平均发生次数
接下来,我们通过调用binom.rvs()和poisson.rvs()函数生成了1000个样本数据,分别代表二项分布和泊松分布。
# 生成二项分布数据
binom_data = binom.rvs(n, p, size=1000)
# 生成泊松分布数据
poisson_data = poisson.rvs(lambda_, size=1000)
最后,我们使用plt.hist()函数绘制了二项分布和泊松分布的直方图。
# 绘制二项分布直方图
plt.figure()
plt.hist(binom_data, bins=range(n+2), density=True, alpha=0.5, label='Binomial Distribution')
# 绘制泊松分布直方图
plt.hist(poisson_data, bins=range(15), density=True, alpha=0.5, label='Poisson Distribution')
plt.xlabel('Number of Successes')
plt.ylabel('Probability')
plt.title('Binomial and Poisson Distributions')
plt.legend()
plt.show()
通过以上步骤,实现了二项分布和泊松分布的概率分布图表。自己应用中可以根据具体需求对参数和绘图进行调整。