독립표본 t-검정

서로 다른 두 집단의 차이는 우연인가, 유의한 차이인가

by Yimhyehwa



1. Learning Focus


우리는 모집단과 표본을 구분하는 것을 시작으로 데이터의 중심과 산포를 살펴봤습니다. 이어서 표본 분산 계산 시에 분모를 n-1로 나누는 원리를 통해 모수 추정의 불편을 제거하기 위한 통계학의 지혜를 엿보았고, 데이터 분포를 이해하고 해석하는 개념인 PDF(확률밀도함수), CDF(누적분포함수), 정규분포, 표준정규분포, z-score를 배웠습니다. 이후 중심극한정리(CLT)와 평균의 표준오차(SEM)를 통해 표본 평균이 어떻게 분포하는지를 이해했고, 이를 바탕으로 신뢰구간(CI)과 가설검정, 단일표본 t-검정, 그리고 효과가 있음에도 이를 놓칠 가능성을 살펴보는 검정력에 대해 살펴봤습니다.


여기까지의 흐름을 하나의 질문으로 정리하면, "표본을 이용해서 모수에 대한 특성을 추정하고, 이러한 추정이 통계적으로 유의하다고 말할 수 있는가?"에 관한 것이었습니다. 그런데 이는 주로 하나의 평균만을 다뤘습니다. 고객에 대한 상품 배송에 걸리는 평균 소요시간이 우리가 목표로 하는 기준 값과 다른지를 묻는 식이었습니다.


하지만 실제 분석에서는 "서로 다른 두 집단의 평균은 실제 통계적으로 유의한 차이인가?"를 다루기도 합니다. 예를 들면, 광고 A-시나리오와 B-시나리오에 대한 평균 클릭률, 두 매장의 평균 구매금액, A/B 프로모션 방식에 따른 평균 전환율이 통계적으로 다르다고 말할 수 있는지 등입니다. 이러한 질문에 대해 적합한 통계검정 방식이 독립표본 t-검정(Independent samples t-test) 입니다. 단일표본 t-검정에 이어 오늘은 독립표본 t-검정에 대해 살펴보겠습니다.


2. 독립표본 t-검정이 필요한 이유


독립표본 t-검정은 서로 독립된 두 집단의 평균 차이를 검정하는 방법입니다. 이 검정의 전제 조건은 두 가지입니다. 첫째는 집단이 두 개여야 한다는 것, 둘째는 한 집단의 관측 값이 다른 집단의 관측 값과 짝지어져 있지 않아야 한다(집단 간 독립성)는 것입니다.


예를 들면 광고 A를 본 지역 15곳과 광고 B를 본 다른 지역 15곳의 클릭률 데이터를 비교한다고 할 때, 이 두 집단은 서로 독립적이라고 볼 수 있습니다. 반대로 같은 고객에게 광고 전/후의 반응을 측정한다면, 이는 독립표본 t-검정이 아니라 대응표본 t-검정(Paried samples t-test)을 해야 합니다. 즉, 독립표본 t-검정은 "서로 다른 두 집단의 평균 차이가 단지 우연한 표본의 오차로 설명될 정도인지, 아니면 실제 통계적으로 유의한 차이라고 볼 정도인지"를 판단하는 검정입니다.


3. 독립표본 t-검정의 전제조건


독립표본 t-검정의 절차를 살펴보기 전에, 이 검정은 크게 네 가지의 전제조건이 있습니다. 데이터의 독립성입니다. 각 관측값은 서로 독립적이어야 합니다. 한 집단의 값이 다른 집단의 값에 직접 연결되어 있으면 안 됩니다. 종속변수가 연속형 변수의 성격이어야 합니다. 우리가 비교하고자 하는 두 집단의 값은 기본적으로 수치형(Numerical)이어야 합니다. 광고 클릭률, 구매금액, 반응시간 등이 해당합니다. 만족도 점수의 경우도 통계적으로는 연속형 변수로 Setting 하여 처리하기도 합니다. 분포의 정규성입니다. 각 집단의 분포가 크게 왜곡되지 않았다고 가정합니다. 표본크기가 작으면 이 점이 더욱 중요해집니다. 등분산성입니다. 전통적인 t-검정(Student t-test)에 따르면 두 집단의 분산이 같다고 가정합니다. 하지만 현실에서는 이 가정이 자주 깨지기 때문에 실무에서는 Welch t-test를 활용하기도 합니다.

