DB/R/統計/データサイエンス/投資話についてつらつらと

世のため自分のためのアウトプット

R 統計学(statistics) 解説記事

【R言語と統計の備忘録】ポアソン分布のまとめと具体例

投稿日:

離散型の確率分布であり、二項分布の特別な場合の分布であるポアソン分布の概要や使い方についてまとめました。

二項分布はこちら:【R言語と統計の備忘録】二項分布のまとめ

~目次~

1. ポアソン分布の概要

2. ポアソン分布の確率分布

3. ポアソン分布の期待値と分散の導出

4. ポアソン分布の期待値と分散の導出(モーメント)

5. ポアソン分布のRでの扱い方

1. ポアソン分布の概要

ポアソン分布は、二項分布においてn(試行回数)が大きく、p(成功(発生)確率)が小さい場合の分布です。

ポアソン分布では、このnとpをまとめてn\pdot p=\lambdaとおき、一定の事象数や時間あたりの発生件数として使用します。

例えば、1年間の10万人あたりの交通事故の件数や、一定時間に窓口を訪れる人の数などが当てはまります。
他には、経済学者であるボルトキーヴィッチが馬に蹴られて死んだ兵士の数の規則性を発見した話が有名です。

この馬に蹴られて死んだ兵士の話を、上記のnとpに当てはめると以下になります。

n: 兵士の数
p: 1回の出撃時に、兵士が馬に蹴られて死ぬ確率
f(x): 死んだ兵士の数がx人である確率(P(X=x))

2. ポアソン分布の確率密度関数

ポアソン分布の確率密度関数は以下になります。

f(x)=e^{-\lambda}\lambda^x/x!
\lambda:試行回数n*成功(発生)確率p
x:成功(発生)確率

このように、ポアソン分布は\lambdaのみに依存する分布となっています。

例題を解いてみましょう。

ある工場では、毎月不良品が平均2つ出ている。この工場で不良品が0となる確率を求めよ

\lambda=2, x=0を代入します。

f(x)=e^{-2}\pdot (2)^0/0!=0.135
※0!=1となります。

約13.5%となりました。つまり、ほぼ毎月不良品は出るもの、と思っていた方が良いということになりますね。

参考に、様々な\lambdaでの確率分布関数を以下に示します。

3. ポアソン分布の期待値と分散の導出

ポアソン分布の期待値と分散は以下になります。

E(\bf{X})=\lambda
V(\bf{X})=\lambda

この期待値E(\bf{X})=\lambdaは、二項定理の期待値E(\bf{X})=npと同様であることは理解しやすいかと思います。
また、分散V(\bf{X})=\lambdaについても、二項定理の分散V(\bf{X})=np(1-p)において、p→0の時に同等となることが分かります。

期待値と分散からも二項分布と同等であることが分かります。

それぞれの計算方法は以下になります。

ポアソン分布の期待値の導出

次に上記の確率分布関数から期待値を求めます。

E(\bf{X})=\sum_{x=0}xf(x)・・・期待値の公式より
=\sum_{x=0}xe^{-\lambda}\lambda^x/x!
=\lambda e^{-\lambda}\sum_{x=0}\lambda^{x-1}/(x-1)!
=\lambda e^{-\lambda}\sum_{y=1}\lambda^{y}/(y)!・・・x=1+yとする

ここで、\sum_{y=1}\lambda^{y}/(y)!は、e^xの公式そのものであるため、値を代入する。

=\lambda e^{-\lambda}\pdot e^{\lambda}
=\lambda

ポアソン分布の分散の導出

以下の公式を使います。

V(\bf{X})=E(\bf{X}^2)-E(\bf{X})^2

まずは、上式の左項E(\bf{X}^2)を求めます。

E(\bf{X})=\sum_{x=0} x^2f(x)・・・期待値の公式より
=\sum_{x=0} x^2e^{-\lambda}\lambda^x/x!
=\lambda e^{-\lambda}\sum_{x=0} x\lambda^{x-1}/(x-1)!
=\lambda e^{-\lambda}\sum_{y=1}(y+1)\lambda^{y}/y!・・・x=1+yとする
=\lambda e^{-\lambda}\sum_{y=1}(y\lambda^{y}/y!+\lambda^{y}/y!)

ここで、まずは左項\lambda e^{-\lambda}\sum_{y=1} y\lambda^{y}/y!を計算します。

\lambda e^{-\lambda}\sum_{y=1} y\lambda^{y}/y!
=\lambda^2 e^{-\lambda}\sum_{y=1} \lambda^{y-1}/(y-1)!
=\lambda^2 e^{-\lambda}\sum_{z=2} \lambda^{z}/z!・・・z=1+yとする
=\lambda^2 e^{-\lambda}\pdot e^{\lambda}・・・マクローリン展開の公式より
=\lambda^2

続いて、右項\lambda e^{-\lambda}\sum_{y=1} \lambda^{y}/y!を計算します。

\lambda e^{-\lambda}\sum_{y=1} \lambda^{y}/y!
=\lambda e^{-\lambda}\pdot e^{\lambda}・・・マクローリン展開の公式より
=\lambda

以上から、以下が導出できました。

E(\bf{X}^2)=\lambda^2+\lambda

最後に、V(\bf{X})=E(\bf{X}^2)-E(\bf{X})^2に代入します。

