[확률과 통계적 추론] 8-4. 비모수적 검정 (Non-parametric Test)

2024. 3. 25. 23:01·Statistics/Mathmetical Statistics

 

안녕하세요. 이번 포스팅에서는 비모수적인 방법을 이용한 검정에 대해 알아보겠습니다.

 

포스팅 8-2과 8-3에서는 정규분포 및 이항분포를 가정해서 검정통계량을 정의하고 검정할 수 있었습니다.

이번 비모수적 검정에서는 분포에 대해 거의 가정하지 않으므로 정규성을 만족하는지 확인할 필요가 없습니다.

 

1. 부호검정(Sign Test)

 

$m$을 중위수(Median)이라고 할때, 귀무가설 $H_0 : m = m_0$, 대립가설 $H_1 : m \neq m_0$에 대한 가설검정을 수행할 수 있는데요. 이는 $m_0$가 실제 중위수라고 하면 주어진 데이터 $X_1, X_2, \cdots, X_n$에 대해 $X_1 - m, X_2 - m, \cdots, X_n - m$에 대해 절반은 음수를 가지고 절반은 양수를 가질 것이라고 기대되기 때문입니다. 좀 더 자세하게 서술하면 귀무가설 하에서 확률변수 $Y$를 $X_i - m$이 양수(또는 음수)인 개수라고할 때 $Y \sim B(n, \frac{1}{2})$를 만족하게 되며, $Y$가 너무 작거나 너무 크면 귀무가설을 기각하게 됩니다.

(이와 같은 방법으로 특정 분위수에 대한 검정을 진행할 수 있습니다.)

 

p + 분포 함수는 누적분포함수를 반환하므로 $P(X \leq x)$를 반환합니다. 이때 lower.tail 인자를 FALSE로 설정하면 $P(X > x)$를 반환하게 됩니다. 아래 표에 따라서, 기각역을 $Y>13$ 또는 $Y\geq14$로 할때 유의수준(Significance Level)은 0.0577이 됩니다.

즉 유의수준을 0.0577로 할때, $X_i - 6.2$가 음수인 개수를 $Y$라고 하면 위 예시에서는 $Y=9$이고 기각역에 포함되지 않으므로 귀무가설을 기각할 만한 증거가 없습니다. 따라서 중위수를 6.2라고 할 수 있습니다.

tibble(X = 1:20) %>% 
  mutate(`Pr[X>]` = pbinom(q=X, size = 20, prob=0.5, lower.tail=F) %>% round(4))

 

부호검정을 R로 진행하기 위해 아래와 같이 binom.test를 통해서 검정을 수행할 수 있습니다.

binom.test(x = 9, n = 20, p=0.5, alternative = "less", conf.level = 0.95)

 

 

 

2. 윌콕슨 부호 순위 검정 (Wilcoxon Signed Rank Statistics)

 

윌콕슨 부호 순위 검정은 부호검정(Sign Test)에서의 대소만을 중요하게 생각하고 자료의 크기는 고려하지 않은 단점을 보완한 접근법입니다. 귀무가설 $H_0 : m = m_0$하에서 $|X_i - m_0$를 크기 순서로 나열해서 랭킹(Ranking) $R_k$를 부여하고 $X_i - m_0$의 부호(플러스, 마이너스)를 랭킹에 부여합니다. 이렇게 부호 순위가 결정되면 모든 부호 순위를 더한 값을 검정통계량으로 사용합니다.

이때, 검정통계량을 $W$라 하면 $W \sim N(0, \frac{n(n+1)(2n+1)}{6}))$을 만족합니다.

 

 

학과 소모임에서 5명을 추출하여 키를 측정한 결과가 아래와 같고, 귀무가설 $H_0 : m = 170$이라는 가설검정을 윌콕슨 부호 순위 검정을 통해 검정하고할 할때, 아래와 같이 나타낼 수 있습니다.

데이터(X) |X - $m_0$| 순위(Ranking) 부호 부호순위(Signed Rank)
160 10 4 - -4
163 7 3 - -3
172 2 1 + 1
175 5 2 + 2
182 12 5 + 5

 

따라서, 윌콕슨 부호 순위 검정에서의 검정통계량의 값은 부호순위를 전부 더한 $w = -4-3+1+2+5 = 1$이 됩니다. 

이때, 귀무가설 하에서 $W \sim N(0, 55)$이므로 P-value = $Pr(|W| > w) = 0.8927$로 귀무가설을 기각할만한 증거가 없습니다.

