python统计分析——泊松分布

参考资料:用python动手学统计学

1、泊松分布

        泊松分布是“1个、2个”或“1次、2次”这样的计数性数据所服从的离散型概率分布。计数型数据全是自然数,与正态分布的实数数据不同。

        泊松分布的参数只有1个,即强度λ。服从泊松分布的随机变量的期望值和方差都是λ。

2、泊松分布的应用

        泊松分布可以用于研究不同钓具对钓到的鱼的数量的影响、区域周围环境对区域内生物数量的影响,以及不同天气对销量的影响等问题。

3、泊松分布与二项分布的关系

        泊松分布可以由二项分布推导得出。当成功概率趋近于0,试验次数趋向于无穷大的二项分布就是泊松分布。

        以钓鱼为例,湖中有非常多的鱼,所有的鱼都有可能被钓到,但这个概率很小,在这种条件下钓到的鱼的条数就服从泊松分布。即非常多的对象(N  ->  ∞)中发生稀有事件(p  ->  0)的件数就服从泊松分布。

        注意不是任何离散型数据都可以使用泊松分布,只有通过上述条件能够得到数据,才可以应用泊松分布,这样才可以在很大程度上避免错误使用统计方法。

4、泊松分布的python实现

4.1 导入库

# 导入库
# 用于数值计算的库
import numpy as np
import pandas as pd
import scipy as sp
from scipy import stats
# 用于作图的库
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()

4.2 概率质量函数

# 计算强度λ为5的泊松分布中样本值为2概率
stats.poisson.pmf(k=2,mu=5)

4.3 生成泊松分布随机数

# 设置随机种子,用于复现结果
np.random.seed(1)
# 从强度为2的泊松分布中生成5个随机数
stats.poisson.rvs(mu=2,size=5)

4.4 绘制泊松分布图形

# λ=2的泊松分布
poisson=sp.stats.poisson(mu=2)
# 设置随机种子
np.random.seed(1)
# 从λ=2的泊松分布中抽样10000次
rvs_poisson=poisson.rvs(size=10000)
# 概率质量函数
m=np.arange(0,10,1)
pmf_poisson=poisson.pmf(k=m)
# 绘制样本直方图与概率质量函数的图形
sns.histplot(rvs_poisson,bins=m,stat='density')
plt.plot(m,pmf_poisson)

4.5 作图确认泊松分布与二项分布的关系

        对比试验次数为1亿次,成功概率为0.00000002的二项分布与强度为2的泊松分布的概率质量函数的图形。

# N非常大,但p非常小的二项份额不
N=100000000
p=0.00000002
binomial_2=sp.stats.binom(n=N,p=p)
# 二项分布概率质量函数
m=np.arange(0,10,1)
pmf_binomial_2=binomial_2.pmf(k=m)
# 绘制二项分布概率质量曲线
plt.plot(m,pmf_binomial_2,linestyle=":",color='blue')
# 绘制泊松分布概率质量曲线
plt.plot(m,sp.stats.poisson.pmf(mu=2,k=m),color='red')

由上图可见,二个分布基本完全重合。

  • 17
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值