超幾何分布について
超幾何分布という確率分布がある。
これは、二項分布の非復元抽出版のことである。トランプを山から何枚か引く場面を思い浮かべてもらうと分かりやすいかもしれないが、1枚引くたびにカードを元の山に戻すのが復元抽出で、カードを戻さないのが非復元抽出である。例えば、ハートの絵柄を引く確率は、カードを引くたびに山に戻す復元抽出だと常に0.25だが、非復元抽出だと最初に引いたカードがハートかどうかによって、次に引くカードがハートである確率が変わる。1枚目、2枚目がハートか否かによって3枚目がハートである確率も変わってくる。
で、この超幾何分布というのは、N個の中にm個のあたりが含まれている際に、k回抽出を行うとあたりの個数xが何個になるかについての確率分布のことである。
そのままトランプを例に話を進め、例えば5枚のカードを山から引いた際に、そのうち3枚がハートである確率を考えてみる。(ジョーカーのことは考えない)
Rで超幾何分布の確率を求める関数はdhyper()である、引数に指定するのは「確率変数x」、「当たりの総数m」、「はずれの総数n」、「抽出回数k」である。
m <- 13 #ハート(あたり)の枚数 N <- 52 #トランプの総数 n <- N-m #ハート以外(はずれ)の枚数 k <- 5 #カードを引く枚数 dhyper(3,m,n,k) [1] 0.08154262
ということで8%ぐらいの確率で5枚中3枚がハートであることがわかる。この確率分布についてプロットしたものが次のグラフである。
plot(0:5, dhyper(0:5,m,n,k),type="h") #x軸からの垂線はtype=h
ハートの枚数は1枚になる確率が最も高いことが分かる。ちなみに、0から5までの確率を足すと当然のことながらその値は1になる(確率であるための定義ですので)。また、ハートの枚数が6枚になる確率を計算すると、5枚しか引いていないないわけなので当然のことながら確率はゼロになる。
kika <- dhyper(0:5,m,n,k) sum(kika) [1] 1 dhyper(6,m,n,k) [1] 0