c:mrm:2022:qs_from_stu
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
c:mrm:2022:qs_from_stu [2022/04/21 14:27] – hkimscil | c:mrm:2022:qs_from_stu [2022/04/23 18:20] (current) – hkimscil | ||
---|---|---|---|
Line 5: | Line 5: | ||
혹시 어떤 차이점이 있어서 그런 걸 까요? | 혹시 어떤 차이점이 있어서 그런 걸 까요? | ||
</ | </ | ||
+ | |||
위 학생의 질문에서 앞부분, X = {3, 4, 3, 4, 6} 의 분산값을 구하기 위해서 SS를 n-1로 나눈다는 이야기는 맞습니다. 그러나, 뒤의 N(70, 15^2) 부분에 대한 이해는 약간 정리가 안되어 있습니다. 이를 설명해 보겠습니다. | 위 학생의 질문에서 앞부분, X = {3, 4, 3, 4, 6} 의 분산값을 구하기 위해서 SS를 n-1로 나눈다는 이야기는 맞습니다. 그러나, 뒤의 N(70, 15^2) 부분에 대한 이해는 약간 정리가 안되어 있습니다. 이를 설명해 보겠습니다. | ||
- | 위에서 N(70, 15^2)은 평균이 70이고 표준편차가 15인 (따라서 분산이 15^2인) 모집단을 (population) 의미하는 것입니다. 선생님은 이 모집단에서 n=100인 샘플을 구해 (샘플링을 하여서) 그 평균값을 기록하고, | + | 위에서 N(70, 15^2)은 평균이 70이고 표준편차가 15인 (따라서 분산이 15^2인) 모집단을 (population) 의미하는 것입니다. 선생님은 이 모집단에서 n=100인 샘플을 구해 (샘플링을 하여서) 그 평균값을 기록하고, |
$$ | $$ | ||
\overline{X } \sim N(\mu_{\overline{X}}, | \overline{X } \sim N(\mu_{\overline{X}}, | ||
$$ | $$ | ||
+ | |||
위에서 | 위에서 | ||
* $\overline{X}$ 는 X bar 즉 평균을 의미하고 | * $\overline{X}$ 는 X bar 즉 평균을 의미하고 | ||
- | * $\sim $ 사인은 앞의 X bar 들의 집합을 의미합니다. | + | * $\sim $ 사인은 앞의 X bar 들의 집합을 의미합니다. |
- | * 이 집단에서의 평균 $\mu_{\overline{X}}$ 값은 $70$ 이 되고 | + | * $\mu_{\overline{X}}$ 기호는 샘플평균들로 |
- | * ${\sigma_{\overline{X}}}^2 = \frac{\sigma^2}{n}$ | + | * $(\sigma_{\overline{X}})^2$ 기호는 샘플평균들의 분산값을 말합니다. |
- | * 위에서 | + | * 여기서 [[:Central Limit Theorem]] 이 말하는 것은 |
- | * 그런데 이 두번째 식이 이 집단의 분산값을 구하는 공식이고 이것이 SS를 df로 나눈다는 식을 대체하는 것은 아닙니다. | + | * 이 평균집단의 평균 $\mu_{\overline{X}}$ 값은 |
- | * 사실 | + | * 분산 값은 모집단 분산값을 샘플의 크기인 n으로 나누 값이 된다는 것입니다. 즉, ${\sigma_{\overline{X}}}^2 = \frac{\sigma^2}{n}$ 입니다. 위의 예에서는 $\frac {15^2} {100} $ 입니다. |
+ | * 그리고 이 평균들의 집합은 정상분포를 (Normal distribution) 이룬다는 것입니다. | ||
+ | $$ | ||
+ | \begin{eqnarray*} | ||
+ | \overline{X } & \sim & N(\mu_{\overline{X}}, | ||
+ | & \sim & N(\mu, \frac{\sigma^2}{n}) \\ | ||
+ | & \sim & N(70, \frac{15^2} {100}) \\ | ||
+ | \end{eqnarray*} | ||
+ | $$ | ||
+ | $- $ | ||
+ | * 그런데 이 두 번째 식이 이 집단의 분산값을 구하는 공식이고 이것이 SS를 df로 나눈다는 식을 대체하는 것은 아닙니다. 그냥 단지 가치가 (분산값이) 서로 같다는 것을 말합니다. | ||
+ | * 위의 샘플평균들의 집합에서 (distribution of sample means) 직접 분산 값을 구한다고 하면 아래와 같이 구해야 할 것입니다. | ||
+ | |||
$$ | $$ | ||
\begin{eqnarray*} | \begin{eqnarray*} | ||
Line 25: | Line 41: | ||
\end{eqnarray*} | \end{eqnarray*} | ||
$$ | $$ | ||
+ | $- $ | ||
+ | |||
* 선생님이 이야기 하는 것은 바로 위의 분산 값이 $\frac{\sigma^2}{n}$ 와 같은 값이 된다는 뜻입니다. | * 선생님이 이야기 하는 것은 바로 위의 분산 값이 $\frac{\sigma^2}{n}$ 와 같은 값이 된다는 뜻입니다. | ||
* 즉, 다시 한번 쓰면 | * 즉, 다시 한번 쓰면 | ||
+ | |||
$$ | $$ | ||
\begin{eqnarray} | \begin{eqnarray} | ||
(\sigma_{\bar{X}})^2 | (\sigma_{\bar{X}})^2 | ||
& = & \frac {\Sigma{(\overline{X_{i}} - \mu_\overline{X})}} {n-1} \\ | & = & \frac {\Sigma{(\overline{X_{i}} - \mu_\overline{X})}} {n-1} \\ | ||
- | & = & \frac{\sigma^2}{n} | + | & = & \frac{\sigma^2}{n} \\ |
+ | & = & \frac{15^2}{100} | ||
\end{eqnarray} | \end{eqnarray} | ||
$$ | $$ | ||
- | 위에서 (2)와 (3)은 그 값이 (value) 같다는 뜻입니다. 아래는 그것을 R에서 시뮬레이션하는 스크립트입니다. | + | 위에서 (2)와 (3)은 그 값이 (value) 같다는 뜻입니다. (4)는 n = 100 일 경우의 샘플평균집합의 분산값입니다. 아래는 그것을 R에서 시뮬레이션하는 스크립트입니다. |
< | < | ||
# random sampling | # random sampling | ||
# n = 10, 100, 1000 등 정할 수 있습니다. | # n = 10, 100, 1000 등 정할 수 있습니다. | ||
- | # 아래는 | + | # 아래는 |
- | n <- 10 | + | n <- 100 |
# 모집단의 평균은 70, 표준편차는 15를 가정합니다 | # 모집단의 평균은 70, 표준편차는 15를 가정합니다 | ||
Line 55: | Line 75: | ||
# iteration = 100, 1000, 10000 | # iteration = 100, 1000, 10000 | ||
- | # 백만법을 샘플링하기 위해서 iter = 백만으로 지정합니다 | + | # iter 번을 샘플링합니다 |
- | # 그리고 이를 | + | # 그리고 이를 |
- | iter <- 1000 | + | iter <- 1000000 |
means <- rep (NA, iter) | means <- rep (NA, iter) | ||
- | # 루프문을 통해서 위의 iter 개의 means[i]에 샘플의 (n=10) | + | # 루프문을 통해서 위의 iter 개의 means[i]에 |
- | # 평균을 구해서 저장합니다 | + | # 샘플의 (샘플 숫자 |
for(i in 1:iter){ | for(i in 1:iter){ | ||
means[i] = mean(rnorm(n, | means[i] = mean(rnorm(n, | ||
} | } | ||
- | # 이 천개의 샘플평균들의 집합의 평균 (m), | + | # 이 iter 개의 샘플평균들의 집합의 평균 (m), |
# 분산 (v1), 표준편차를 (sd1) 구해봅니다. | # 분산 (v1), 표준편차를 (sd1) 구해봅니다. | ||
m <- mean(means) | m <- mean(means) | ||
# 아래 값이 평균들 분포의 분산값입니다. 즉, SS/df 로 구한 값입니다. | # 아래 값이 평균들 분포의 분산값입니다. 즉, SS/df 로 구한 값입니다. | ||
v1 <- var(means) | v1 <- var(means) | ||
- | # 위의 값은 | + | # 위의 값은 sum((means - m)^2) # 을 (SS 부분) 구한 후 |
- | # sum((means - m)^2) # 을 (SS 부분) 구한 후 | + | |
# iter - 1 값으로 (df 부분) 나눠주어서 구해도 됩니다. | # iter - 1 값으로 (df 부분) 나눠주어서 구해도 됩니다. | ||
+ | v1 | ||
sum((means - m)^2) / (iter - 1) | sum((means - m)^2) / (iter - 1) | ||
+ | # 위의 값은 아래 sd(means) 와 같을 겁니다. | ||
sd1 <- sd(means) # 이 값이 평균분포의 표준편차값입니다. | sd1 <- sd(means) # 이 값이 평균분포의 표준편차값입니다. | ||
Line 89: | Line 110: | ||
# 위에서 평균들의 집합이 무한대라면 (현재는 천이지만) | # 위에서 평균들의 집합이 무한대라면 (현재는 천이지만) | ||
# v1 과 se.sq 값은 같게 됩니다. | # v1 과 se.sq 값은 같게 됩니다. | ||
- | # 천명인 이 경우에도 두 값이 아주 비슷합니다. | + | # iter 번 샘플링을 한 경우에도 두 값이 아주 비슷합니다. |
</ | </ | ||
Line 99: | Line 120: | ||
> # random sampling | > # random sampling | ||
> # n = 10, 100, 1000 등 정할 수 있습니다. | > # n = 10, 100, 1000 등 정할 수 있습니다. | ||
- | > # 아래는 | + | > # 아래는 |
- | > n <- 10 | + | > n <- 100 |
> | > | ||
> # 모집단의 평균은 70, 표준편차는 15를 가정합니다 | > # 모집단의 평균은 70, 표준편차는 15를 가정합니다 | ||
Line 112: | Line 133: | ||
> # 평균을 알아봅니다. 이것이 어디에 쓰이지는 않습니다. | > # 평균을 알아봅니다. 이것이 어디에 쓰이지는 않습니다. | ||
> mean(s1) | > mean(s1) | ||
- | [1] 71.98304 | + | [1] 71.63331 |
> | > | ||
> | > | ||
> # iteration = 100, 1000, 10000 | > # iteration = 100, 1000, 10000 | ||
- | > # 백만법을 샘플링하기 위해서 iter = 백만으로 지정합니다 | + | > # iter 번을 샘플링합니다 |
- | > # 그리고 이를 | + | > # 그리고 이를 |
- | > iter <- 1000 | + | > iter <- 1000000 |
> means <- rep (NA, iter) | > means <- rep (NA, iter) | ||
> | > | ||
- | > # 루프문을 통해서 위의 iter 개의 means[i]에 샘플의 (n=10) | + | > # 루프문을 통해서 위의 iter 개의 means[i]에 |
- | > # 평균을 구해서 저장합니다 | + | > # 샘플의 (샘플 숫자 |
> for(i in 1:iter){ | > for(i in 1:iter){ | ||
+ | + | ||
+ } | + } | ||
> | > | ||
- | > # 이 천개의 샘플평균들의 집합의 평균 (m), | + | > # 이 iter 개의 샘플평균들의 집합의 평균 (m), |
> # 분산 (v1), 표준편차를 (sd1) 구해봅니다. | > # 분산 (v1), 표준편차를 (sd1) 구해봅니다. | ||
> m <- mean(means) | > m <- mean(means) | ||
> # 아래 값이 평균들 분포의 분산값입니다. 즉, SS/df 로 구한 값입니다. | > # 아래 값이 평균들 분포의 분산값입니다. 즉, SS/df 로 구한 값입니다. | ||
> v1 <- var(means) | > v1 <- var(means) | ||
- | > # 위의 값은 | + | > # 위의 값은 sum((means - m)^2) # 을 (SS 부분) 구한 후 |
- | > # sum((means - m)^2) # 을 (SS 부분) 구한 후 | + | |
> # iter - 1 값으로 (df 부분) 나눠주어서 구해도 됩니다. | > # iter - 1 값으로 (df 부분) 나눠주어서 구해도 됩니다. | ||
+ | > v1 | ||
+ | [1] 2.248648 | ||
> sum((means - m)^2) / (iter - 1) | > sum((means - m)^2) / (iter - 1) | ||
- | [1] 23.54275 | + | [1] 2.248648 |
+ | > # 위의 값은 아래 sd(means) 와 같을 겁니다. | ||
> | > | ||
> sd1 <- sd(means) # 이 값이 평균분포의 표준편차값입니다. | > sd1 <- sd(means) # 이 값이 평균분포의 표준편차값입니다. | ||
> m | > m | ||
- | [1] 69.89407 | + | [1] 70.00091 |
> v1 | > v1 | ||
- | [1] 23.54275 | + | [1] 2.248648 |
> sd1 | > sd1 | ||
- | [1] 4.852087 | + | [1] 1.499549 |
> | > | ||
> # 아래는 평균들분포의 표준편차가 (표준오차) | > # 아래는 평균들분포의 표준편차가 (표준오차) | ||
Line 151: | Line 174: | ||
> se.sq <- (pop.sd^2) / n | > se.sq <- (pop.sd^2) / n | ||
> se.sq | > se.sq | ||
- | [1] 22.5 | + | [1] 2.25 |
> | > | ||
> # 위에서 평균들의 집합이 무한대라면 (현재는 천이지만) | > # 위에서 평균들의 집합이 무한대라면 (현재는 천이지만) | ||
> # v1 과 se.sq 값은 같게 됩니다. | > # v1 과 se.sq 값은 같게 됩니다. | ||
- | > # 천명인 이 경우에도 두 값이 아주 비슷합니다. | + | > # iter 번 샘플링을 한 경우에도 두 값이 아주 비슷합니다. |
> | > | ||
</ | </ | ||
- | 샘플평균들을 (n= n개의) 모아놓은 집합에서 (sampling distribution 혹은 distribution of sample means 혹은 distribution of the sample mean) 이 평균은 모집단의 평균이고 표준편차는 sqrt(모집단분산/ | + | 샘플평균들을 (n= n개의) 모아놓은 집합에서 (sampling distribution 혹은 distribution of sample means 혹은 distribution of the sample mean) 이 평균은 모집단의 평균이고 표준편차는 sqrt(모집단분산/ |
< | < | ||
> se <- sqrt(se.sq) | > se <- sqrt(se.sq) |
c/mrm/2022/qs_from_stu.1650518829.txt.gz · Last modified: 2022/04/21 14:27 by hkimscil