二项分布与负二项分布卡片


二项分布容易理解,负二项分布的描述不同模型稍有区别,记录一下。

二项分布

离散分布的一种,固定次数的独立试验时使用,每一次试验结果分为成功和失败两类,关心的是成功或失败的次数。

二项分布概率密度为:

P ( X = k ) = C n k p k q n − k \large\displaystyle P(X=k)=C_n^k p^kq^{n-k} P(X=k)=Cnkpkqnk

其中:

  • p为单次试验成功的概率,q为失败的概率;
  • n为试验次数;
  • k表示成功k次,
    C n k = n ! k ! ( n − k ) ! \displaystyle C_n^k=\frac{n!}{k!(n-k)!} Cnk=k!(nk)!n!

性质

期望 E ( x ) = n p \displaystyle E(x)=np E(x)=np

方差 V a r ( x ) = n p q \displaystyle Var(x)=npq Var(x)=npq

负二项分布

负二项分布有不同的描述,核心是放回抽取或者掷色子试验中,固定 成功(失败)的次数,描述 抽取/投掷 失败 (成功) 的次数概率分布。

scipy.stats描述的模型:
nbinom takes n and p as shape parameters where n is the number of successes, p is the probability of a single success, and (1-p) is the probability of a single failure.

负二项分布将n和p作为形状参数,其中n是成功的次数,p 是单个成功的概率,1-p 是单个失败的概率。

scipy中:
抽取试验,单次成功的概率为 p p p,直到抽取 n n n次成功结束,这种情况下,失败次数 k k k符合负二项分布,其概率密度为:

P ( X = k ) = C n + k − 1 n − 1 p n ( 1 − p ) k \displaystyle P(X=k)=C_{n+k-1}^{n-1}p^n(1-p)^k P(X=k)=Cn+k1n1pn(1p)k

陈希孺老师教材中:
抽取试验,单次成功的概率为 p p p,抽取试验直到抽取 k k k次失败结束,这种情况下,成功次数 n n n符合负二项分布,

P ( X = n ) = C n + k − 1 k − 1 p n ( 1 − p ) k \displaystyle P(X=n)=C_{n+k-1}^{k-1}p^n(1-p)^k P(X=n)=Cn+k1k1pn(1p)k

性质

以scipy.stats模型为例,
期望 E ( X ) = n p − n = n ( 1 − p ) p \displaystyle E(X) =\frac{n}{p}-n = \frac{n(1-p)}{p} E(X)=pnn=pn(1p)
方差 V a r ( X ) = n ( 1 − p ) p 2 \displaystyle Var(X)=\frac{n(1-p)}{p^2} Var(X)=p2n(1p)

示例

掷色子,掷出1点为胜利:

  • 构造投掷18次筛子,投出1点的次数符合二项分布;
  • 现在考虑掷出3次胜利,问需要掷出多少次色子,比如结果是掷出了 k+3次色子,则k的分布符合 负二项分布

scipy 实现及可视化

import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

fig, axs = plt.subplots(1,2,figsize=(10,4),dpi=100) 
fig.subplots_adjust(wspace=0.3)
# 单次试验成功率
p = 1./6
# 二项分布考虑掷色子18次,成功次数符合二项分布
N = 18
# 负二项分布考虑掷出成功n次,失败次数符合二项分布
n = 3
# 二项分布B(N,p)
P_B= stats.binom(N,p)
## 成功次数0~18的概率分布
x=np.arange(N)
PF_B = P_B.pmf(x)

# 负二项分布NB(n,p)
P_NB = stats.nbinom(n,p)
# 成功3次,失败次数 k 的概率分布
k=np.arange(N)
PF_NB = P_NB.pmf(k)

axs[0].stem(x, PF_B, 'bo', label='固定总次数,成功次数: 二项分布')  
axs[0].set_xticks(range(0,20,1)); 
axs[0].legend(loc='upper left')  
axs[0].set_ylim(0,0.3)

ax2=axs[0].twinx() 
ax2.plot(x,P_B.cdf(x),'r',label='累积概率')
ax2.legend(loc='center right')
ax2.grid()
ax2.set_ylim(0,1.2)

axs[1].stem(k, PF_NB, 'bo', label='固定成功次数,失败次数: 负二项分布')   
axs[1].set_ylim(0,0.06)
axs[1].set_xticks(range(0,20,1)); 
axs[1].legend(loc='upper left')
ax2=axs[1].twinx() 
ax2.plot(x,P_NB.cdf(x),'r',label='累积概率')
ax2.legend(loc=[0.02,0.8])
ax2.grid()

在这里插入图片描述

期望与方差

期望

print(f'二项分布的期望: {stats.binom(18,1./6).expect():.1f}, \n
		负二项分布的期望{stats.nbinom(3,1./6).expect():.1f}')

输出为

二项分布的期望: 3.0,
负二项分布的期望15.0

验算:
二项分布 binom(18,1./6) 的期望 E ( X ) = n p = 18 ∗ 1 / 6 = 3 \displaystyle E(X) =np=18*1/6=3 E(X)=np=181/6=3
负二项分布**nbinom(3,1./6)**的期望 E ( X ) = n p − n = 3 ∗ 6 − 3 = 15 \displaystyle E(X) =\frac{n}{p}-n = 3*6-3=15 E(X)=pnn=363=15
方差

print(f'二项分布的方差: {stats.binom(18,1./6).var():.1f}, \n负二项分布的方差{stats.nbinom(3,1./6).var():.1f}')

二项分布**binom(18,1./6)的方差: 2.5,
负二项分布
nbinom(3,1./6)**的方差90.0

验算
二项分布 binom(18,1./6) 的方差 E ( X ) = n p q = 18 ∗ 1 / 6 ∗ 5 / 6 = 2.5 \displaystyle E(X) =npq=18*1/6*5/6=2.5 E(X)=npq=181/65/6=2.5
负二项分布**nbinom(3,1./6)**的方差 E ( X ) = n ( 1 − p ) p 2 = 3 ∗ 5 / 6 ∗ 6 ∗ 6 = 90 \displaystyle E(X) =\frac{n(1-p)}{p^2}=3*5/6*6*6=90 E(X)=p2n(1p)=35/666=90

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值