모수통계와 비모수통계, 전제와 현실 사이에서 선택하기

두 병원의 환자 대기시간을 비교한다고 하자.

A병원의 대기시간은 대부분 20분에서 40분 사이지만, 응급상황이 발생한 날에는 일부 환자가 3시간 이상 기다린다. B병원도 비슷하지만 극단적으로 오래 기다린 환자는 상대적으로 적다.

두 병원의 평균 대기시간을 비교하기 위해 독립표본 t검정을 사용해야 할까? 아니면 순위를 이용하는 윌콕슨 순위합검정을 사용해야 할까?

통계 입문서에서는 흔히 다음과 같이 구분한다.

자료가 정규분포를 따르면 모수통계를 사용하고, 정규분포를 따르지 않으면 비모수통계를 사용한다.

간단하고 기억하기 쉬운 설명이지만 실제 분석에서는 충분하지 않다.

모수통계가 언제나 정규분포만을 가정하는 것은 아니다. 비모수통계도 아무런 가정이 없는 방법이 아니다. 표본이 작다고 자동으로 비모수검정을 선택해야 하는 것도 아니며, 윌콕슨 검정이 항상 중앙값 차이를 검정하는 것도 아니다.

통계방법을 선택할 때 가장 먼저 확인해야 할 것은 정규성 검정의 p값이 아니다.

다음 질문이 먼저다.

어떤 차이를 알고 싶은가?

평균의 차이를 알고 싶은지, 분포의 전반적인 위치 차이를 알고 싶은지, 중앙값을 비교하려는지, 순서만 의미 있는 자료를 분석하는지에 따라 적절한 방법이 달라진다.

모수통계와 비모수통계의 선택은 정규성 검정 결과에 따라 자동으로 결정되는 절차가 아니다. 연구 질문, 자료의 척도, 표본설계, 분포의 형태와 분석모형의 가정을 함께 검토하는 과정이다.

모수통계는 특정한 확률모형을 이용한다

모수통계는 모집단이나 자료생성과정을 유한한 수의 모수로 표현하는 확률모형을 설정하고, 그 모수를 추정하거나 검정하는 방법이다.

정규분포를 예로 들면 모집단은 평균 \(\mu\)와 분산 \(\sigma^2\)라는 두 모수로 설명된다.

\[
X\sim N(\mu,\sigma^2)
\]

두 집단의 평균 차이를 비교할 때 관심 있는 모수는 다음과 같다.

\[
\mu_1-\mu_2
\]

연구자가 실제로 알고 싶은 것은 표본평균의 단순한 차이만이 아니라, 표본이 추출된 모집단에서 평균이 어느 정도 다른가이다.

모수통계에는 다음과 같은 방법들이 포함된다.

  • t검정
  • 분산분석
  • 선형회귀분석
  • 로지스틱 회귀분석
  • 포아송 회귀분석
  • 생존분석의 여러 모수모형
  • 정규분포 기반 혼합모형

여기서 중요한 사실이 하나 있다.

모수통계가 항상 정규분포를 가정하는 것은 아니다.

로지스틱 회귀는 결과변수가 이항분포와 관련된 모형이고, 포아송 회귀는 건수자료를 포아송분포로 모형화한다. 감마회귀는 양수이면서 오른쪽으로 치우친 자료를 분석할 수 있다.

따라서 “모수통계는 정규분포를 가정한다”는 설명은 일부 방법에만 해당한다.

보다 정확한 표현은 다음과 같다.

모수통계는 분석대상의 확률분포나 평균구조를 특정한 형태의 모수로 표현한다.

비모수통계는 가정이 없는 통계가 아니다

비모수통계는 모집단분포를 평균과 분산 같은 몇 개의 모수로 완전히 특정하지 않거나, 분포의 형태에 대한 가정을 상대적으로 줄인 방법을 말한다.

대표적인 방법은 다음과 같다.

  • 윌콕슨 순위합검정
  • 윌콕슨 부호순위검정
  • 크루스칼–왈리스 검정
  • 프리드먼 검정
  • 스피어만 순위상관계수
  • 켄달 순위상관계수
  • 순열검정
  • 일부 부트스트랩 방법
  • 커널밀도추정

비모수검정에서는 원자료의 실제 값 대신 순위, 부호 또는 관찰된 자료의 재배열을 사용하는 경우가 많다.

그러나 비모수방법에도 가정이 있다.

예를 들어 윌콕슨 순위합검정은 일반적으로 다음을 요구한다.

  • 두 집단의 관측값이 서로 독립적이어야 한다.
  • 결과변수의 값에 순서를 부여할 수 있어야 한다.
  • 표본추출 또는 배정과정이 분석에 적합해야 한다.
  • 중앙값 차이로 해석하려면 두 분포의 모양과 산포가 유사하다는 추가 조건이 필요하다.

윌콕슨 부호순위검정도 차이값의 분포가 대칭이라는 가정과 연결된다.

순열검정은 관측값 또는 집단표지가 귀무가설 아래에서 서로 교환 가능하다는 조건이 필요하다.

따라서 비모수통계를 ‘무가정 통계’라고 부르는 것은 정확하지 않다. Hollander 등(2014)은 비모수방법이 모수적 분포가정을 줄일 수 있지만, 독립성·대칭성·동일한 분포형태와 같은 분석별 조건은 여전히 검토해야 한다고 설명한다.

정규분포를 따르는 것은 원자료인가 오차인가

t검정이나 회귀분석의 정규성 가정을 설명하면서 “데이터가 정규분포를 따라야 한다”고 말하는 경우가 많다.

그러나 분석모형에 따라 정규성이 요구되는 대상은 원자료 전체가 아닐 수 있다.

독립표본 t검정