(연속성 수정 적용시 P-value = 1)

따라서, 해당 데이터에서 귀무가설을 채택하여 학과 소모임의 키의 중위수는 170이라고 할 수 있습니다.

 

R에서는 wilcox.test를 통해 검정할 수 있으며 양의 랭킹을 더한 값을 통계량으로 사용해서 조금 차이가 있습니다.

wilcox.test(x = c(160, 163, 172, 175, 182), mu = 170)

 

 

 

3. 윌콕슨 순위 합 검정 (Wilcoxon Rank Sum Test)

 

또한, 두 그룹의 중위수를 비교하는 것도 가능한데요. 다만 $X$와 $Y$의 CDF 형태가 같다고 가정합니다. (F_Y = F_X(x-a)와 같음)

이때, $X$와 $Y$에 해당하는 모든 값을 크기 순서대로 정렬하여 순위를 부여하고 하나의 확률변수 $X$(또는 $Y$)에 대한 랭킹을 모두 더한 통계량 $W_X$(또는 $W_Y$)를 검정통계량으로 사용합니다. 귀무가설 $m_x = m_y$하에서 검정통계량은 아래와 같은 분포를 근사적으로 따릅니다.

$$W_X \sim N(\frac{n(n+m+1)}{2}, \frac{nm(n+m+1)}{12})$$

 

아래는 고속도로 연비의 중위수를 비교하는 예제입니다. 구동방식(drv)이 "4"인 그룹과 "f"인 그룹을 분리해 정규성 검정을 수행한 결과 두 그룹모두 정규성을 따른다고 볼 수 없었습니다. 따라서, 비모수적 검정인 윌콕슨 순위 합 검정을 이용해서 검정하였습니다.

hwy_drv4 = mpg %>% filter(drv=="4") %>% pull(hwy) 
hwy_drvf = mpg %>% filter(drv=="f") %>% pull(hwy)

Map(shapiro.test, list(hwy_drv4, hwy_drvf)) # p-value = 5.192e-06, 1.556e-06

mpg %>% filter(drv %in% c("4", "f")) %>% 
  ggplot(mapping=aes(x=drv, y=hwy)) + geom_boxplot()

wilcox.test(hwy_drv4, y = hwy_drvf, alternative = "two.sided")

 

시각화에서 두 그룹간에 차이가 있다고 볼 수 있으므로 귀무가설을 기각할 것이라고 미리 파악할 수 있었습니다.

실제로, Wilcox Rank Sum Test 결과로 P-value가 0에 가까우므로 귀무가설을 기각하는 것을 확인할 수 있죠

'Statistics > Mathmetical Statistics' 카테고리의 다른 글

주축량(Pivotal Quantity)과 지수분포에서 모수의 신뢰구간 - 시뮬레이션  (0) 2024.12.18
주축량(Pivotal Quantity)과 지수분포에서 모수의 신뢰구간 - 이론  (1) 2024.12.17
[확률과 통계적 추론] 8-3. 비율에 대한 가설검정  (0) 2024.03.25
[확률과 통계적 추론] 8-2. 평균에 대한 가설 검정  (0) 2024.03.21
[확률과 통계적 추론] 8-1. 가설검정(Tests of Statistical Hypothesis )  (0) 2024.03.19
'Statistics/Mathmetical Statistics' 카테고리의 다른 글
  • 주축량(Pivotal Quantity)과 지수분포에서 모수의 신뢰구간 - 시뮬레이션
  • 주축량(Pivotal Quantity)과 지수분포에서 모수의 신뢰구간 - 이론
  • [확률과 통계적 추론] 8-3. 비율에 대한 가설검정
  • [확률과 통계적 추론] 8-2. 평균에 대한 가설 검정
임파카
임파카
[ML & Statistics] 모바일 버전에서 수식 오류가 있어 PC 환경에서 접속하는 것을 권장합니다.
  • 임파카
    무기의 스탯(Stat)
    임파카
  • 전체
    오늘
    어제
    • Study (149)
      • Data Science (44)
        • Modeling (18)
        • Manipulation (21)
        • Visualization (4)
      • Statistics (59)
        • Mathmetical Statistics (53)
        • Categorical DA (1)
      • Web Programming (17)
      • AI (26)
        • Machine Learning (16)
        • Deep Learning (10)
      • 활동 및 프로젝트 (3)
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
임파카
[확률과 통계적 추론] 8-4. 비모수적 검정 (Non-parametric Test)
상단으로

티스토리툴바