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