고전적인 독립표본 t검정에서는 각 집단 안의 결과변수가 정규분포에서 추출되었다고 가정한다. 두 집단을 합친 전체 자료가 하나의 정규분포를 따라야 한다는 뜻은 아니다.

집단의 평균이 다르다면 두 집단을 합친 분포는 봉우리가 두 개이거나 비정규적으로 보일 수 있다.

정규성은 각 집단별로 검토해야 한다.

선형회귀분석

선형회귀분석에서 독립변수 \(X\)가 정규분포를 따라야 하는 것은 아니다. 결과변수 \(Y\) 자체가 반드시 정규분포여야 하는 것도 아니다.

고전적인 소표본 추론에서 정규성은 설명변수가 주어졌을 때 오차항의 조건부 분포와 관련된다.

단순한 선형회귀모형은 다음과 같다.

\[
Y_i=\beta_0+\beta_1X_i+\epsilon_i
\]

여기서 정규성 가정은 일반적으로 다음과 같이 표현된다.

\[
\epsilon_i\sim N(0,\sigma^2)
\]

따라서 회귀분석에서는 원자료의 히스토그램만 보는 것보다 잔차, 선형성, 등분산성과 영향점을 함께 확인해야 한다.

대응표본 t검정

동일한 사람에게서 처치 전후 값을 측정했다면 정규성은 처치 전 점수와 처치 후 점수 각각보다 두 시점의 차이값과 관련된다.

개인 \(i\)의 차이값을 다음과 같이 정의하자.

\[
D_i=Y_{i,\mathrm{after}}-Y_{i,\mathrm{before}}
\]

대응표본 t검정은 이 차이값의 평균이 0인지 검정한다.

원자료 두 집단이 각각 비정규적으로 보여도 차이값은 비교적 대칭적일 수 있다. 반대로 각 시점의 자료가 정규적으로 보여도 차이값에 극단값이 존재할 수 있다.

검정의 단위와 가정을 함께 봐야 하는 이유다.

독립표본 t검정은 평균 차이를 검정한다

두 독립집단의 평균을 비교하는 대표적인 모수검정은 독립표본 t검정이다.

두 집단의 표본평균을 \(\bar{x}_1\)과 \(\bar{x}_2\), 표본분산을 \(s_1^2\)과 \(s_2^2\), 표본크기를 \(n_1\)과 \(n_2\)라고 하자.

Welch t검정의 검정통계량은 다음과 같다.

\[
t=
\frac{\bar{x}_1-\bar{x}_2}
{\sqrt{s_1^2/n_1+s_2^2/n_2}}
\]

Welch t검정은 두 집단의 분산이 같다고 강제로 가정하지 않는다.

R의 t.test()는 독립표본 검정에서 기본적으로 Welch 방식을 사용한다.

t.test(
  sleep_time ~ group,
  data = sleep_data
)
R

두 집단의 분산이 동일하다고 지정하려면 다음처럼 작성해야 한다.

t.test(
  sleep_time ~ group,
  data = sleep_data,
  var.equal = TRUE
)
R

그러나 등분산성이 확실하지 않은 일반적인 상황에서는 Welch t검정을 기본으로 사용하는 것이 안전하다. Ruxton(2006)과 Delacre 등(2017)은 표본크기나 분산이 다른 두 집단을 비교할 때 고전적인 등분산 t검정보다 Welch 검정을 기본 선택으로 고려할 것을 권고한다.

t검정이 답하는 질문

t검정의 핵심 질문은 다음과 같다.

두 모집단의 평균이 같은가?

귀무가설은 다음과 같다.

\[
H_0:\mu_1-\mu_2=0
\]

따라서 연구 질문이 평균 차이에 관한 것이라면 자료가 다소 비정규적이라는 이유만으로 순위검정으로 바꾸는 것이 항상 적절하지는 않다.

순위검정으로 바꾸면 분석방법뿐 아니라 검정하는 대상도 달라질 수 있기 때문이다.

윌콕슨 순위합검정은 단순한 중앙값 검정이 아니다

두 독립집단을 비교하는 대표적인 비모수검정은 윌콕슨 순위합검정이다. Mann–Whitney U검정이라고도 부른다.

이 검정은 두 집단의 관측값을 합쳐 순위를 매긴 뒤 어느 집단에 높은 순위가 더 많이 나타나는지 평가한다.

많은 교재에서는 다음과 같이 설명한다.

t검정은 평균을 비교하고 윌콕슨 검정은 중앙값을 비교한다.

이 설명은 특정한 조건에서는 가능하지만 일반적으로는 정확하지 않다.

Fay와 Proschan(2010)은 윌콕슨–Mann–Whitney 검정이 자료의 가정과 연구설계에 따라 여러 방식으로 해석될 수 있음을 강조한다.

연속형 자료에서 동점이 없다고 가정하면 다음 확률과 연결할 수 있다.

\[
P(X<Y)
\]

이는 X집단에서 무작위로 한 명, Y집단에서 무작위로 한 명을 뽑았을 때 Y집단의 값이 더 클 확률이다.

귀무가설은 흔히 다음과 같은 형태로 이해할 수 있다.

\[
P(X<Y)=0.5
\]

두 집단의 분포형태와 산포가 동일하고 위치만 다르다는 조건이 있다면 이를 중앙값 또는 위치 차이로 해석할 수 있다.

그러나 두 집단의 분산이나 분포모양이 다르면 유의한 결과가 중앙값 차이 때문인지, 산포 차이 때문인지, 분포의 다른 차이 때문인지 구분하기 어렵다.

중앙값이 같아도 윌콕슨 검정은 유의할 수 있다

두 집단의 중앙값은 같지만 한 집단의 값이 더 넓게 퍼져 있거나 분포의 모양이 다를 수 있다.

