第8講 - いろいろな離散分布と連続分布
(Press ?
for help, n
and p
for next and previous slide)
村田 昇
区間 \([a,b]\) \((a\leq b)\) に \(X\) が含まれる確率
\begin{equation} P(a\leq X\leq b) \end{equation}
定義
\(n\) 個の確率変数 \(X_{1},X_{2},\dotsc,X_n\) が 独立 であるとは, \(a_i\leq b_i\) \((i=1,\dots,n)\) なる 任意の実数 \(a_{1},b_{1},\dots,a_n,b_n\) に対して
\begin{multline} P(a_{1}\leq X_{1}\leq b_{1},a_{2}\leq X_{2}\leq b_{2},\dots,a_n\leq X_n\leq b_n)\\ =P(a_{1}\leq X_{1}\leq b_{1})P(a_{2}\leq X_{2}\leq b_{2})\cdots P(a_n\leq X_n\leq b_n) \end{multline}が成り立つことをいう.
定義
\(n\) 個の確率変数 \(X_{1},X_{2},\dotsc,X_n\) が 同分布 であるとは, \(a\leq b\) なる任意の実数 \(a,b\) に対して
\begin{equation} P(a\leq X_{1}\leq b)=P(a\leq X_{2}\leq b)=\cdots=P(a\leq X_n\leq b) \end{equation}が成り立つことをいう.
定義
以下の右辺が定義できる(絶対収束する)とき 離散型の確率変数 \(X\) の 平均 (または 期待値 )を
\begin{equation} \mathbb{E}[X]=\sum_{x\in\mathcal{X}}xP(X=x) \end{equation}で定義する.
ただし \(\mathcal{X}\) は \(X\) の取りうる値(無限個も可)の集合
確率変数の変換 \(\varphi(X)\) の期待値
\begin{equation} \mathbb{E}[\varphi(X)]=\sum_{x\in\mathcal{X}}\varphi(x)P(X=x) \end{equation}
\(p\) 次の モーメント (あるいは 積率 )
\begin{equation} \mathbb{E}[X^p]=\sum_{x\in\mathcal{X}}x^pP(X=x) \end{equation}
定義
\begin{align} \mathrm{Var}(X) =&\mathbb{E}[(X-\mathbb{E}[X])^2]\\ =&\sum_{x\in\mathcal{X}}(x-\mathbb{E}[X])^2P(X=x) \end{align}
集合 \(\{x_{1},\dotsc,x_n\}\) 上の離散一様分布
相異なる実数 \(x_{1},\dotsc,x_n\) を壺から無作為に取り出す試行
確率質量関数
\begin{equation} f(x)=\frac{1}{n},\quad x\in\{x_{1},\dots,x_n\} \end{equation}
平均
\begin{equation} \mathbb{E}[X] =\sum_{i=1}^nx_if(x_i) =\frac{1}{n}\sum_{i=1}^nx_i=\bar{x} \end{equation}
分散
\begin{equation} \mathrm{Var}(X) =\sum_{i=1}^n(x_i-\mathbb{E}[X])^2f(x_i) =\frac{1}{n}\sum_{i=1}^n(x_i-\bar{x})^2 \end{equation}
sample()
が利用できる
復元抽出はオプション replace=TRUE
を指定
a <- 1:6 # サンプリング対象の集合をベクトルとして定義(文字列でも構わない) sample(a, size=20, replace=TRUE) # 離散一様分布(20個)
試行回数 \(n\) , 成功確率 \(p\) の二項分布
確率 \(p\) で成功する試行を \(n\) 回行った総成功回数
確率質量関数
\begin{equation} f(x)=\Bigl({n\atop x}\Bigr)p^x(1-p)^{n-x},\quad x=0,1,\dots,n \end{equation}
平均
\begin{align} \mathbb{E}[X] &=\sum_{x=0}^nxf(x)=\sum_{x=0}^nx\Bigl({n\atop x}\Bigr)p^x(1-p)^{n-x}\\ &=\sum_{x=1}^n\frac{n!}{(x-1)!(n-x)!}p^x(1-p)^{n-x}\\ % &=\sum_{x=0}^{n-1}\frac{n!}{x!(n-x-1)!}p^{x+1}(1-p)^{n-x-1}\\ &=np\sum_{x=0}^{n-1}\Bigl({n-1\atop x}\Bigr)p^{x}(1-p)^{n-1-x}\\ &=np \end{align}
2次モーメント
\begin{align} \mathbb{E}[X^2] &=\sum_{x=0}^nx^2f(x) =\sum_{x=0}^nx(x-1)\Bigl({n\atop x}\Bigr)p^x(1-p)^{n-x}+\mathbb{E}[X]\\ % &=\sum_{x=2}^n\frac{n!}{(x-2)!(n-x)!}p^x(1-p)^{n-x}+np\\ % &=\sum_{x=0}^{n-2}\frac{n!}{x!(n-x-2)!}p^{x+2}(1-p)^{n-x-2}+np\\ &=n(n-1)p^2\sum_{x=0}^{n-2}\Bigl({n-2\atop x}\Bigr)p^{x}(1-p)^{n-2-x}+np\\ &=n(n-1)p^2+np =(np)^2+np(1-p) \end{align}
分散
\begin{equation} \mathrm{Var}(X) =\mathbb{E}[X^2]-\mathbb{E}[X]^2 =np(1-p) \end{equation}
乱数の発生は関数 rbinom()
を用いる
rbinom(10, size=1, prob=0.2) # Bernoulli分布(10個) rbinom(20, size=5, prob=0.6) # 二項分布(20個)
[1] 0 0 0 0 1 1 0 1 0 1 [1] 3 3 3 3 3 2 4 2 3 3 3 1 2 3 3 3 3 4 3 5
dbinom()
で計算できる数値実験の雛形は以下のようになる
mc <- 10000 # 実験回数を指定 my_random <- function(){...} # 乱数生成のプログラム my_dist <- function(){...} # 必要であれば理論曲線を定義 #' ただし多くの場合 d"乱数名"で定義されているのでそれらを用いればよい replicate(mc, my_random()) |> # Monte-Carlo実験 as_tibble_col() |> # データフレームに変換 (列名の既定値はvalue) count(value) |> # 頻度を計算 (value 列, n 列) set_names(c("value","obs")) |> # 列名を変更 mutate(obs = obs/sum(obs), # 確率に変換 theory = my_dist(value)) |> # 理論値を追加 pivot_longer(!value, values_to = "probability") |> ggplot(aes(x = value, y = probability, fill = name)) + geom_bar(stat = "identity", width = 0.8, position = "dodge")
強度 \(\lambda\) の Poisson 分布 \(Po(\lambda)\) (\(\lambda > 0\))
少数の法則に現れた滅多に起こらない事象の起こる回数の分布
確率質量関数
\begin{equation} f(x)=\frac{\lambda^x}{x!}e^{-\lambda},\quad x=0,1,\dotsc \end{equation}
平均
\begin{align} \mathbb{E}[X] &=\sum_{x=0}^\infty xf(x)=\sum_{x=0}^\infty x\frac{\lambda^x}{x!}e^{-\lambda} =e^{-\lambda}\sum_{x=1}^\infty\frac{\lambda^x}{(x-1)!}\\ &=\lambda e^{-\lambda}\sum_{x=0}^\infty\frac{\lambda^x}{x!} =\lambda \end{align}
2次モーメント
\begin{align} \mathbb{E}[X^2] &=\sum_{x=0}^\infty x^2f(x) =\sum_{x=0}^\infty x(x-1)\frac{\lambda^x}{x!}e^{-\lambda}+\mathbb{E}[X]\\ &=e^{-\lambda}\sum_{x=2}^\infty\frac{\lambda^x}{(x-2)!}+\lambda =\lambda^2 e^{-\lambda}\sum_{x=0}^\infty\frac{\lambda^x}{x!}+\lambda\\ &=\lambda^2+\lambda \end{align}
分散
\begin{equation} \mathrm{Var}(X) =\mathbb{E}[X^2]-\mathbb{E}[X]^2=\lambda \end{equation}
乱数の発生は関数 rpois()
を用いる
rpois(15, lambda=1) # 強度1の Poisson 分布(15個) rpois(15, lambda=10) # 強度10の Poisson 分布(15個)
[1] 1 3 0 0 4 2 1 0 1 1 0 1 1 0 0 [1] 14 8 13 10 14 14 12 6 7 7 9 5 11 10 9
dpois()
で計算できる成功確率 \(p\) の幾何分布 \((0 < p\leq 1)\)
成功するまでの失敗の回数の分布
確率質量関数
\begin{equation} f(x)=p(1-p)^x,\quad x=0,1,\dots \end{equation}
平均
\begin{align} \mathbb{E}[X] &=\sum_{x=0}^\infty xf(x)=\sum_{x=0}^\infty xp(1-p)^x =p(1-p)\sum_{x=1}^\infty x(1-p)^{x-1}\\ &=-p(1-p)\frac{d}{dp}\sum_{x=1}^\infty(1-p)^x =-p(1-p)\frac{d}{dp}\frac{1-p}{p}\\ &=-p(1-p)\cdot\Bigl(-\frac{1}{p^2}\Bigr) =\frac{1-p}{p} \end{align}
2次モーメント
\begin{align} \mathbb{E}[X^2] &=\sum_{x=0}^\infty x^2f(x)=\sum_{x=0}^\infty x(x-1)p(1-p)^x+\mathbb{E}[X]\\ % &=p(1-p)^2\sum_{x=2}^\infty x(x-1)p(1-p)^{x-2}+\frac{1-p}{p}\\ % &=p(1-p)^2\frac{d^2}{dp^2}\sum_{x=2}^\infty (1-p)^{x}+\frac{1-p}{p}\\ % &=p(1-p)^2\frac{d^2}{dp^2}\frac{(1-p)^2}{p}+\frac{1-p}{p}\\ % &=p(1-p)^2\frac{2}{p^3}+\frac{1-p}{p} &=2\Bigl(\frac{1-p}{p}\Bigr)^2+\frac{1-p}{p} \end{align}
分散
\begin{equation} \mathrm{Var}(X) =\mathbb{E}[X^2]-\mathbb{E}[X]^2 =\frac{1-p}{p^2} \end{equation}
乱数の発生は関数 rgeom()
を用いる
rgeom(15, prob=0.1) # 成功確率0.1の幾何分布(15個)
[1] 1 8 7 0 18 18 1 11 3 13 3 10 5 20 14
dgeom()
で計算できる非負の値をとる実数上の関数 \(f\) の積分で表される
\begin{equation} P(a\leq X\leq b)=\int_{a}^b f(x)dx \quad(a < b) \end{equation}
連続型の確率変数 \(X\) の平均
積分 \(\int_{-\infty}^\infty xf(x)dx\) が絶対収束するとき \(X\) の 平均 (または 期待値)を
\begin{equation} \mathbb{E}[X]=\int_{-\infty}^\infty xf(x)dx \end{equation}で定義する.
確率変数の変換 \(\varphi(X)\) の期待値
\begin{equation} \mathbb{E}[\varphi(X)]=\int_{-\infty}^\infty\varphi(x)f(x)dx \end{equation}
\(p\) 次の モーメント (あるいは 積率 )
\begin{equation} \mathbb{E}[X^p]=\int_{-\infty}^\infty x^pf(x)dx \end{equation}
分散
\begin{align} \mathrm{Var}(X)=& \mathbb{E}[(X-\mathbb{E}[X])^2]=\mathbb{E}[X^2]-\mathbb{E}[X]^2\\ =&\int_{-\infty}^\infty(x-\mathbb{E}[X])^2f(x)dx \end{align}
区間 \((a,b)\) 上の一様分布 \(U(a,b)\)
区間 \((a,b)\) のランダムな値の選択を表す分布
確率密度関数
\begin{equation} f(x)= \begin{cases} \frac{1}{b-a} & (a < x < b)\\ 0 & (\text{上記以外のとき}) \end{cases} \end{equation}
平均
\begin{align} \mathbb{E}[X] &=\int_{-\infty}^\infty xf(x)dx =\frac{1}{b-a}\int_a^bxdx\\ &=\frac{b^2-a^2}{2(b-a)} =\frac{a+b}{2} \end{align}
2次モーメント
\begin{align} \mathbb{E}[X^2] &=\int_{-\infty}^\infty x^2f(x)dx =\frac{1}{b-a}\int_a^bx^2dx\\ &=\frac{b^3-a^3}{3(b-a)} =\frac{a^2+ab+b^2}{3} \end{align}
分散
\begin{align} \mathrm{Var}(X) &=\mathbb{E}[X^2]-\mathbb{E}[X]^2 % =\frac{a^2+ab+b^2}{3}-\frac{a^2+2ab+b^2}{4}\\ % &=\frac{a^2-2ab+b^2}{12} =\frac{(b-a)^2}{12} \end{align}
乱数の発生は関数 runif()
を用いる
runif(8) # 区間(0,1)上の一様乱数(8個) runif(8,min=-1,max=1) # 区間(-1,1)上の一様乱数(8個)
[1] 0.6858972 0.4448939 0.9240899 0.1254211 0.7857660 0.8307911 0.6736203 [8] 0.6808840 [1] -0.16649568 -0.30514662 0.77511927 0.15319022 0.06603126 0.62478791 [7] 0.78681901 -0.90512770
dunif()
で計算できる確率密度関数
\begin{equation} f(x)=\frac{1}{\sqrt{2\pi\sigma^2}}\exp\Bigl(-\frac{(x-\mu)^2}{2\sigma^2}\Bigr) \end{equation}
中心極限定理により
\begin{equation} \frac{\sum_{i=1}^nX_i-np}{\sqrt{np(1-p)}} =\frac{\sqrt{n}(\frac{1}{n}\sum_{i=1}^nX_i-p)}{\sqrt{p(1-p)}} =\frac{Y-np}{\sqrt{np(1-p)}} \end{equation}
の分布は標準正規分布で近似できる
乱数の発生は関数 rnorm()
を用いる
rnorm(8) # 標準正規乱数(8個) rnorm(8,mean=1,sd=2) # 平均1分散4=2^2の正規乱数
[1] 0.24847477 -0.72567324 0.58861792 -0.04374116 1.61836117 0.12205113 [7] 0.04931995 0.01901636 [1] 3.9634893 2.8658143 0.6406803 1.6842676 1.1882395 4.7266232 0.4541448 [8] 3.7178549
dnorm()
で計算できる数値実験の雛形は以下のようになる
mc <- 10000 # 実験回数を指定 my_random <- function(){...} # 乱数生成のプログラム my_dist <- function(){...} # 必要であれば理論曲線を定義 #' ただし多くの場合 d"乱数名"で定義されているのでそれらを用いればよい replicate(mc, my_random()) |> # Monte-Carlo実験 as_tibble_col("x") |> # 列名を x に指定 ggplot(aes(x = x)) + # x軸に x 列を指定 geom_histogram(aes(y = after_stat(density))) + # y軸を密度での表示 geom_function(fun = my_dist) # 理論曲線(確率密度)
\(U_{1},U_{2}\) を \((0,1)\) 上の 一様分布に従う独立な確率変数とする. このとき
とおくと,
\(X_{1},X_{2}\) は独立かつともに標準正規分布に従う.
これをグラフに描画して確認せよ.
(この変換を Box-Muller 変換と呼ぶ)
確率密度関数
\begin{equation} f(x)= \begin{cases} \frac{\alpha^\nu }{\Gamma(\nu)} x^{\nu-1}e^{-\alpha x}&(x>0)\\ 0&(x\leq0) \end{cases} \end{equation}
ただしガンマ関数 \(\Gamma(\nu)\) は以下で定義される :
\begin{equation} \Gamma(\nu)=\int_0^\infty x^{\nu-1}e^{-x}dx \end{equation}
乱数の発生は rgamma()
を用いる
rgamma(8, shape=3, rate=1) # ガンマ分布(8個) rgamma(8, shape=1, rate=3) # 異なるパラメタのガンマ分布(8個)
[1] 1.556503 1.752884 2.981918 2.170430 6.887037 4.407263 1.157782 3.733272 [1] 0.80726266 0.56563498 0.63007432 0.13429052 0.17420278 0.17147834 [7] 0.09992692 0.45799397
dgamma()
で計算できるパラメタ \(\lambda\) の指数分布 \(\mathrm{Exp}(\lambda)\) (\(\lambda > 0\))
\begin{equation} f(x)=\Gamma(1,\lambda)= \begin{cases} \lambda e^{-\lambda x}&(x>0)\\ 0&(x\leq0) \end{cases} \end{equation}
乱数の発生は関数 rexp()
を用いる
rexp(8) # レート1の指数分布(8個) rexp(8, rate=0.5) # レート0.5の指数分布(8個)
[1] 0.55103043 0.02320264 0.30259596 1.74271710 3.22426874 1.85554046 [7] 0.38328545 0.83828602 [1] 0.8799748 2.4263653 2.7576100 0.9749199 4.8472576 12.8701243 [7] 0.7204150 2.6989985
自由度 \(k\) の \(\chi^2\) 分布 \(\chi^2(k)\) (\(k > 0\))
\begin{equation} f(x)=\Gamma(k/2,1/2)= \begin{cases} \frac{1}{2^{k/2}\Gamma(k/2)} x^{k/2-1}e^{-x/2}&(x>0)\\ 0&(x\leq0) \end{cases} \end{equation}
平均
\begin{equation} \mathbb{E}[X] =k \end{equation}
分散
\begin{equation} \mathrm{Var}(X) =2k \end{equation}
乱数の発生は関数 rchisq()
を用いる
rchisq(8, df=1) # 自由度1のカイ二乗分布(8個) rchisq(8, df=4) # 自由度4のカイ二乗分布(8個)
[1] 1.26515548 2.44687981 0.01145818 0.45233265 4.71588029 0.15612976 [7] 0.09782705 0.13273587 [1] 0.2207956 2.9783944 9.8995862 9.4639555 2.8162690 2.2372569 3.9737643 [8] 4.8739706
dchisq()
で計算できる確率密度関数
\begin{equation} f(x)= \frac{1}{\sqrt{\pi \nu}} \frac{\Gamma((\nu+1)/2)}{\Gamma(\nu/2)} \left(1+\frac{x^2}{\nu}\right)^{-(\nu+1)/2} \end{equation}
平均
\begin{equation} \mathbb{E}[X] =0 \quad\text{(ただし\(\nu>1\))} \end{equation}
分散
\begin{equation} \mathrm{Var}(X) =\frac{\nu}{\nu-2} \quad\text{(ただし \(\nu>2\))} \end{equation}
\(Z\) を標準正規分布に従う確率変数, \(Y\) を自由度 \(k\) の \(\chi^2\) 分布に従う確率変数とし, \(Z,Y\) は独立であるとする. このとき確率変数
\begin{equation} \frac{Z}{\sqrt{Y/k}} \end{equation}
は自由度 \(k\) の \(t\) 分布に従う
乱数の発生は関数 rt()
を用いる
rt(8, df=1) # 自由度1のt分布(8個) rt(8, df=4) # 自由度4のt分布(8個)
[1] 0.5460034 3.1623973 -77.0591449 -0.1327108 3.7171055 -0.5221049 [7] 0.3312527 -7.5303656 [1] -0.14409493 0.40417799 0.09412785 2.63094995 0.15467757 0.18457793 [7] 1.05106218 0.24335396
dt()
で計算できる\(Z\) を標準正規分布に従う確率変数, \(Y\) を自由度 \(k\) の \(\chi^2\) 分布に従う確率変数とし, \(Z,Y\) は独立であるとする. このとき確率変数
\begin{equation} \frac{Z}{\sqrt{Y/k}} \end{equation}
は自由度 \(k\) の \(t\) 分布に従うことを確認しなさい.
確率密度関数
\begin{equation} f(x)= \begin{cases} \frac{(\nu_{1}/\nu_{2})^{\nu_{1}/2}}{B(\nu_{1}/2,\nu_{2}/2)} \frac{x^{\nu_{1}/2-1}}{(1+\nu_{1}x/\nu_{2})^{(\nu_{1}+\nu_{2})/2}}&(x>0)\\ 0&(x\leq0) \end{cases} \end{equation}
平均
\begin{equation} \mathbb{E}[X] =\frac{\nu_{2}}{\nu_{2}-2} \quad \text{(ただし\(\nu_{2}>2\))} \end{equation}
分散
\begin{equation} \mathrm{Var}(X) =\frac{2\nu_{2}^2(\nu_{1}+\nu_{2}-2)}{\nu_{1}(\nu_{2}-2)^2(\nu_{2}-4)} \quad\text{(ただし\(\nu_{2}>4\))} \end{equation}
\(Y_{1},Y_{2}\) をそれぞれ自由度 \(k_{1},k_{2}\) の \(\chi^2\) 分布に従う独立な 確率変数とする.このとき, 確率変数
\begin{equation} \frac{Y_{1}/k_{1}}{Y_{2}/k_{2}} \end{equation}
は自由度 \(k_{1},k_{2}\) の \(F\) 分布に従う
乱数の発生は関数 rf()
を用いる
rf(10, df1=4, df2=7) # 自由度4,7のF分布(10個) rf(10, df1=7, df2=12) # 自由度7,12のF分布(10個)
[1] 4.5865906 2.1940175 0.2762171 3.8015202 2.7687916 1.2361011 0.4982993 [8] 3.5938750 0.5563339 0.5265066 [1] 1.0522769 0.5380872 0.5995419 0.9979992 2.4028943 0.2177330 0.2627006 [8] 0.7520232 1.4257293 3.0048758
df()
で計算できる\(Y_{1},Y_{2}\) をそれぞれ 自由度 \(k_{1},k_{2}\) の \(\chi^2\) 分布に従う 独立な確率変数とする. このとき, 確率変数
は自由度 \(k_{1},k_{2}\) の \(F\) 分布に従うことを確認しなさい.