※ 독립된 두 집단 간의 분산이 크게 다르지 않다면, 전통적인 등분산 가정의 t-검정과 Welch 검정의 결과가 거의 비슷할 가능성이 높으나 어떤 경우에는 한 집단의 분산이 훨씬 크거나 표본의 크기도 서로 다를 수 있습니다. 이런 상황에서는 등분산 가정을 억지로 두면 p-value가 왜곡될 수 있습니다. Welch t-test는 이 문제를 완화하기 위해 분산이 서로 다를 수 있음을 허용하고 자유도를 조정하는 방법입니다.


4. Data Set: 광고 클릭률(CTR)


가상의 광고마케팅 대행사가 있습니다. 이 기업은 디지털 광고 캠페인 A와 B 전략을 시행했고, A와 B를 각각 15곳의 지역을 대상으로 했습니다. 그리고 두 캠페인의 지역별 클릭률(%) 데이터를 수집했습니다. 클릭률(Click-Through Rate, CTR)은 [클릭 수/노출 수×100]으로 계산했습니다. 즉, 광고가 몇 번 노출되었는지와 그 중에 몇 번의 클릭이 있었는지의 비율입니다. 예컨대, 광고 노출 횟수가 12,000건이고, 클릭 수가 540건이면 클릭률은 4.5%입니다. 이 기업의 광고 클릭률에 관한 Data Set은 아래와 같습니다.


image.png


[ 독립표본 t-검정을 위한 기술통계량 확인 - Jamovi 활용 ]


image.png


독립표본 t-검정을 시행하기 위한 몇 가지 통계량을 확인해보고자 합니다. 이번 단원을 위해 필요한 기술통계량은 두 집단의 평균(Mean) 및 분산(Variance) 입니다. 광고 A의 경우 평균이 4.62이고, 분산은 0.0560 입니다. 그리고 광고 B의 경우 평균이 5.39이고, 분산은 0.0478입니다.


데이터 분포의 정규성(Normality) 여부와 관련하여 각 광고 전략에 대한 Q-Q plot을 보면, 시각적으로 정규성이 충족되고 있음을 알 수 있습니다. 다만, 이것만으로 부족할 수 있어 이번에는 수치적으로도 데이터의 정규성을 확인할 수 있는 새로운 통계량인 [Shapiro-Wilk p](샤피로-윌크 유의확률)를 가져왔습니다. 이 값은 "귀무가설(H0)로 데이터가 정규분포를 따른다고 설정하고, p값이 0.05보다 크면 정규분포 가정을 충족하는 것으로 보겠다."라는 통계량입니다. 위 결과를 보면, 광고 A의 경우 0.881, 광고 B의 경우 0.487로 모두 0.05보다 크기 때문에 정규성을 충족하고 있습니다. 따라서 독립표본 t-검정을 진행하기에 적합한 상태라고 볼 수 있습니다.


4-A. 'Shapiro-Wilk W-통계량'의 계산 원리


[Shapiro-Wilk p]는 유의확률이고, [Shapiro-Wilk W]는 검정통계량입니다. 이 W값은 "데이터가 정규분포에 근사할 정도로 일치하는 것인지 매칭 점수를 나타낸 값"으로, W값이 1에 가까울수록 p-value가 크게 나옵니다. 광고 A의 경우 W값이 0.972, 광고 B의 경우 W값이 0.948로 거의 1에 수렴하는 값임을 알 수 있습니다. 반면, W값이 1보다 작을수록 데이터가 정규분포의 패턴에서 벗어난다는 뜻입니다. W값이 특정한 임계치보다 작아지면 통계 프로그램은 "W가 이렇게 작게 나올 확률은 5%도 안 된다."라고 판단하여 p<0.05에서 값을 출력합니다.


Shapiro-Wilk 검정은 데이터의 '선형적 상관관계'를 측정합니다. 즉, 아래 W값을 계산하는 공식에서 분자와 분모의 값이 얼마나 일치하는지를 점수(%)로 매긴 것입니다. 우변 때문에 공식이 다소 복잡해 보이기도 하지만, 결론적으로는 "정규분포와 닮은 수준"을 측정합니다. 분자는 "정규분포라면 이론적으로 기대되는 변동의 모습", 분모는 "실제 내가 표집한 데이터의 변동의 모습"이기 때문입니다.


image.png