이 경우 순위의 분포가 달라져 윌콕슨 검정이 유의할 수 있다.

따라서 다음 표현은 신중해야 한다.

윌콕슨 검정 결과 두 집단의 중앙값이 유의하게 달랐다.

두 분포의 형태가 유사하다는 근거가 없다면 다음처럼 작성하는 편이 안전하다.

두 집단의 분포적 위치에서 차이가 관찰되었다.

또는 효과의 의미를 확률적 우월성 관점에서 설명할 수 있다.

모수검정은 이상값에 민감하고 비모수검정은 안전한가

평균과 분산을 사용하는 t검정은 극단값의 영향을 받을 수 있다.

다음 두 자료를 비교해 보자.

  • A집단: 7, 8, 9, 10, 11
  • B집단: 7, 8, 9, 10, 100

B집단의 극단값 100은 평균과 분산을 크게 변화시킨다.

순위검정에서는 100이 가장 높은 순위라는 사실만 반영된다. 100을 1,000으로 바꾸어도 가장 높은 순위라는 점은 변하지 않는다. 이런 의미에서 순위기반 검정은 값의 극단적인 크기에 상대적으로 덜 민감하다.

그러나 비모수검정이 이상값 문제를 자동으로 해결하는 것은 아니다.

극단값이 다음과 같은 원인에서 발생했다면 별도의 검토가 필요하다.

  • 데이터 입력 오류
  • 측정단위 혼용
  • 다른 모집단의 혼입
  • 측정기기의 고장
  • 실제로 중요한 희귀사례

순위로 바꾸어 분석한다고 잘못된 데이터가 올바른 데이터가 되는 것은 아니다.

또한 극단값의 크기가 연구에서 중요할 수 있다. 의료비, 손실액, 고객생애가치와 같이 큰 값이 실제 총비용에 영향을 주는 문제에서는 평균 차이를 분석하는 것이 실질적으로 중요한 질문일 수 있다.

비모수검정을 선택하면 극단값의 영향은 줄지만, 연구자가 알고 싶었던 평균 차이라는 질문에서 멀어질 수도 있다.

표본이 작으면 비모수검정이 더 안전한가

표본크기가 작으면 모집단분포를 충분히 확인하기 어렵다. 이 때문에 자동으로 비모수검정을 선택하는 경우가 많다.

그러나 작은 표본은 비모수검정에도 어렵다.

표본이 매우 작으면 가능한 순위배열의 수가 제한되어 p값이 거칠게 변한다. 동점이 많으면 정확검정이 어려워지거나 근사방법에 의존해야 한다. 무엇보다 작은 표본에서는 어떤 방법을 사용하더라도 효과의 불확실성이 크다.

Fagerland(2012)는 큰 표본과 작은 표본에서 t검정과 비모수검정을 기계적으로 구분하는 관행이 적절하지 않으며, 연구 질문과 자료의 특성을 함께 고려해야 한다고 설명한다.

작은 표본에서 정규성 검정은 검정력이 약하다

표본이 10명인 자료에서 Shapiro–Wilk 검정 결과가 유의하지 않았다고 하자.

이를 “정규분포가 확인되었다”고 해석해서는 안 된다. 표본이 작으면 실제로 비정규분포여도 검정이 이를 발견하지 못할 수 있다.

반대로 표본이 수천 명이면 분석에 큰 문제가 되지 않는 작은 비정규성도 통계적으로 유의하게 나타날 수 있다.

정규성 검정은 다음 귀무가설을 평가한다.

\[
H_0:\text{자료는 정규분포와 양립한다}
\]

p값이 크다는 것은 정규분포가 증명되었다는 뜻이 아니다. 현재 표본에서 정규성을 기각할 근거가 충분하지 않다는 뜻이다.

Ghasemi와 Zahediasl(2012)은 정규성 검정만으로 분석방법을 결정하지 말고 그래프, 표본크기, 극단값과 분석의 강건성을 함께 살펴볼 것을 권고한다.

t검정은 비정규성에 얼마나 강한가

t검정은 원자료가 정규분포에서 조금만 벗어나도 즉시 무효가 되는 검정은 아니다.

표본크기가 충분하고 두 집단의 표본크기가 비슷하며 극단값이 심하지 않다면 평균 차이에 대한 t검정은 일정한 비정규성에 비교적 강건하게 작동할 수 있다.

중심극한정리에 따라 표본평균의 분포가 정규분포에 가까워질 수 있기 때문이다.

Lumley 등(2002)은 큰 공중보건 자료에서 원자료의 정규성보다 극단적인 꼬리, 표본설계와 분석모형의 적절성이 더 중요한 문제가 될 수 있음을 설명한다.

다만 다음 조건에서는 주의가 필요하다.

  • 표본크기가 매우 작다.
  • 분포가 극단적으로 비대칭이다.
  • 매우 큰 이상값이 존재한다.
  • 두 집단의 표본크기가 크게 다르다.
  • 분산도 크게 다르다.
  • 관측값이 서로 독립적이지 않다.

특히 표본크기 불균형과 이분산성이 동시에 존재하면 등분산 t검정의 제1종 오류율이 크게 왜곡될 수 있다(Zimmerman, 1998).

이때는 Welch t검정, 변환, 강건한 추정, 순열검정이나 적절한 일반화선형모형을 고려할 수 있다.

등분산성 검정 후 t검정을 선택하는 방식의 문제

전통적인 분석절차에서는 먼저 Levene 검정이나 F검정으로 등분산성을 확인한 뒤 다음처럼 방법을 선택하기도 한다.

  • 등분산성 검정이 유의하지 않으면 등분산 t검정
  • 등분산성 검정이 유의하면 Welch t검정

하지만 이 사전검정 방식은 권장하기 어렵다.

