超幾何分布 hypergeometric distribution

#母集団の中の標識された魚の総数
M <- 200
#母集団の総数
N <- 1000
#標識されていない魚の総数
m <- N - M
#サンプル数
n <- 5

#サンプルのうち標識がついている魚が0匹の確率を計算
dhyper(0, M, m, n)
[1] 0.3268591
#サンプルのうち標識がついている魚が1匹の確率を計算
dhyper(1, M, m, n)
[1] 0.410627
#サンプルのうち標識がついている魚が2匹の確率を計算
dhyper(2, M, m, n)
[1] 0.2050559
#サンプルのうち標識がついている魚が3匹の確率を計算
dhyper(3, M, m, n)
[1] 0.05087852
#サンプルのうち標識がついている魚が4匹の確率を計算
dhyper(4, M, m, n)
[1] 0.006272259
#サンプルのうち標識がついている魚が5匹の確率を計算
dhyper(5, M, m, n)
[1] 0.0003073407


#サンプル中に標識された魚の数を変化させた時の確率を棒グラフで表す。
#結果を核のするための空のオブジェクト
result <- c()
for(i in 1: 6){
+ result[i] <- dhyper(i - 1, M, m, n)
+ }

result
[1] 0.3268590548 0.4106269533 0.2050558688 0.0508785238 0.0062722586
[6] 0.0003073407

X <- 0:5
#resultの各要素に番号を割り当てる
names(result) <- X
result
           0            1            2            3            4            5
0.3268590548 0.4106269533 0.2050558688 0.0508785238 0.0062722586 0.0003073407

#棒グラフを描写
png("121223_hypergeo.png")
barplot(result, ylab="probability", xlab="amount of tagged fish", main="Example of hypergeometric distribution")
abline(h=0)
dev.off()



#####数式のソースファイル#####
% hypergeo.tex
\documentclass[a4j]{jarticle}
\usepackage{amsmath}

\begin{document}
2種類A, Bからなる$N$個のものがあり、個数の構成はそれぞれ$M$, $N - M$とする。
この集団から無作為に$n$個取り出したときに、Aが$x$個、Bが$n-x$個であるとす
る。
この確率は以下のようになる。
\begin{eqnarray}
f(x) = {}_M C _x \cdot {}_{N-M} C _{n-x} / {}_N C _n  
\end{eqnarray}
このように正の離散値$x$が従う$f(x)$で表される分布を超幾何分布 hypergeometric distributionという。
以下の二式で期待値と分散は表される。
\begin{eqnarray}
E(X) = n(M/N) \\
V(X) = n{M(N - M) / N^2}{(N - n)/(N - 1)}
\end{eqnarray}
冒頭のAの比率を$p = M/N$とすると、
\begin{eqnarray}
E(X) = np \\
V(X) = np(1 - p){(N - n)/(N - 1)}
\end{eqnarray}
ここで参考文献の110ppで取り扱われている超幾何分布の例についてRで計算を行う。\\ \\
<例>捕獲再獲得法 ある湖の中にいる魚1000匹(N = 10000)のうち、200匹(A; $M = 200$には尾部に赤い色の標識を人為的に付けて放流されてある。いま、池から
魚を5匹($n=5$)穫ったとき、そのうち標識がついた魚が一匹である確率はどれくらいであるか。0匹の場合はどうであろうか。\\
\\
\\
【参考文献】 \\
東京大学教養部統計学教室(1991) 『統計学入門』 東京大学出版 109 - 111pp.


\pagestyle{empty}
\end{document}