분자의 [a_i]는 '가중치'입니다. 표본크기가 n개이고, 정규분포인 경우 제일 작은 값은 이 정도 위치에, 그 다음 값은 이 정도 위치에 있어야 한다는 것을 수학적 가중치로 미리 계산한 값이라고 할 수 있습니다. 전교생 100명의 키가 완벽한 정규분포를 이룬다고 가정해보겠습니다. 정규분포의 경우 가운데(평균)에 데이터가 많이 몰려 있고, 양 끝(아주 작거나 아주 큰 사람)으로 갈수록 숫자(빈도)가 급격하게 적어집니다.


1등과 100등과 같은 양 끝 값의 경우, 정규분포에서 아주 희귀한 데이터입니다. 따라서 이들은 전체 분포의 모양을 결정짓는 데 아주 큰 영향을 미치기 때문에 가중치가 큽니다. 반면 50등 근처의 중간 값 범위에서는 비슷한 키를 가진 사람들이 매우 많습니다. 1~2명이 달라져도 전체 모양에 큰 영향을 주지 않기 때문에 가중치가 매우 작거나 0에 가깝다고 볼 수 있습니다.


만약 내가 표집한 Data Set이 정규분포라면, 가중치가 큰 양 끝의 값들이 적절한 위치(멀리 떨어진 곳)에 배치되어야 합니다. 즉, 정규분포인 경우에는 내가 표집한 데이터의 양 끝 값과 큰 가중치를 곱하기 때문에 큰 값이 나오게 될 테고, 이 경우 분자의 값이 분모와 비슷해져 W가 1에 가까워진다(W→1)는 원리입니다. 반면, 내가 표집한 Data Set이 정규분포가 아니라면, 중간에 데이터가 몰려 있거나 한쪽으로 쏠려 있을 것인데, 이러한 경우에는 가중치가 큰 양 끝의 값에서 오히려 점수를 깎아 먹게 되는 등으로 분자의 합산 결과가 분모(실제 변동)를 충분히 따라가지 못하게 되어 W가 1에서 멀어진다(W→0)는 원리입니다.


※ 참고: Shapiro-Wilk W vs Q-Q plot


image.png


5. 독립표본 t-검정 과정


5-A. 가설설정


우리가 알고 싶은 것은 두 가지의 디지털 광고 캠페인의 평균 클릭률이 통계적으로 유의한 차이가 있는지의 여부입니다. 이에 귀무가설(H0)과 대립가설(H1)을 설정합니다. 귀무가설(H0)은 [μA=μB] 입니다. 즉, 두 광고의 평균 클릭률이 서로 같다는 것입니다. 이를 차이의 형태로 바꾸면, [μA-μB=0] 입니다.


반면, 대립가설(H1)은 [μA≠μB] 입니다. 각 광고를 단위로 하는 각 집단의 평균이 서로 다르다는 것입니다. 평균 차이의 방향을 설정하지 않고, "다른 지의 여부"를 묻고자 하는 것이므로 양측검정으로 진행하겠습니다.


5-B. 유의수준(α)


유의수준은 보통 가장 많이 사용하는 기준으로 α=0.05로 설정하겠습니다. 이 말의 의미는, 실제로는 두 집단의 평균이 같은데도 우리가 귀무가설을 잘못 기각할 확률(효과 없는데 있다고 잘못 판단), 즉 제1종 오류를 5% 수준까지 감수하겠다는 것입니다. 따라서 이번 검정의 기준은 p-value≤0.05이면 귀무가설을 기각하고, p-value>0.05이면 귀무가설을 기각하지 않도록 하겠습니다.


5-C. 검정통계량(t값) 계산 원리


독립표본 t-검정은 우리가 관찰했던 평균의 차이(즉, 광고 A와 광고 B의 평균 차이)가 "차이가 없다는 가정에서 기대되는 오차의 범위에 비해 얼마나 큰 것인지"를 봅니다. 이를 위해 평균 차이의 표준오차를 계산합니다. 두 집단의 분산이 같은지 다른지에 따라 계산식은 달라지나, 가장 기본적인 형태(등분산 가정)는 [관찰된 평균 차이와 가설상 평균 차이를 뺀 값]을 [평균 차이의 표준오차]로 나누는 방식입니다.


image.png


따라서, "관찰된 평균 차이가 표준오차의 몇 배인가"를 보는 것이 t-통계량입니다.


5-D. 검정통계량(t값) 계산 과정


Step ①: 평균 차이