등분산성 검정도 표본오차를 가지므로 작은 표본에서는 분산 차이를 발견하지 못할 수 있다. 분석방법을 데이터의 사전검정 결과에 따라 바꾸면 전체 검정의 오류율과 해석도 복잡해진다.

Welch t검정은 분산이 같을 때도 대체로 효율 손실이 크지 않고, 분산이 다를 때는 더 안전하다. 따라서 특별한 이유가 없다면 처음부터 Welch 검정을 사용하는 것이 단순하고 안정적이다(Ruxton, 2006; Delacre et al., 2017).

비모수검정이 항상 검정력이 낮은 것은 아니다

모수검정은 가정이 정확히 맞을 때 모집단의 수치정보를 충분히 활용하므로 높은 효율을 가질 수 있다.

비모수검정은 값을 순위로 변환하는 과정에서 일부 정보를 사용하지 않으므로 정규분포 아래에서는 모수검정보다 검정력이 조금 낮을 수 있다.

그러나 비모수검정이 언제나 덜 강력한 것은 아니다.

분포가 꼬리가 두껍거나 이상값이 많다면 순위검정이 t검정보다 높은 검정력을 가질 수 있다. 반대로 두 집단의 차이가 평균에서만 나타나고 순위구조에는 잘 드러나지 않는다면 t검정이 더 적합할 수 있다.

검정력은 다음 요소에 따라 달라진다.

  • 실제 효과의 형태
  • 모집단분포
  • 이상값과 꼬리
  • 표본크기
  • 집단별 분산
  • 검정하려는 가설
  • 측정척도
  • 동점의 수

“모수검정은 강력하고 비모수검정은 약하다”는 단순한 서열은 적절하지 않다.

모수검정과 비모수검정은 같은 질문에 답하지 않을 수 있다

두 집단을 비교하는 대표적 방법을 표로 정리하면 다음과 같다.

연구 질문모수적 접근비모수적 접근
두 독립집단의 평균 비교Welch t검정직접 대응 없음
두 독립집단의 분포적 위치 비교위치모형윌콕슨 순위합검정
동일 대상 전후 평균 차이대응표본 t검정윌콕슨 부호순위검정
세 집단 이상 평균 비교Welch ANOVA 또는 ANOVA크루스칼–왈리스 검정
선형 연관성피어슨 상관계수스피어만·켄달 상관계수
평균을 공변량과 함께 분석선형회귀순위회귀·분위수회귀 등

윌콕슨 검정을 t검정의 ‘가정 없는 버전’으로만 이해하면 두 방법이 추정하는 효과의 차이를 놓치게 된다.

분석방법을 선택하기 전에 다음을 명확히 해야 한다.

평균의 차이를 알고 싶은가, 분포의 순서적 차이를 알고 싶은가?

중앙값을 비교하려면 중앙값에 맞는 방법이 필요하다

연구 질문이 명확하게 중앙값 차이에 관한 것이라면 윌콕슨 검정이 자동으로 정답이 되는 것은 아니다.

중앙값 자체를 비교하거나 조건부 중앙값을 모형화하려면 다음 방법들을 고려할 수 있다.

  • 분위수회귀
  • 중앙값 회귀
  • 중앙값 차이의 부트스트랩 신뢰구간
  • 적절한 순열검정
  • 중앙값 검정

분위수회귀는 결과변수의 평균 대신 특정 분위수를 설명한다.

중앙값을 대상으로 한 단순한 모형은 다음처럼 표현할 수 있다.

\[
Q_{0.5}(Y|X)=\beta_0+\beta_1X
\]

여기서 \(Q_{0.5}\)는 조건부 중앙값이다.

이 접근은 집단 차이를 중앙값으로 직접 해석하고 싶을 때 유용하다. 다만 표본크기와 표준오차 추정방법을 신중하게 선택해야 한다.

서열자료에는 비모수검정이 항상 필요한가

만족도를 다음과 같이 측정했다고 하자.

  • 매우 불만족
  • 불만족
  • 보통
  • 만족
  • 매우 만족

단일 리커트형 문항은 기본적으로 서열자료다. 범주의 순서는 알 수 있지만 인접 범주 간 차이가 동일하다고 보장하기 어렵다.

이 경우 순위기반 검정을 사용할 수 있다. 그러나 비모수검정만이 유일한 선택은 아니다.

서열형 결과를 직접 모형화하는 순서형 로지스틱 회귀를 사용할 수도 있다. 이 방법은 공변량을 함께 조정하고 범주별 누적확률을 분석할 수 있다.

반대로 여러 문항을 합산해 만든 척도점수는 충분한 범위와 신뢰도를 가지며 실무적으로 연속변수처럼 분석되기도 한다. 이때는 평균과 선형모형을 사용할 수 있지만 척도구성, 분포와 연구목적을 함께 검토해야 한다.

척도만으로 분석법을 기계적으로 결정해서는 안 된다.

범주형 자료가 모두 비모수통계인 것은 아니다

카이제곱검정은 모집단의 정규분포를 가정하지 않기 때문에 비모수검정으로 분류되는 경우가 많다.

하지만 범주형 자료분석 전체를 비모수통계라고 묶는 것은 정확하지 않다.

로지스틱 회귀는 이항결과를 분석하지만 회귀계수라는 유한한 모수를 가진 명확한 모수모형이다.

예를 들어 구매 여부를 \(Y\), 광고노출 여부를 \(X\)라고 하면 로지스틱 회귀모형은 다음과 같이 표현할 수 있다.

\[
\log\frac{p}{1-p}=\beta_0+\beta_1X
\]

결과변수가 범주형이라는 사실과 모형이 모수적인지는 별개의 문제다.

또한 비모수검정이 서열자료와 연속자료에만 적용되는 것도 아니다. 통계방법의 분류는 자료형 하나만으로 결정되지 않는다.

