blue271828's misc :-)

負の二項分布

負の二項分布

負の二項分布 (英:nagative binomial distribution) とは、互いに独立で同一なベルヌーイ試行を複数回行い、初めて $r$ 回成功するまでの失敗回数の確率変数 $X$ が従う離散確率分布のこと。

\[ X\sim\mathrm{NB}(r,p) \]

確率質量関数

\[ f_X(k; r,p) = \binom {k+r-1} k p^r(1-p)^k \quad (k\in\N_{\ge 0}) \]

確率質量関数の導出:

$k+r$ 回目の試行にて、初めて成功回数が $r$ 回目となることから、$k+r-1$ 回目の時点で成功回数は $r-1$ 、失敗回数は $k$ である。よって確率質量関数は、

\[ \begin{aligned} f_X(k;r,p) &= \binom {k+r-1} {r-1}p^{r-1}(1-p)^k p \cr &= \binom {k+r-1} k p^r(1-p)^k \cr \cr \therefore f_X(k;r,p) &= \binom {k+r-1} k p^r(1-p)^k \cr \end{aligned} \]

確率質量関数のグラフ:

pmf

Python 3

from scipy.stats import nbinom
import matplotlib.pyplot as plt

cases = [
    (1, .5), # r, p
    (2, .5),
    (4, .5),
]

plt.figure()
for r,p in cases:
    x = range(10)
    dist = nbinom.pmf(x,r,p)
    plt.plot(x, dist, label="r={}, p={}".format(r,p))

plt.title("PMF of negative binomial distribution")
plt.xlabel("Number of failures".format(n))
plt.ylabel("Probability".format(n))
plt.legend()
plt.show()

累積分布関数

\[ F_X(x; r,p) = \sum_{k=0}^x\binom {k+r-1} {k}p^r(1-p)^k \]

累積分布関数のグラフ:

cdf

Python 3

from scipy.stats import nbinom
import matplotlib.pyplot as plt

cases = [
    (1, .5), # r, p
    (2, .5),
    (4, .5),
]

plt.figure()
for r,p in cases:
    x = range(10)
    dist = nbinom.cdf(x,r,p)
    plt.plot(x, dist, label="r={}, p={}".format(r,p))

plt.title("CDF of negative binomial distribution")
plt.xlabel("Number of failures".format(n))
plt.ylabel("Probability".format(n))
plt.legend()
plt.show()

関連記事

参考文献

Tags

#Ansible (3) #Bash (1) #Docker (1) #Git (2) #Hugo (2) #Molecule (1) #Python (1) #WSLtty (1) #アルゴリズム (4) #ビジネス用語 (1) #プログラミング (1) #位相空間論 (8) #初等数学 (20) #初等関数 (1) #実解析 (1) #幾何学 (3) #微分積分学 (18) #情報理論 (4) #抽象代数学 (14) #数理モデル (2) #数理論理学 (21) #機械学習 (3) #正規表現 (1) #測度論 (3) #特殊関数 (4) #確率論 (18) #組合せ論 (5) #統計学 (12) #線型代数学 (18) #複素解析学 (4) #解析学 (15) #論理学 (6) #順序集合論 (9)