광고 A 집단의 경우 평균 4.62, 광고 B 집단의 경우 평균 5.39입니다. 각 집단은 표본 크기 n=15입니다. 각 집단의 평균 차이를 계산하면 [4.62-5.39=-0.77] 입니다.


Step ②: 합동표준편차(Pooled Standard Deviation)


독립표본 t-검정에서는 '합동표준편차'를 사용합니다. 이는 두 집단의 분산이 비슷하다고 가정할 때, 두 데이터를 하나로 합쳐서 계산하는 '평균적인 변동성' 입니다. 각 집단의 크기가 다르다면, 단순히 두 표준편차를 더해 2로 나눌 경우 표본크기가 큰 쪽의 영향력을 충분하게 반영하지 못합니다. 그래서 표본크기가 큰 집단에 더 큰 가중치를 두어 전체적인 표준편차를 계산합니다. 예컨대, A반이 10명이고 B반이 100명일 때 두 반의 성적의 편차를 합칠 때는 100명인 B반의 데이터가 훨씬 더 영향력이 있기 때문에 B반의 편차를 더 많이 반영하는 원리와 같습니다.


합동표준편차는 표준편차를 뜻하는 'S'에 아래첨자 'p'를 붙여서 씁니다. 합동표준편차를 계산하는 공식은 아래와 같습니다. 이 식에서 분자는 각 집단의 편차 제곱의 합에 가중치를 적용한 것이고, 분모는 두 집단의 자유도를 합친 값입니다.


image.png

광고 A의 경우 분산이 0.0560, 광고 B의 경우 분산이 0.0478입니다. 여기에 표본의 크기 n=15로 동일하므로, 위 합동표준편차 공식에 대입하면, 분산은 0.0519, 표준편차는 [√0.0519≒0.228]이 나옵니다.


image.png


Step ③: 평균 차이의 표준오차


합동표준편차를 계산했다면, 평균 차이의 표준오차(Standard Error of the difference)는 이 값을 활용하여 두 집단의 전체적인 오차 범위를 계산하는 과정입니다. 일반적인 표준오차는 표본 평균 하나가 얼마나 흔들리는지를 보지만, 독립표본 t-검정의 표준오차는 평균 1과 평균 2의 차이가 얼마나 흔들리는지를 봅니다.


통계학에서는 서로 독립된 두 변수를 더하거나 뺄 때, 분산은 항상 더해진다는 법칙을 활용합니다. 첫 번째 집단의 평균의 분산이 [s1의 제곱을 표본의 크기로 나눈 값], 두 번째 집단의 평균의 분산이 [s2의 제곱을 표본의 크기로 나눈 값]이라면, 이 두 개의 평균 차이를 단순 합계하는 방식입니다. 여기에 루트를 씌우게 되면 아래와 같이 우리가 알고 있는 표준오차 공식이 됩니다.


image.png


위 평균 차이의 표준오차 계산식의 우변을 보면, 합동표준편차(S_p)를 곱하도록 되어 있습니다. 이는 우리가 처음에 "두 집단의 분산이 같다."라고 가정했기 때문에 광고 A 집단의 분산과 광고 B 집단의 분산은 합동 분산의 값과 일치한다고 보기 때문입니다. 그래서, 서로 다른 집단의 분산을 더 정확하게 추정하는 공통의 값인 합동 분산을 사용한 결과입니다. 이러한 과정을 수식의 전개로 보면 아래와 같습니다.


image.png


합동표준편차 0.228을 대입하여 평균 차이의 표준오차를 계산하면 아래와 같이 0.0832로 계산됩니다.


image.png


Step ④: t-통계량 계산


평균 차이는 -0.77, 두 집단 평균 차이의 표준오차는 0.0832이므로 [t=-0.77/0.0832=-9.30] 입니다. 즉, 관찰된 평균 차이는 표준오차의 9.3배 크기입니다. 이 값은 0에서 매우 멀리 떨어진 값으로 표본의 오차만으로는 설명하기에 상당한 치아라고 할 수 있겠습니다.


Step ⑤: 가설 검정에 대한 최종 판단