로그변환은 모수통계를 살리는 만능도구가 아니다

오른쪽으로 치우친 자료에 로그변환을 적용하는 경우가 많다.

원래 관측값을 \(Y\)라고 하면 로그변환은 다음과 같다.

\[
Y^*=\log(Y)
\]

로그변환은 큰 값을 압축해 분포의 비대칭성과 이분산성을 줄일 수 있다.

그러나 변환 후 분석결과가 답하는 질문은 원래 척도의 산술평균 차이와 다를 수 있다.

로그척도에서의 평균 차이를 지수변환하면 대체로 기하평균의 비율과 연결된다.

\[
\exp(\bar{Y}_1^-\bar{Y}_2^)
\]

따라서 로그변환을 선택할 때는 단순히 정규성을 높이는 것뿐 아니라 다음을 확인해야 한다.

  • 로그척도의 효과가 연구 질문에 적합한가?
  • 0이나 음수가 존재하는가?
  • 변환 후 잔차구조가 개선되는가?
  • 원래 척도로 어떻게 해석할 것인가?
  • 평균, 중앙값 또는 비율 중 어떤 효과를 원하는가?

정규성 검정의 p값을 유의하지 않게 만들기 위해 변환을 반복하는 것은 좋은 분석전략이 아니다.

모수와 비모수 사이에는 다른 선택지도 있다

실제 분석은 모수검정과 순위검정 중 하나만 고르는 문제가 아니다.

Welch 검정

평균 차이가 연구 질문이지만 두 집단의 분산이 다를 가능성이 있다면 Welch t검정이나 Welch ANOVA를 사용할 수 있다.

강건한 통계방법

절사평균, M추정량과 강건한 회귀분석은 평균 기반 분석과 순위기반 분석 사이의 대안을 제공한다(Wilcox, 2017).

20% 절사평균은 정렬된 자료의 양쪽에서 각각 20%를 제외하고 평균을 계산한다.

R에서는 다음처럼 계산할 수 있다.

mean(
  x,
  trim = 0.20,
  na.rm = TRUE
)
R

순열검정

귀무가설 아래에서 집단표지가 교환 가능하다면 관측된 통계량을 집단표지의 재배열 결과와 비교할 수 있다.

순열검정은 평균 차이 자체를 검정통계량으로 사용할 수도 있다. 따라서 평균 차이가 관심 대상이지만 정규분포 가정에 덜 의존하고 싶을 때 고려할 수 있다(Edgington & Onghena, 2007).

부트스트랩

부트스트랩은 관찰된 표본에서 복원추출을 반복해 평균, 중앙값, 비율과 회귀계수의 표집분포를 근사한다(Efron & Tibshirani, 1993).

그러나 부트스트랩도 표본의 대표성, 독립성과 재표집 단위가 적절해야 한다.

일반화선형모형

건수자료에는 포아송 또는 음이항 회귀, 이항자료에는 로지스틱 회귀, 양수의 오른쪽 치우친 연속자료에는 감마회귀를 고려할 수 있다.

원자료를 정규분포에 억지로 맞추기보다 자료생성과정에 적절한 분포를 선택하는 접근이다.

분위수회귀

평균이 아니라 중앙값이나 상위 분위수의 차이가 중요하면 분위수회귀가 적합할 수 있다.

대기시간이나 의료비처럼 분포가 치우친 자료에서 평균효과와 중앙값효과가 다를 수 있기 때문이다.

R로 모수검정과 비모수검정 비교하기

두 집단의 수면시간을 비교하는 가상자료를 만들어보자.

set.seed(2026)

sleep_data <- data.frame(
  group = rep(
    c("A", "B"),
    each = 30
  ),
  sleep_time = c(
    rnorm(
      30,
      mean = 6.5,
      sd = 0.8
    ),
    rnorm(
      30,
      mean = 7.0,
      sd = 1.4
    )
  )
)
R

먼저 집단별 기술통계를 확인한다.

aggregate(
  sleep_time ~ group,
  data = sleep_data,
  FUN = function(x) {
    c(
      n = length(x),
      mean = mean(x),
      median = median(x),
      sd = sd(x),
      IQR = IQR(x)
    )
  }
)
R

그래프로 분포 확인하기

상자그림을 그려 집단별 분포와 이상값을 확인한다.

boxplot(
  sleep_time ~ group,
  data = sleep_data,
  xlab = "집단",
  ylab = "수면시간",
  main = "집단별 수면시간"
)
R

집단별 Q-Q 그림도 확인할 수 있다.

par(
  mfrow = c(1, 2)
)

qqnorm(
  sleep_data$sleep_time[
    sleep_data$group == "A"
  ],
  main = "A집단 Q-Q 그림"
)

qqline(
  sleep_data$sleep_time[
    sleep_data$group == "A"
  ]
)

qqnorm(
  sleep_data$sleep_time[
    sleep_data$group == "B"
  ],
  main = "B집단 Q-Q 그림"
)

qqline(
  sleep_data$sleep_time[
    sleep_data$group == "B"
  ]
)

par(
  mfrow = c(1, 1)
)
R

그래프는 정규성 검정 하나보다 비대칭, 꼬리와 극단값을 구체적으로 보여준다.

Welch t검정 실행하기

welch_result <- t.test(
  sleep_time ~ group,
  data = sleep_data
)

welch_result
R

R의 기본 독립표본 t검정은 Welch 방식이다.

결과에서 다음 정보를 확인한다.

  • 두 집단 평균의 추정값
  • 평균 차이에 대한 검정
  • 자유도
  • p값
  • 신뢰구간

이 검정의 질문은 두 모집단 평균이 같은지다.

윌콕슨 순위합검정 실행하기