V(\bf{X})=E(\bf{X}^2)-E(\bf{X})^2
=(\lambda^2+\lambda)-\lambda^2
=\lambda

以上となります。

4. ポアソン分布の期待値と分散の導出(モーメント)

続いて、モーメント(積率母関数)を用いて期待値と分散を導出します。

モーメント関数の定義および公式は以下になります。

M_x(t)=E(e^{tx})・・・モーメント母関数
E(\bf{X})=M_x' (0)
V(\bf{X})=M_x'' (0)-(M_x' (0))^2

ポアソン分布のモーメント母関数

まず、ポアソン分布のモーメント母関数を求めます。

M_x(t)=E(e^{tx})
・・・3章と同様に、E(\bf{X})=\sum_{x=0}xf(x)より
=\sum_{x=0}e^{tx}\pdot e^{-\lambda}\lambda^x/x!
=e^{-\lambda}\sum_{x=0}(\lambda e^t)^{x}/x!

ここで、e^a=\sum_{x=0}a^x/x!のマクローリン展開より、a=\lambda e^tとすると

=e^{-\lambda} \pdot e^{\lambda e^t}
=exp\{\lambda (e^t-1)\}

ポアソン分布のモーメント母関数の1回微分と期待値

1-p=qと置くと、モーメント母関数の1回微分は以下になります。

M_x' (t)=\lambda e^t exp\{\lambda (e^t-1)\}

以上から、期待値は以下になります。

E(\bf{X})=M_x' (0)=\lambda e^0 exp\{\lambda(e^0-1)\}=\lambda

ポアソン分布のモーメント母関数の2回微分と分散

同様に、2回微分は以下になります。

M_x' '(t)=\lambdae^t(1+\lambda e^t)exp\{\lambda(e^0-1)\}

以上から、分散は以下になります。

V(\bf{X})=M_x'' (0)-(M_x' (0))^2=\lambda

5. ポアソン分布のRでの扱い方

xを指定した時の事象の発生確率(dpois)

ポアソン分布をRで導出するにはdpois関数を使用します。
使い方は以下になります。

==================
dpois(x, \lambda)
x:成功(発生)回数
==================

ある工場では、毎月不良品が平均2つ出ている。この工場で不良品が0となる確率を求めよ

\lambda=2, x=0を代入します。

> dpois(0,2)
[1] 0.1353353

成功回数がn以上(累積分布)となる確率(ppois)

n個以上となる方法を求める場合はppois関数を使います。
パラメータの入れ方はdpois関数と同じになります。

ただし、ppois関数はn回以下となる確率なので注意しましょう。

以下の例題を解いてみます。

ある工場では、毎月不良品が平均2つ出ている。この工場で不良品が4個以上となる確率を求めよ

3個以下となる確率はppois(3,2)となるので、4個以上となる確率は以下になります。

> 1 - ppois(3,2)
[1] 0.1428765

上記はdpois関数を使用して以下でも求められます。(不良品の個数が0個, 1個, 2個, 3個の確率を全て足しています)

> 1-sum(dpois(0:3,2))
[1] 0.1428765

確率qで、成功回数がx回以下となるxの値(分位関数)を求める方法(qpois)

これはppois関数の逆関数になります。
別の言い方をすると、成功回数が0回からx回までの累積確率がqを超えない最大のxを返します。

==================
qpois(p, \lambda)
p:成功(発生)回数がx回以下となる確率
==================

以下の例題を解いてみます。

ある工場では、毎月不良品が平均2つ出ている。この工場で月々の不良品の品質目標を掲げることとなった。1年間に11ヶ月は満たせる不良品の個数は最小で幾つになるか。

つまり、不良品の個数がx個以下となる確率pが、11/12を上回る確率を求めます。
算出方法は以下になります。

> qpois(1-1/12, 2)
[1] 4

以上から、品質目標は一月の不良品4個とすれば良いことが分かります。
(ただし、あくまで確率なので、4個を超える可能性は十分にあります)

では、4個以下となる確率を念のため求めましょう。

> ppois(4,2)
[1] 0.947347

4個以下となる確率は、約95%となることから、11/12=約92%を上回ることが確認できました。

二項分布の乱数の出力(rpois)

二項分布の乱数はrbinom関数で出力できます。
使い方は以下になります。

==================
rpois(n, \lambda)
n:乱数の個数
==================

以下の例題を出してみましょう。

ある工場では、毎月不良品が平均2つ出ている。この工場での1年間の不良品の個数をシミュレーションせよ。

以下のようになります。
※結果は毎回変わります

> rpois(12,2)
[1] 1 7 0 0 0 0 4 5 2 1 3 1

この年だと、先ほどの品質目標(4個を超える月は1月以下)を満たせませんね。

Rによる二項分布の確率分布関数と累積確率分布関数のグラフの書き方

確率分布関数のグラフはdpoisを、累積分布関数のグラフはppoisを使います。

> x <- c(0:10)
> plot(x, dpois(x,2), type="l", main="poisson_graph lambda=1")

同様に、累積密度関数は以下になります。

> plot(x, ppois(x,2), type="l", main="poisson_graph lambda=2")

-R, 統計学(statistics), 解説記事

Copyright© 世のため自分のためのアウトプット , 2020 All Rights Reserved Powered by STINGER.