(統計学実践ワーク7_10も参照).
私たちが知りたいのは母集団の平均です。
全数調査が難しい場合、ランダムサンプリングによって得られた標本平均から、母平均を推定します。
標本平均は、ランダムサンプリングから得られるので確率変数です。
成人式会場に来た男子の平均体重を知りたいとします。全員に体重を測ってもらう時間はないので、聞き取り調査をすることにしました。しかし、会場は人で溢れており、どうやって調べたらいいのか分かりません。
P子さんは統計学で学んだ標本調査を思い出しました。例えば9人抽出して体重を聞けばいいのです。
慎重派のP子さんは、調査チームを10班に分け、それぞれの班が9人を選んで聞き取り調査をすることにしました。
母集団を \(N(170,9^2)\)) としてシミュレーションします。
A <- rnorm(1000,170,9)
hist(A,breaks=seq(120,230,by=5))
mean(A)
## [1] 169.7666
正規乱数によって作成した母集団ですが、母平均は、ほぼ170 になっています。
sample関数を利用して母集団Aから9人の標本を抽出します。replace =
FALSE は非復元抽出を意味します.
(復元抽出が望ましいですが、現実の調査にあわせて非復元とします).
x <- sample(A, size = 9, replace = FALSE)
round(x,0)
## [1] 169 185 168 158 171 148 172 155 182
mean(x)
## [1] 167.6632
9個の値は変動していますが、9個の標本平均はどんな値でしょうか。
他の調査チームの結果も見てみましょう。
9個の抽出を10班の調査チームが行うので、繰り返し構文を用います。
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
N <- 10
df = data.frame()
M <- c()
for (i in 1:N) {
X <- sample(A, size = 9, replace = FALSE)
df = rbind( df, round(X,0))
M <-c(M,mean(X))
}
colnames(df) <- c("X1","X2","X3","X4","X5","X6","X7","X8","X9")
mutate(df,標本平均=round(M,1))
X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | 標本平均 |
---|---|---|---|---|---|---|---|---|---|
185 | 180 | 157 | 179 | 159 | 184 | 164 | 168 | 175 | 172.2 |
171 | 192 | 174 | 172 | 183 | 172 | 169 | 164 | 168 | 173.9 |
163 | 182 | 177 | 155 | 155 | 179 | 162 | 162 | 167 | 167.0 |
162 | 161 | 165 | 156 | 171 | 179 | 183 | 174 | 164 | 168.4 |
178 | 159 | 156 | 164 | 167 | 180 | 176 | 166 | 163 | 167.7 |
166 | 182 | 175 | 172 | 163 | 170 | 164 | 168 | 193 | 172.6 |
175 | 178 | 167 | 177 | 178 | 170 | 178 | 162 | 162 | 171.8 |
182 | 184 | 177 | 170 | 150 | 176 | 178 | 166 | 176 | 173.3 |
172 | 172 | 173 | 164 | 158 | 175 | 183 | 174 | 162 | 170.2 |
174 | 168 | 162 | 176 | 178 | 166 | 183 | 183 | 173 | 173.9 |
各調査チームの標本平均も変動していることが分かります。
標本平均を母平均の推定値とするには、その標準偏差(変動幅)を知っておく必要があります。
hist(M,prob=T,breaks=seq(140,210,by=2))
mean(M)
## [1] 171.1079
sd(M)
## [1] 2.593747
各班から出てきた標本平均には変動があり、確率変数であることが分かります。
また、各班の標本平均は期待値は170のようですが、標準偏差は小さくなっているようです。
どのくらい標準偏差が小さくなっているかに興味を持ったP子さんは調査を重ね.
標本平均の標準偏差は、もとの標準偏差の \(\dfrac{1}{\sqrt{n}}\) である.
ことを発見しました。以下で、P子さんの調査を見てみましょう。
標本平均の標準偏差を予想するには、10回よりもっと回数を増やす必要があります。標準偏差のみ出力します。replace = TRUEとします。
## [1] 3.22997
## [1] 3.080111
標本平均の標準偏差は3(分散は9)になりそうです。
p60のポイントで整理されている公式は、.
(標本平均の分散)=母分散/標本数 というものです。
上の例では、 標本平均の分散=\(\dfrac{9^2}{9}=9\).
標本平均の標準偏差は 3
となり、シミュレーションの結果に合致しています。
標本平均の標準偏差=\(\dfrac{9}{\sqrt{9}}=3\)
であり、P子さんの主張が裏付けられたことになります。.
第6章 正規分布 では、
母集団からの標本抽出において、
標本数を大きくすると、標本平均の分散は小さくなり、ヒストグラムは縦に長くなっています。
どんどん変動幅が小さくなる標本平均に、標準化という操作をすると、グラフはガウスの標準正規分布に近づきます。
これを中心極限定理といい、標本平均に対して正規分布表を利用した確率予測が可能になります。
母集団は正規分布に従っているかどうかは分かりません。しかし、サンプル数が大きい標本平均は正規分布で近似され、標準化することで標準正規分布表を利用することができます。
「母集団分布がどうであれ、標本平均は正規分布に従う」.
ここに正規分布の重要性があります。
私たちが知りたいのは母平均です。
しかし調査には限りがありますから、得られた標本から推定しなければなりません。
例えば、ある病気にかかって病院に来てくれる患者さんは一部分です。
来てくれた患者さんのデータから、患者全体の状況を推定しなければないません。
得られたデータを母集団からの標本と考えたとき、データの平均は標本平均になります。この標本平均をもとに母平均を確率的に予測するのが区間推定です。
詳しくみていきましょう。
方程式とは未知数である変数を含む等式です。求めたいものをx
とおいて方程式を立てます。
分かっていないものを x
として存在を認めて扱うことは革新的なことでした。
区間推定における未知数は、母平均 \(\mu\)です。
未知のものを\(\mu\)として存在を認めることで、正規分布\(N(\mu,\sigma^2)\)を考えることが可能になります。
いきなり未知数が \(\mu,\sigma\) の2つ
では難しくなるので、まず母分散 \(\sigma^2\)が既知の場合から始めます。
母集団は ある県の小学校新入生男子です。
(少子化のため、石川県令和5年の新入生は 2828人、女子は約半分です)学校基本調査.
母集団は人数が多いので900人の体重を標本抽出したとします。
母標準偏差 2.9
が分かっているとします(現実にはあり得ないことですが).
標準正規分布では、95% の確率で.
\(-1.96<Z<1.96\) が成立します.
\(\bar{X}\sim
N\left(\mu,\dfrac{2.9^2}{900}\right)\) を標準化すると、 \(Z=\dfrac{\bar{X}-\mu}{\sqrt{\frac{2.9^2}{900}}}\sim
N(0,1)\)
標準正規分布に従うので、95% の確率で.
\(-1.96<\dfrac{\bar{X}-\mu}{\sqrt{\frac{2.9^2}{900}}}<1.96\) (p60の最下行に相当).
\(-1.96\sqrt{\frac{2.9^2}{900}}<\bar{X}-\mu<1.96\sqrt{\frac{2.9^2}{900}}\).
未知数は \(\mu\) なので、各辺に -1
を乗じ.
\(-1.96\sqrt{\frac{2.9^2}{900}}<\mu-\bar{X}<1.96\sqrt{\frac{2.9^2}{900}}\).
各辺に \(\bar{X}\) を加えて.
\(\bar{X}-1.96\sqrt{\frac{2.9^2}{900}}<\mu<\bar{X}+1.96\sqrt{\frac{2.9^2}{900}}\) (p61の上から4行目に相当).
今、\(\bar{X}=21.5\) なので.
\(21.5-1.96\sqrt{\frac{2.9^2}{900}}<\mu<21.5+1.96\sqrt{\frac{2.9^2}{900}}\).
(電卓で計算してみましょう).
p61の参考には一般公式の記述があり、上記の区間推定の公式は \(n \geqq 30\) で適用可能とされています。これは、\(\bar{X}\)の中心極限定理による正規分布への近似が、\(n \geqq 30\)のとき精度が良いことによります。
母分散が未知の場合、標本平均を標準化することはできません。
一方で、標本分散は標本を抽出するごとに求まります。
母分散 \(\sigma^2\) を標本分散 \(s^2\) で代用した. \(t=\dfrac{\overline{X}-\mu}{\left. s \right/
\sqrt{n}}\).
は、標準正規分布とは言えませんが、それほどかけ離れた分布にはなりません。これはt分布と言われ正規分布に近い形状です。また、t分布表が用意されており、表による確率計算が可能です。
実際、どのくらい正規分布とt分布が異なるのかシミュレーションで見ておきます。
母集団は、冒頭で扱った成人男子1000人を用います。
A <- rnorm(1000,170,9)
N <- 10
df = data.frame()
M <- c()
for (i in 1:N) {
X <- sample(A, size = 9, replace = FALSE)
df = rbind( df, round(X,0))
M <-c(M,(mean(X)-170)/sqrt(var(X)/9))
}
colnames(df) <- c("X1","X2","X3","X4","X5","X6","X7","X8","X9")
mutate(df,標本平均=round(M,2))
X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | 標本平均 |
---|---|---|---|---|---|---|---|---|---|
160 | 160 | 165 | 182 | 172 | 158 | 173 | 169 | 165 | -1.08 |
177 | 172 | 183 | 175 | 171 | 169 | 180 | 161 | 181 | 1.95 |
178 | 161 | 166 | 169 | 179 | 160 | 177 | 165 | 188 | 0.47 |
169 | 175 | 175 | 162 | 175 | 162 | 168 | 151 | 184 | -0.35 |
167 | 165 | 156 | 173 | 172 | 165 | 178 | 172 | 173 | -0.44 |
170 | 174 | 165 | 175 | 175 | 180 | 176 | 171 | 161 | 0.93 |
166 | 171 | 164 | 169 | 164 | 179 | 183 | 176 | 157 | -0.04 |
159 | 163 | 164 | 173 | 178 | 183 | 184 | 166 | 160 | -0.02 |
170 | 179 | 184 | 169 | 174 | 171 | 164 | 174 | 164 | 0.95 |
168 | 172 | 169 | 174 | 175 | 185 | 179 | 172 | 183 | 2.63 |
hist(M,breaks=seq(-3.5,3.5,by=1))
A <- rnorm(1000,170,9)
N <- 100
df = data.frame()
M <- c()
for (i in 1:N) {
X <- sample(A, size = 9, replace = FALSE)
df = rbind( df, round(X,0))
M <-c(M,(mean(X)-170)/sqrt(var(X)/9))
}
colnames(df) <- c("X1","X2","X3","X4","X5","X6","X7","X8","X9")
#mutate(df,標本平均=round(M,2))
hist(M,prob=T,breaks=seq(-4.5,4.5,by=0.5))
curve(dnorm(x, 0, 1),xlim=c(-4, 4),ylim=c(0, 0.4), col="blue",add=T)
curve(dt(x, 10),xlim=c(-4, 4),ylim=c(0, 0.4), col="red",add=T)
縦は確率密度、
あまり大差ないようにも見えますが、小標本のときはt分布のほうが精度が良いとされています。
A=c(35,31,44,34,41,39,35)
mean(A)
## [1] 37
var(A)
## [1] 20.33333
t分布を用いる場合、未知数は母平均 \(\mu\) のみです。
自由6のt分布では、95% の確率で.
\(-2.447<t<2.447\) が成立します.
\(-2.447<\dfrac{\bar{X}-\mu}{\sqrt{\frac{20.33}{7}}}<2.447\).
\(-2.447\sqrt{\frac{20.33}{7}}<\bar{X}-\mu<2.447\sqrt{\frac{20.33}{7}}\).
未知数は \(\mu\) なので、各辺に -1
を乗じ.
\(-2.447\sqrt{\frac{20.33}{7}}<\mu-\bar{X}<2.447\sqrt{\frac{20.33}{7}}\).
各辺に \(\bar{X}\) を加えて.
\(\bar{X}-2.447\sqrt{\frac{20.33}{7}}<\mu<\bar{X}+2.447\sqrt{\frac{20.33}{7}}\).
今、\(\bar{X}=37\) なので.
\(37-2.447\sqrt{\frac{20.33}{7}}<\mu<37+2.447\sqrt{\frac{20.33}{7}}\).
母分散が未知なので標本分散で代用しt分布表を用いるだけで、標準正規分布表を用いる手法と同様と言えます。
t分布と正規分布との結果の相違.
p67のプラスアルファの説明は、次の式によります。
\(t=\dfrac{\overline{X}-\mu}{\left. s \right/ \sqrt{n}} =\dfrac{\left. (\overline{X}-\mu) \right/ \dfrac{\sigma}{\sqrt{n}}}{\left. s \right/ \sigma} =\dfrac{Z}{\sqrt{\left. s^2 \right/ \sigma^2}} =\dfrac{Z}{\sqrt{\left. S^2 \right/ (\sigma^2(n-1))}} =\dfrac{Z}{\sqrt{\left. U \right/ (n-1)}} \sim t(n-1)\).