Skip to content

R활용 검정력과 표본수 #

Find similar titles

5회 업데이트 됨.

Edit
  • 최초 작성자
    Tuohy
  • 최근 업데이트
    Tuohy

Structured data

Category
Statistics

검정력(Power)과 표본수(Sample size) #

검정력(Power)과 표본수(Sample size) #

두 집단의 평균이나 비율의 차이를 검정할 때 표본수가 크면 작은 차이라도 기각할 가능성이 많아지는데, 이를 귀무가설이 잘못되었을 때 기각할 수 있는 확률, 즉 검정력(power)이 커진다고 한다.

즉, 모집단에서 뽑는 표본수가 많아질 수록 표본이 모집단을 대표하는 정도가 높아져 검정의 정확성이 높아진다. 그러나, 표본수가 적으면 표본이 모집단을 대표하는 정도가 낮아지고 표본을 뽑을 때마다 검정통계량의 값의 변화가 커진다(검정통계량의 분산이 커진다).

그러나, 실험이나 설문조사에서 표본수는 비용을 의미하기 때문에 한정된 예산으로 원하는 결과를 얻기 위해서는 유의한 결과를 얻을 가능성이 많은 최소한의 표본수를 실험전에 미리 계획하는 것이 효과적이다.

Image

이미지 링크 : http://datacolada.org/67

표본수 미리 계산하는 법 #

가장 주로 사용되는 t-test, one-way ANOVA, 두 비율간의 차이 검정을 할때 표본수를 얻는 방법을 알아보도록 하자.

Paired T-Test #

기각하고자 하는 차이가 2이고, 관찰값의 표준편차가 1.2라는 사전 정보가 주어질 때, 80% 이상의 검정력을 얻기위하여 power.t.test() 함수를 사용하도록 한다.

> power.t.test(delta = 2, sd = sqrt(2) * 1.2, power = 0.8, type = 'paired')

 Paired t test power calculation

          n = 7.783393
      delta = 2
         sd = 1.697056
  sig.level = 0.05
      power = 0.8
alternative = two.sided

NOTE: n is number of *pairs*, sd is std.dev. of *differences* within pairs

80%의 검정력을 얻기 위해서는 표본수 n=7.783393가 필요하다. 그러므로 최소한 표본수 8개를 사용해야 80% 이상의 검정력을 얻을 수 있다.

One-Sided Test #

양측검정대신 단측검정으로, 90%의 검정력을 얻고 싶다면 옵션에서 alter="one.sided"로 변경하고, power = 0.9로 변경하면 된다.

> power.t.test(delta = 2, sd = sqrt(2) * 1.2, power = 0.9, alter = "one.sided", type = 'paired')

 Paired t test power calculation

          n = 7.736174
      delta = 2
         sd = 1.697056
  sig.level = 0.05
      power = 0.9
alternative = one.sided

NOTE: n is number of *pairs*, sd is std.dev. of *differences* within pairs

One-Way ANOVA #

one-way ANOVA에서는 power.anova.test()라는 함수를 이용하여 표본수를 계산한다. 만약 그룹이 3개이고, 그룹 내의 분산(within group variance)가 1.5, 그룹간의 분산(between groups variance)가 2이며 80%의 검정력이 필요하다면, 각 그룹당 5개의 표본수가 필요하다.

> power.anova.test(groups = 3, between.var = 2, within.var = 1.5, power = 0.8)

 Balanced one-way analysis of variance power calculation

     groups = 3
          n = 4.767866
between.var = 2
 within.var = 1.5
  sig.level = 0.05
      power = 0.8

NOTE: n is number in each group

두 비율의 차이 검정 #

두 비율의 차이를 검정할 때 표본수는 power.prop.test()라는 함수를 이용하여 계산한다. 첫번째 그룹의 비율이 0.25, 두번째 그룹의 비율이 0.5라는 사전 정보가 있고, 70% 의 검정력을 얻고 싶다면, 각 그룹당 n=46의 표본수가 필요하다는 결론을 얻을 수 있다.

> power.prop.test(p1 = 0.25, p2 = 0.5, power = 0.7)

 Two-sample comparison of proportions power calculation

          n = 45.63026
         p1 = 0.25
         p2 = 0.5
  sig.level = 0.05
      power = 0.7
alternative = two.sided

NOTE: n is number in *each* group

참고 #

R을 이용한 누구나 하는 통계분석. 안재형 지음 | 한나래 | 2016년 03월 25일 출간 (1쇄 2011년 01월 15일)

0.0.1_20240318_1_v95