아래 t-test table을 보면 자유도 28, 양측검정에 따를 경우 유의수준 5%의 임계값은 ±2.048입니다. 우리가 계산한 t-통계량은 -9.30이므로, -2.408보다 훨씬 왼쪽에 있습니다. 즉, ltl=9.30>2.048이므로 기각역에 포함됩니다. 따라서 귀무가설을 기각할 수 있습니다. 아울러 이 정도의 극단적인 t-통계량이면, p-value도 0.001보다 낮다고 볼 수 있습니다. 즉 귀무가설을 참이라고 가정했을 때, 이보다 더 큰 평균의 차이가 표본을 통해 우연히 나타날 확률은 0.1%보다도 작다는 것입니다.


image.png Reference: 'BY JU'S. "t-test table". https://byjus.com/maths/t-test-table/


위 검정 결과는 이렇게 정리가 됩니다. "유의수준 5%에서 독립표본 t-검정을 실시한 결과, 광고 A와 광고 B의 평균 클릭률에는 통계적으로 유의한 차이가 나타났고(p<0.001), 표본의 평균은 광고 A가 4.62%, 광고 B가 5.39%로 광고 B의 평균 클릭률이 더 높았다."라는 것입니다. 이 해석에서 중요한 건 ① 통계적으로 유의한 차이가 있다는 것, ② 그 차이의 방향은 광고 B가 더 높다는 것입니다.


Step ⑥: 효과크기(Cohen's d)


우리가 계산한 t-통계량을 통해 두 광고 집단의 평균 차이가 통계적으로 유의한 것은 알았지만, 그 효과가 어느 정도의 크기인지 파악하기는 힘듭니다. 그래서 효과크기를 계산해보겠습니다. 효과크기를 나타내는 Cohen's d는 두 집단 평균의 차이를 합동표준편차로 나눈 값입니다. 평균 차이는 -0.77, 합동표준편차는 0.228이기 때문에 Cohen's ldl=3.39로 매우 크게 나타납니다. 효과크기는 '방향'이 아닌 '크기'가 중요하기 때문에 절댓값 기준으로 해석해도 무방합니다.


즉, 두 집단의 평균이 약 3.39배의 표준편차만큼 떨어져 있다는 것입니다. 이 말은 어느 한 집단의 평균이 다른 집단 분포의 관점에서 보면 극단적인 꼬리 영역에 위치한다는 것으로, "두 집단은 완전히 분리된 수준"에 가깝습니다. 덧붙여 표본의 데이터만 놓고 본다면, 광고 B의 클릭률이 광고 A의 클릭률보다는 훨씬 높게 나타나는 효과를 보이므로, 실제 광고 마케팅 전략에 대한 의사결정 시에 광고 B를 활용하는 것이 합리적인 의사결정일 수 있겠다는 시사점을 얻을 수 있습니다.


6. 통계 프로그램 Jamovi를 통한 검정 결과


위 독립표본 t-검정의 시작과 결론에 이르는 과정을 세부적으로 살펴보기 위해 이 검정에 필요한 수식의 전개 과정과 해석의 내용을 단계별로 다뤘습니다. 하지만 R, Python, Jamovi 등과 같은 통계 프로그램을 활용하면 위와 같은 단계를 거칠 필요 없이 단시간에 검정 결과를 살펴볼 수 있습니다. 아래는 Jamovi를 사용하여 얻은 결과 값입니다.


image.png


위 결과에서 [Welch's t]가 바로 Welch t-test 입니다. 우리가 다룬 Data Set의 경우 두 집단의 분산이 거의 일치하기 때문에 전통적인 t-검정 방식인 Studen't t-test와 Welch t-test의 검정 결과가 비슷하게 나오지만, 두 집단의 분산 크기가 다르거나 표본 크기에 차이가 있는 경우 힙동표준편차로 인해 추정이 왜곡될 수 있습니다. 그 대안으로 많이 활용되는 것이 Welch t-test입니다.


그래서 Welch t-test ① 각 집단의 분산을 그대로 사용하여 평균의 차이를 검정하며, ② 각 집단의 분산을 따로 추정해야 하기 때문에 자유도를 복잡한 공식에 따라 조정하는 과정을 거칩니다. 두 집단의 분산이 균형을 이루지 않는다고 본다면, 한 집단의 분산이 유독 클 때, 자유도를 낮춰 불확실성을 체계적으로 반영하려고 합니다. 그래야 "억지로 평균 차이가 있다고 맹신하는 판단의 오류"를 줄일 수 있기 때문입니다. 이로 인해Welch t-test의 자유도(df)는 정수로 출력되지 않고 소수점 단위로 나타나기도 합니다.












월, 화, 수, 목, 금, 토, 일 연재