wilcox_result <- wilcox.test(
  sleep_time ~ group,
  data = sleep_data,
  exact = FALSE,
  conf.int = TRUE
)

wilcox_result
R

이 검정은 관측값을 순위로 바꾸어 두 집단의 분포적 위치 차이를 평가한다.

t.test()wilcox.test()의 p값이 비슷하게 나올 수 있지만 같은 가설을 검정한다고 단정해서는 안 된다.

결과를 함께 보고하기

분석 목적이 평균 차이라면 다음과 같이 작성할 수 있다.

A집단과 B집단의 평균 수면시간 차이는 Welch t검정으로 분석하였다. B집단의 평균 수면시간이 더 길었으며, 평균 차이와 95% 신뢰구간을 함께 제시하였다.

분포적 위치의 차이가 연구 질문이라면 다음처럼 쓸 수 있다.

두 집단의 수면시간 분포를 윌콕슨 순위합검정으로 비교하였다. 검정은 관측값의 순위를 사용했으며 두 분포의 형태가 동일하다는 조건 없이 중앙값 검정으로 단정하지 않았다.

극단값이 있는 자료에서 결과 비교하기

오른쪽으로 치우치고 극단값이 포함된 대기시간 자료를 만들어보자.

waiting_data <- data.frame(
  hospital = rep(
    c("A", "B"),
    each = 20
  ),
  waiting_time = c(
    18, 20, 21, 22, 24,
    25, 27, 28, 29, 30,
    31, 32, 33, 34, 35,
    36, 38, 40, 45, 180,
    20, 21, 22, 23, 24,
    25, 26, 27, 28, 29,
    30, 31, 32, 33, 34,
    35, 36, 37, 38, 50
  )
)
R

집단별 평균과 중앙값을 확인한다.

aggregate(
  waiting_time ~ hospital,
  data = waiting_data,
  FUN = function(x) {
    c(
      mean = mean(x),
      median = median(x),
      sd = sd(x),
      IQR = IQR(x)
    )
  }
)
R

A병원의 180분 관측값 때문에 평균과 표준편차가 크게 달라질 수 있다.

Welch t검정을 실행한다.

t.test(
  waiting_time ~ hospital,
  data = waiting_data
)
R

윌콕슨 순위합검정을 실행한다.

wilcox.test(
  waiting_time ~ hospital,
  data = waiting_data,
  exact = FALSE
)
R

두 검정은 서로 다른 결과를 보일 수 있다.

이때 어느 검정의 p값이 더 마음에 드는지를 기준으로 선택해서는 안 된다.

  • 전체 평균 대기시간과 총 운영부담이 중요하다면 평균 차이가 중요한 질문일 수 있다.
  • 전형적인 환자의 대기경험이 중요하다면 중앙값이나 분위수 분석이 더 적합할 수 있다.
  • 극단적인 장기대기의 원인을 알고 싶다면 상위 분위수나 꼬리위험을 별도로 분석해야 할 수 있다.

하나의 p값으로 모든 질문에 답할 수는 없다.

기본 R로 평균 차이 순열검정 만들기

두 병원의 평균 대기시간 차이를 정규분포 가정에 덜 의존해 검정하고 싶다면 순열검정을 사용할 수 있다.

먼저 실제 평균 차이를 계산한다.

group_a <- waiting_data$waiting_time[
  waiting_data$hospital == "A"
]

group_b <- waiting_data$waiting_time[
  waiting_data$hospital == "B"
]

observed_difference <-
  mean(group_a) -
  mean(group_b)
R

집단표지를 반복해서 무작위로 섞는다.

set.seed(2026)

all_values <- waiting_data$waiting_time
n_a <- length(group_a)
R <- 5000L

permuted_differences <- replicate(
  R,
  {
    shuffled_values <- sample(
      all_values,
      size = length(all_values),
      replace = FALSE
    )

    mean(
      shuffled_values[
        seq_len(n_a)
      ]
    ) -
    mean(
      shuffled_values[
        (n_a + 1L):length(shuffled_values)
      ]
    )
  }
)
R

양측 p값을 계산한다.

permutation_p_value <-
  (
    sum(
      abs(permuted_differences) >=
        abs(observed_difference)
    ) +
      1
  ) /
  (R + 1)

permutation_p_value
R

이 검정은 평균 차이를 검정통계량으로 사용하지만 집단표지의 교환 가능성을 전제로 한다.

관찰연구에서 두 집단의 구성 자체가 체계적으로 다르면 단순한 집단표지 순열이 적절하지 않을 수 있다. 순열검정도 연구설계를 반영해야 한다.

부트스트랩으로 중앙값 차이의 신뢰구간 구하기

두 집단 중앙값 차이가 연구 질문이라면 각 집단 안에서 복원추출해 중앙값 차이의 분포를 만들 수 있다.

set.seed(2026)

R <- 5000L

bootstrap_median_difference <- replicate(
  R,
  {
    bootstrap_a <- sample(
      group_a,
      size = length(group_a),
      replace = TRUE
    )

    bootstrap_b <- sample(
      group_b,
      size = length(group_b),
      replace = TRUE
    )

    median(bootstrap_a) -
      median(bootstrap_b)
  }
)

quantile(
  bootstrap_median_difference,
  probs = c(0.025, 0.975),
  na.rm = TRUE
)
R

이 코드는 교육용 백분위수 부트스트랩이다.

실제 연구에서는 다음을 추가로 검토해야 한다.

  • 표본크기가 충분한가?
  • 관측값은 독립적인가?
  • 중앙값 주변에 동점이 많은가?
  • 군집 또는 반복측정 구조가 있는가?
  • 다른 부트스트랩 신뢰구간 방식이 필요한가?

부트스트랩은 분석가정을 줄일 수 있지만 잘못된 표본설계를 해결하지는 않는다.

