c:ms:2025:lecture_note_week_04

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
c:ms:2025:lecture_note_week_04 [2025/03/26 01:35] – [Sampling distribution output] hkimscilc:ms:2025:lecture_note_week_04 [2025/03/26 07:41] (current) – [Hypothesis testing] hkimscil
Line 396: Line 396:
  
 </code> </code>
 +
 +====== mean and variance of sample means ======
 +
 위에서 standard deviation of sample means (샘플평균들로 이루어진 집합의 표준편차) 값을 standard error라고 부른다. 그리고 이 standard error 값은 원래 population의 $\sigma^2$ 값을 샘플의 사이즈로 나누어준 값을 ($\sigma^2/n$) 갖게 된다. 또한 이 샘플평균들의 집합의 평균은 (샘플평균들의 기대값, the mean of sample means) population의 평균값을 ($\mu$) 갖게 된다. 이에 대한 수학적 증명 문서는 [[:mean and variance of the sample mean]]. 위에서 standard deviation of sample means (샘플평균들로 이루어진 집합의 표준편차) 값을 standard error라고 부른다. 그리고 이 standard error 값은 원래 population의 $\sigma^2$ 값을 샘플의 사이즈로 나누어준 값을 ($\sigma^2/n$) 갖게 된다. 또한 이 샘플평균들의 집합의 평균은 (샘플평균들의 기대값, the mean of sample means) population의 평균값을 ($\mu$) 갖게 된다. 이에 대한 수학적 증명 문서는 [[:mean and variance of the sample mean]].
 +
 +====== Hypothesis testing ======
 +먼저 이해하기
 +  * pnorm (and rnorm, qnorm)
 +  * 표준점수
 +  * sampling distribution 
 +  * = distribution of sample means 
 +  * = distribution of the sample mean
 +  * standard error 
 +  * = standard deviation of sample means
 +  * = standard deviation of sampling distribution
 +  * CLT
 +  * $\overline{X} \sim N(\mu, \displaystyle \frac{\sigma^2}{n}) $
  
 위를 이해한다면 이제 우리는 차이의가설을 만들어 테스트해볼 수 있다. [[:hypothesis testing]] 위를 이해한다면 이제 우리는 차이의가설을 만들어 테스트해볼 수 있다. [[:hypothesis testing]]
 +<code>
 +# 가설 테스트 
 +set.seed(2000)
 +pop <- rnorm2(1000000, 50, 10)
 +m.pop <- mean(pop)
 +sd.pop <- sd(pop)
 +var.pop <- var(pop)
 +
 +# 시뮬레이션 시작
 +iter <- 10000 # 사실은 무한대 
 +n <-100 # sample size
 +means <-rep(NA, iter) # means memory reservation
 +for(i in 1:iter){
 +  means[i] = mean(sample(pop, n))
 +}
 +m.empirical <- mean(means)
 +se.empirical <- sd(means)
 +m.empirical
 +se.empirical
 +se <- sd.pop/sqrt(n)
 +se2 <- se * 2
 +se3 <- se * 3
 +
 +vlines <- c(m.empirical, 
 +            m.empirical+c(-se,se),
 +            m.empirical+c(-se2,se2),
 +            m.empirical+c(-se3,se3))
 +colors = c("blue", 
 +           "red", "red", 
 +           "darkgreen", "darkgreen", 
 +           "black", "black")
 +
 +hist(means)
 +abline(v=vlines, col=colors, lwd=2, lty="dashed")
 +
 +# 아래는 n=100 샘플을 하여 평균을 구해본 것
 +s1 <- sample(pop, n)
 +s1
 +mean(s1)
 +s2 <- sample(pop, n)
 +mean(s2)
 +
 +# set.seed(2000)
 +iter <- 20
 +n <-100
 +means <-rep(NA, iter)
 +for(i in 1:iter){
 +  means[i] = mean(sample(pop, n))
 +}
 +means
 +means < 48
 +means > 52
 +table(means<48)
 +table(means>52)
 +table(means<48|means>52)
 +
 +s3 <- rnorm2(n, 53.2, 10)
 +m.s3 <- mean(s3)
 +m.s3
 +
 +p.val.one.tail <- 
 +  pnorm(m.s3, m.pop, se, lower.tail = F)
 +p.val.two.tail <- 
 +  pnorm(m.s3, m.pop, se, lower.tail = F) * 2
 +p.val.one.tail
 +p.val.two.tail
 +
 +set.seed(1010)
 +s4 <- rnorm(100, 54, 10)
 +m.s4 <- mean(s4)
 +m.s4
 +
 +p.val.two.tail <- pnorm(m.s4, 
 +                        m.pop, 
 +                        se, lower.tail = F) * 2
 +p.val.two.tail
 +p.val.one.tail <-p.val.two.tail/2
 +p.val.one.tail
 +z.score <- (m.s4-m.pop)/se
 +z.score
 +pnorm(z.score, lower.tail = F)*2
 +
 +# 만약에 pnorm을 이용하여 정확한 
 +# probability를 구할 수 없는 상황
 +# 이라고 가정하면
 +# 우리는 CLT 정리를 생각하여 
 +# n = 100인 샘플을 무한 반복하여 
 +# 샘플링 하고, 각 샘플의 평균을 
 +# 기록하여 모아둔다면 그 분포는 
 +# N(mu, sigma^2/n) 이라는 것을 
 +# 안다. N(50, 100/100)
 +# 따라서 이 집합의 표준편차값은 
 +# sigma/sqrt(n) = 1
 +# 대충 바로 위의  그래프와 같은 
 +# 모습이고, 이 그래프에서 sd를 
 +# 위로 두개, 밑으로 두개 쓴 구간은
 +# 녹색에 해당하는 48-52 이다. 
 +# 이 구간에서 샘플의 평균이 나타날
 +# 확률은 95%라고 하였다. 따라서 
 +# 우리가 가지고 있는 m.s4의 값은 
 +# 52점 밖에 존재하므로 
 +# 5%의 확률로서만 얻을 수 있는 샘플
 +# 평균이라는 것을 알수 있다. 
 +
 +# 위의 결과를 가지고 두가지 판단을 할 수 
 +# 있다. 하나는 이 샘플의 평균이 모집단
 +# 평균이 50이고 표준편차가 10인 집단에서
 +# 나올 수 있는 샘플일 확률이 1/20밖에 
 +# 안되므로 이 샘플은 우리가 염두에 둔 
 +# 원래 모집단에서 나온 것이 아니라는 
 +# 생각이다. 
 +
 +# 두 번째는 이 샘플이 그 모집단에서 
 +# 나오기는 했다. 그러나 1/20 확률에 
 +# 우연찮게 이번에 걸려서 m.s4의 평균값이
 +# 나왔다. 
 +
 +# 이것은 1/20확률에 근거한 판단이므로 첫
 +# 번째 판단을 나의 주 판단으로 한다. 즉, 
 +# 이 샘플은 원래 모집단에서 나올 샘플이 
 +# 아닌 다른 집단에서 나온 샘플이다. 
 +
 +# 그런데 여기서 추가로 주목할 점은 내가 샘플이 
 +# 정상적인지 아니면 비정상적인지 판단하는 기준
 +# 선을 표준점수 +- 2에 두었다는 점이다. 
 +# m.s4의 점수는 53.2 이므로 m.s4-m.pop(50)
 +# 인 3.2는 샘플평균들의 집합에서 구하는 
 +# 표준편차가 3.2만큼 떨어진 것을 알 수 있다. 
 +# 우리는 이것을 표준점수라고 하였으므로 
 +# 우리가 구한 z-score = 3.2라는 것을 알 수 있고
 +# 이 점수가 표준편차값 2개를 위아래로 적용한 선보다 
 +# 밖에 존재하므로 샘플이 모집단에서 나오지 않은 
 +# 특별한 샘플이라는 것을 주장할 수 있다.
 +</code>
 +
 +
c/ms/2025/lecture_note_week_04.1742920503.txt.gz · Last modified: 2025/03/26 01:35 by hkimscil

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki