いろいろな離散分布と連続分布
(Press ?
for help, n
and p
for next and previous slide)
村田 昇
2020.06.05
区間 \([a,b]\) \((a\leq b)\) に \(X\) が含まれる確率
定義
\(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}
確率関数:
平均:
分散:
乱数の発生は
sample()
が利用できる( replace=TRUE
; 復元抽出)
a <- 1:6 # サンプリング対象の集合をベクトルとして定義
sample(a, size=20, replace=TRUE) # 離散一様分布(20個)
[1] 6 2 6 2 4 3 4 3 6 2 6 2 5 4 1 2 3 5 1 1
確率関数:
平均:
2次モーメント:
分散:
乱数の発生は rbinom()
を用いる
rbinom(10, size=1, prob=0.2) # Bernoulli分布(10個)
rbinom(20, size=5, prob=0.6) # 二項分布(20個)
[1] 0 0 0 0 0 0 0 0 0 0 [1] 1 3 2 3 1 4 2 2 4 3 2 2 3 1 4 3 5 4 3 2
dbinom()
で計算できる数値実験の雛形は以下のようになる
mc <- 10000 # 実験回数を指定
myRandom <- function(){...} # 乱数生成のプログラム
myDist <- function(){...} # 必要であれば理論曲線を定義
# ただし多くの場合 d"乱数名"で定義されているので不要
myData <- replicate(mc, myRandom()) # Monte-Carlo実験
myTable <- table(myData)/mc # 同じ値の頻度から確率を計算
plot(myTable, type="h", lwd=3, col="blue") # 乱数の分布の表示
myRange <- min(myData):max(myData) # 乱数の範囲を取得
lines(myRange + 0.3, myDist(myRange),
type="h", lwd=3, col="red") # ずらして表示
確率関数:
平均:
2次モーメント:
分散:
乱数の発生は rpois()
を用いる
rpois(15, lambda=1) # 強度1のPoisson分布(15個)
rpois(15, lambda=10) # 強度10のPoisson分布(15個)
[1] 1 1 3 1 1 1 1 0 1 1 2 3 4 3 0 [1] 6 12 10 15 8 9 17 10 7 10 14 9 15 8 7
dpois()
で計算できる確率関数:
平均:
2次モーメント:
分散:
乱数の発生は rgeom()
を用いる
rgeom(15, prob=0.1) # 成功確率0.1の幾何分布(15個)
[1] 1 6 13 2 3 8 15 0 7 2 10 20 0 4 1
dgeom()
で計算できる非負の値をとる実数上の関数 \(f\) の積分で表される
連続型の確率変数 \(X\) の平均:
積分 \(\int_{-\infty}^\infty xf(x)dx\) が絶対収束するとき
\(X\) の 平均 (または 期待値)を
で定義する
確率変数の変換 \(\varphi(X)\) の期待値:
\(p\) 次の モーメント (あるいは 積率 ):
分散:
確率密度関数:
平均:
2次モーメント:
分散:
乱数の発生は runif()
を用いる
runif(8) # 区間(0,1)上の一様乱数(8個)
runif(8,min=-1,max=1) # 区間(-1,1)上の一様乱数(8個)
[1] 0.7176311 0.9073930 0.7698960 0.4048408 0.8972823 0.5522797 0.2080969 0.3053931 [1] -0.01873536 0.30919732 0.66069683 -0.97555281 -0.43737283 -0.29851023 -0.55807354 0.42366734
dunif()
で計算できる確率密度関数:
中心極限定理により
の分布は標準正規分布で近似できる
乱数の発生は rnorm()
を用いる
rnorm(8) # 標準正規乱数(8個)
rnorm(8,mean=1,sd=2) # 平均1分散4=2^2の正規乱数
[1] 0.07929581 -1.59985785 0.55563930 -1.00608204 1.84838641 -0.20015572 -0.73897045 0.31424214 [1] -0.3524318 3.1804215 -1.2458798 -1.0581642 2.3645768 3.5691087 1.2058431 3.0945755
dnorm()
で計算できる数値実験の雛形は以下のようになる
mc <- 10000 # 実験回数を指定
myRandom <- function(){...} # 乱数生成のプログラム
myDist <- function(){...} # 必要であれば理論曲線を定義
# ただし多くの場合 d"乱数名"で定義されているので不要
myData <- replicate(mc, myRandom()) # Monte-Carlo実験
hist(myData, freq=FALSE) # 乱数の分布(密度)の表示
curve(myDist(x), add=TRUE) # 理論曲線(確率密度) 変数xを明示した方が良い
\(U_{1},U_{2}\) を \((0,1)\) 上の 一様分布に従う独立な確率変数とする. このとき
とおくと,
\(X_{1},X_{2}\) は独立かつともに標準正規分布に従う.
これをグラフに描画して確認せよ.
(この変換をBox-Muller変換と呼ぶ)
確率密度関数:
ただしガンマ関数 \(\Gamma(\nu)\) は以下で定義される:
乱数の発生は rgamma()
を用いる
rgamma(8, shape=3, rate=1) # ガンマ分布(8個)
rgamma(8, shape=1, rate=3) # 異なるパラメタのガンマ分布(8個)
[1] 1.7833927 0.7467646 1.9030920 4.7296892 1.6293932 2.9992942 3.5362778 1.1753200 [1] 0.02732359 0.23163588 0.11661828 0.54572922 0.40611635 0.46558160 0.63892653 0.28705430
dgamma()
で計算できるパラメータ \(\lambda\) の指数分布: \(\mathrm{Exp}(\lambda)\) (\(\lambda > 0\))
乱数の発生は rexp()
を用いる
rexp(8) # レート1の指数分布(8個)
rexp(8, rate=0.5) # レート0.5の指数分布(8個)
[1] 1.44951980 0.57735631 0.68949374 0.76798045 0.05592744 0.11549464 2.18555810 0.33581921 [1] 2.5817654 0.6072971 5.5060614 5.6735740 2.7052831 1.0613680 1.4539106 2.5341143
自由度 \(k\) の \(\chi^2\) 分布: \(\chi^2(k)\) (\(k > 0\))
乱数の発生は rchisq()
を用いる
rchisq(8, df=1) # 自由度1のカイ二乗分布(8個)
rchisq(8, df=4) # 自由度4のカイ二乗分布(8個)
[1] 0.53310518 0.80742919 0.35121586 1.69878414 1.44074052 0.05576257 0.87737338 3.29818692 [1] 3.052193 6.382445 4.102875 1.363195 10.268475 2.536356 7.036302 3.110206
dchisq()
で計算できる確率密度関数:
平均:
分散:
\(Z\) を標準正規分布に従う確率変数, \(Y\) を自由度 \(k\) の \(\chi^2\) 分布に従う確率変数とし, \(Z,Y\) は独立であるとする. このとき確率変数
は自由度 \(k\) の \(t\) 分布に従う
乱数の発生は rt()
を用いる
rt(8, df=1) # 自由度1のt分布(8個)
rt(8, df=4) # 自由度4のt分布(8個)
[1] -0.06460561 -10.53594598 8.02054322 -3.29513802 -0.24085152 -0.24922987 0.30086392 -2.85224880 [1] 2.12626211 -0.58287343 0.07906917 0.46892750 -3.56887866 0.74588295 0.31828997 -0.90470634
dt()
で計算できる\(Z\) を標準正規分布に従う確率変数, \(Y\) を自由度 \(k\) の \(\chi^2\) 分布に従う確率変数とし, \(Z,Y\) は独立であるとする. このとき確率変数
は自由度 \(k\) の \(t\) 分布に従うことを確認しなさい.
確率密度関数:
平均:
分散:
\(Y_{1},Y_{2}\) をそれぞれ自由度 \(k_{1},k_{2}\) の \(\chi^2\) 分布に従う独立な 確率変数とする.このとき, 確率変数
は自由度 \(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] 2.45187732 0.08175346 6.66561264 2.53063911 6.09755927 0.33156685 4.78334272 0.28437755 1.05595828 [10] 0.38040410 [1] 1.5518365 2.2740934 0.6675655 1.0231366 0.9276802 0.9511888 1.6988482 0.8367881 0.6923391 1.1032187
df()
で計算できる\(Y_{1},Y_{2}\) をそれぞれ 自由度 \(k_{1},k_{2}\) の \(\chi^2\) 分布に従う 独立な確率変数とする. このとき, 確率変数
は自由度 \(k_{1},k_{2}\) の \(F\) 分布に従うことを確認しなさい.