대응자료에서는 독립검정을 사용하면 안 된다

같은 환자의 처치 전후 혈압을 측정했다면 두 집단은 독립적이지 않다.

대응표본 t검정은 다음처럼 실행한다.

before <- c(
  150, 145, 160, 155,
  148, 152, 158, 149
)

after <- c(
  142, 140, 151, 149,
  145, 147, 150, 146
)

t.test(
  before,
  after,
  paired = TRUE
)
R

비모수적 대응검정은 다음과 같다.

wilcox.test(
  before,
  after,
  paired = TRUE,
  exact = FALSE
)
R

독립표본 윌콕슨 검정과 대응표본 윌콕슨 부호순위검정은 다른 방법이다.

자료가 모수적인지 비모수적인지를 고민하기 전에 표본이 독립인지 대응인지부터 확인해야 한다.

연구설계를 잘못 지정하면 정규성 선택보다 훨씬 큰 오류가 발생한다.

모수와 비모수 방법을 한눈에 비교하기

구분모수적 방법비모수적 방법
기본 접근특정 확률모형과 모수를 설정분포형태 가정을 줄이거나 순위·부호 활용
대표 관심량평균, 분산, 회귀계수, 비율순위, 분포적 위치, 확률적 우월성 등
대표 방법t검정, ANOVA, 회귀분석윌콕슨, 크루스칼–왈리스, 순위상관
정규분포일부 방법에서 필요일반적으로 직접 요구하지 않음
독립성필요대체로 필요
이상값평균·분산 기반 방법은 민감할 수 있음순위방법은 상대적으로 덜 민감
작은 표본모형가정이 중요정확검정 가능하나 검정력과 동점 문제 존재
해석모수에 직접 연결방법별 귀무가설과 해석을 확인해야 함
주요 장점가정이 적절하면 효율적이고 해석이 명확분포가정에 덜 민감하고 서열자료에 유용
주요 한계모형오류와 극단값에 민감할 수 있음같은 이름 아래에서도 가정과 해석이 다양함

이 표는 출발점일 뿐 자동 선택표가 아니다.

분석방법을 선택하는 실무 절차

연구 질문을 먼저 정의한다

다음 중 무엇을 알고 싶은지 명확히 해야 한다.

  • 평균이 다른가?
  • 중앙값이 다른가?
  • 한 집단에서 더 큰 값이 나올 확률이 높은가?
  • 전체 분포가 다른가?
  • 공변량을 고려한 조건부 차이가 있는가?
  • 상위 90% 지점에서 차이가 있는가?

질문이 다르면 분석방법도 달라진다.

표본설계를 확인한다

  • 독립표본인가?
  • 대응표본인가?
  • 반복측정인가?
  • 군집자료인가?
  • 층화·가중치가 있는 조사자료인가?

독립성을 잘못 가정하면 어떤 검정을 사용해도 표준오차가 틀릴 수 있다.

자료의 척도와 범위를 확인한다

  • 명목형인가?
  • 서열형인가?
  • 연속형인가?
  • 0 이상의 건수인가?
  • 비율이나 확률인가?
  • 검출한계나 상한이 있는가?

자료형에 맞는 확률모형을 고려해야 한다.

분포를 시각적으로 확인한다

  • 히스토그램
  • 상자그림
  • Q-Q 그림
  • 집단별 산점도
  • 원자료 점도표

정규성 검정의 p값 하나보다 분포의 형태와 극단값을 구체적으로 확인하는 것이 중요하다.

모형가정을 확인한다

정규성 외에도 다음을 확인해야 한다.

  • 독립성
  • 등분산성
  • 선형성
  • 이상값과 영향점
  • 표본크기 불균형
  • 결측자료 구조
  • 군집과 반복측정

민감도 분석을 실시한다

합리적인 두 방법의 결과를 비교할 수 있다.

  • Welch t검정과 순위검정
  • 원척도와 로그척도
  • 평균과 절사평균
  • 전통적 표준오차와 강건한 표준오차
  • 모수적 신뢰구간과 부트스트랩 신뢰구간

결과가 크게 다르면 한쪽을 숨기기보다 왜 차이가 발생했는지 설명해야 한다.

자주 발생하는 선택 오류

정규성 검정이 유의하면 무조건 비모수검정을 사용한다

큰 표본에서는 사소한 비정규성도 유의할 수 있다. 연구 질문이 평균 차이라면 Welch t검정이나 강건한 평균추론이 더 적절할 수 있다.

정규성 검정이 유의하지 않으면 정규분포가 증명되었다고 생각한다

작은 표본에서는 정규성 검정의 검정력이 부족하다. 그래프와 배경지식을 함께 검토해야 한다.

표본이 작으면 비모수검정이 항상 안전하다고 생각한다

작은 표본에서는 비모수검정도 검정력이 낮고 p값이 제한적으로 변할 수 있다. 표본이 작다는 문제는 방법을 바꾸는 것만으로 해결되지 않는다.

윌콕슨 검정을 중앙값 검정이라고 단정한다

두 분포의 모양과 산포가 다르면 윌콕슨 검정은 중앙값 이외의 차이에도 반응할 수 있다.

비모수검정에는 가정이 없다고 생각한다

독립성, 교환 가능성, 대칭성과 동일한 분포형태 같은 조건이 방법별로 존재한다.

등분산성 검정 결과에 따라 t검정 종류를 바꾼다

특별한 이유가 없다면 Welch t검정을 기본으로 사용하는 것이 더 단순하고 안정적이다.

p값이 더 작게 나오는 방법을 선택한다

분석방법은 결과를 본 뒤 선택해서는 안 된다. 연구 질문과 자료구조에 따라 사전에 결정해야 한다.

분석방법만 바꾸면 연구설계 문제가 해결된다고 생각한다

편향된 표본, 교란, 측정오차와 비응답편향은 비모수검정으로 해결되지 않는다.

논문과 보고서에는 무엇을 밝혀야 할까

분석방법을 보고할 때 “정규성이 충족되지 않아 비모수검정을 사용했다”는 한 문장만으로는 충분하지 않다.

다음 정보를 함께 제시하는 것이 좋다.

  1. 비교하려는 효과는 무엇인가?
  2. 독립표본인지 대응표본인지?
  3. 어떤 그래프로 분포를 확인했는가?
  4. 이상값은 어떻게 검토했는가?
  5. 어떤 가정이 중요한가?
  6. t검정이라면 Welch 방식인지 등분산 방식인지?
  7. 순위검정의 결과를 무엇의 차이로 해석했는가?
  8. 효과크기와 신뢰구간을 제시했는가?
  9. 다중비교를 어떻게 처리했는가?
  10. 분석방법이 연구 전에 정해졌는가?
  11. 민감도 분석을 수행했는가?
  12. 결측자료와 군집구조를 어떻게 처리했는가?

예를 들어 다음처럼 작성할 수 있다.

두 독립집단의 평균 수면시간은 분산이 같다는 가정을 요구하지 않는 Welch t검정으로 비교하였다. 집단별 분포는 상자그림과 Q-Q 그림으로 확인했으며, 평균 차이와 95% 신뢰구간을 함께 제시하였다.

비모수검정을 사용했다면 다음처럼 작성할 수 있다.

결과변수가 서열형이고 집단별 분포가 비대칭적이어서 윌콕슨 순위합검정을 사용하였다. 검정결과는 중앙값 차이로 단정하지 않고 두 집단의 분포적 위치 차이로 해석하였다.

전제를 믿는 것보다 전제를 설명하는 것이 중요합니다

모수통계는 모집단과 자료생성과정을 특정한 확률모형으로 표현한다. 가정이 적절하면 평균, 회귀계수와 효과크기를 효율적으로 추정할 수 있다.

비모수통계는 분포형태에 관한 가정을 줄이고 순위, 부호와 재배열을 활용한다. 비대칭자료, 서열자료와 이상값이 있는 자료에서 유용할 수 있다.

하지만 두 방법을 다음처럼 단순하게 나누면 안 된다.

정규분포면 모수통계, 비정규분포면 비모수통계.

실제 선택에는 연구 질문, 표본설계, 독립성, 자료의 척도, 분산, 극단값과 원하는 효과의 해석이 함께 들어간다.

비전공자는 다음 네 문장을 기억하면 된다.

평균 차이를 알고 싶다면 평균을 직접 분석하는 방법을 먼저 검토한다.

순위검정은 t검정의 단순한 대체품이 아니며 다른 가설을 검정할 수 있다.

비모수통계도 독립성, 대칭성 또는 교환 가능성과 같은 가정을 가진다.

정규성 검정의 p값보다 연구 질문과 자료구조가 먼저다.

좋은 통계분석은 가정이 없는 방법을 찾는 일이 아니다. 어떤 가정을 사용했고, 그 가정이 현실에서 얼마나 타당하며, 가정이 달라질 때 결론이 어떻게 변하는지를 투명하게 설명하는 일이다.

참고문헌

Delacre, M., Lakens, D., & Leys, C. (2017). Why psychologists should by default use Welch’s t-test instead of Student’s t-test. International Review of Social Psychology, 30(1), 92–101. https://doi.org/10.5334/irsp.82

Edgington, E. S., & Onghena, P. (2007). Randomization tests (4th ed.). Chapman & Hall/CRC. https://doi.org/10.1201/9781420011814

Efron, B., & Tibshirani, R. J. (1993). An introduction to the bootstrap. Chapman & Hall/CRC. https://doi.org/10.1201/9780429246593

Fagerland, M. W. (2012). t-tests, non-parametric tests, and large studies—A paradox of statistical practice? BMC Medical Research Methodology, 12, 78. https://doi.org/10.1186/1471-2288-12-78

Fay, M. P., & Proschan, M. A. (2010). Wilcoxon–Mann–Whitney or t-test? On assumptions for hypothesis tests and multiple interpretations of decision rules. Statistics Surveys, 4, 1–39. https://doi.org/10.1214/09-SS051

Ghasemi, A., & Zahediasl, S. (2012). Normality tests for statistical analysis: A guide for non-statisticians. International Journal of Endocrinology and Metabolism, 10(2), 486–489. https://doi.org/10.5812/ijem.3505

Hollander, M., Wolfe, D. A., & Chicken, E. (2014). Nonparametric statistical methods (3rd ed.). Wiley. https://doi.org/10.1002/9781119196037

Lumley, T., Diehr, P., Emerson, S., & Chen, L. (2002). The importance of the normality assumption in large public health data sets. Annual Review of Public Health, 23, 151–169. https://doi.org/10.1146/annurev.publhealth.23.100901.140546

Ruxton, G. D. (2006). The unequal variance t-test is an underused alternative to Student’s t-test and the Mann–Whitney U test. Behavioral Ecology, 17(4), 688–690. https://doi.org/10.1093/beheco/ark016

Shapiro, S. S., & Wilk, M. B. (1965). An analysis of variance test for normality: Complete samples. Biometrika, 52(3–4), 591–611. https://doi.org/10.1093/biomet/52.3-4.591

Wilcox, R. R. (2017). Introduction to robust estimation and hypothesis testing (4th ed.). Academic Press.

Zimmerman, D. W. (1998). Invalidation of parametric and nonparametric statistical tests by concurrent violation of two assumptions. The Journal of Experimental Education, 67(1), 55–68. https://doi.org/10.1080/00220979809598344

scroll to the top of the site