T-Test와 ANOVA(분산분석)의 비교
이번에는 일반적으로 많이 사용하는 AB테스트에 한 개 이상의 추가 대안을 검토할 수 있는 ABC테스트에 대해서 한번 설명을 드려보고자 합니다.
많은 온라인마케터분 들이 AB테스트는 많이 아시는데 ABC테스트는 잘 모르시는 것(?)처럼 개인적으로는 느껴져서 이번기회에 ABC대안이 있을 때를 위해 안 그러면 AB테스트를 3번(AB AC BC 이렇게 2개씩 비교) 해야 하는 문제가 있을 수도 있기 때문에 추가적으로 설명드립니다.
통계 분석에서 두 집단 간(AB Test)의 평균차이를 비교할 때는 T-검정(T-test)을 사용한다. 예를 들어, 신제품 사용 전과 후의 만족도를 비교하거나, 남성과 여성 간의 체중 차이를 분석할 경우 T-검정이 적절하다. 그러나 비교해야 할 집단이 두 개를 초과(ABC Test)하는 경우에는 분산분석(ANOVA, Analysis of Variance)을 사용합니다.
예를 들어, 세 개 이상의 광고노출이 매출액에 어떤 영향을 주는지 비교하고자 할 때는 ANOVA가 보다 적합한 분석 도구가 됩니다. 요약하면, T-검정은 두 집단 간 평균 차이에 초점을 맞춘 분석이며, ANOVA는 세 집단 이상의 평균을 동시에 비교할 수 있는 확장된 기법입니다.
ANOVA는 세 개 이상의 집단 간 평균 차이가 통계적으로 유의미한지를 평가하기 위한 통계적 검정 방법입니다. 이 기법은 각 집단의 평균이 동일하다는 귀무가설(null hypothesis)과, 적어도 하나의 집단 평균이 다르다는 대립가설(alternative hypothesis)을 기반으로 합니다. 예를 들어, 세 개의 다른 제품 광고가 소비자 구매율에 차이를 보이는지 검정할 때 ANOVA가 사용될 수 있습니다.
그런데, 엑셀에서는 3개의 다른 제품 광고가 소비자 구매율에 차이를 보이는지를 검토하고 3개 중에서는 다른 것이 있다 없다를 알려주지만, 그것이 어떤 것인지를 알려주지는 못합니다.
이럴 경우에는 앞서 이야기한 Real Statistics를 사용해서 추가로 분석할 수 있으므로 이 부분에 대해서도 추가로 검토해 보는 것을 추천드립니다.
아래의 데이터는 제가 임의적으로 만든 자료인데 편의상 ABC광고라고 하고 그 아래 판매된 금액을 넣었다고 생각하고 진행해 보도록 하겠습니다.
5.2.2 ANOVA(분산분석)의 개념 – 변동의 원인을 파악하는 통계적 방법
ANOVA(Analysis of Variance, 분산분석)는 여러 집단 간의 평균이 서로 다른지를 검정하기 위해 사용하는 통계 기법입니다. 단순히 평균값을 비교하는 것이 아니라, 데이터의 전체 변동량(분산)을 집단 간 변동과 집단 내 변동으로 나누어, 그 비율을 통해 차이가 통계적으로 유의미한지를 판단하는 것이 핵심이라고 할 수 있습니다.
왜 분산(Variance)을 분석하는가?
데이터를 분석할 때, 단순히 평균의 차이만 보는 것은 한계가 있습니다. 예를 들어, 세 개의 광고(A, B, C)에서 각각 매출액이 80, 85, 90이라 하더라도, 각 광고별로 소비자들의 매출액 분포가 매우 넓거나 좁다면 단순한 평균 차이로는 신뢰할 수 있는 결론을 내리기 어렵다고 할 수 있습니다.
이때 ANOVA는 전체 데이터의 변동(분산)을 다음 두 가지로 나누게 됩니다.
집단 간 분산(Between-group variance)
각 집단의 평균이 전체 평균에서 얼마나 떨어져 있는지를 측정합니다. 즉, 집단 평균 간 차이를 의미합니다.
집단 내 분산(Within-group variance)
각 집단 내부에서 관측값들이 해당 집단의 평균으로부터 얼마나 떨어져 있는지를 나타냅니다. 즉, 소비자 개개인의 편차나 집단 내부의 불확실성을 나타낸다고 할 수 있습니다.
이 두 가지 분산을 비교한 것이 F-통계량(F-ratio)이며, 그 공식을 설명드리겠습니다.
분산분석(Anova Test)의 F값은 각각의 분산값과, 자유도의 정보를 가지고 계산을 하게 됩니다.
분산의 정보를 활용하여 집단 간 제곱합, 집단내 제곱합을 구하고, 자유도 정보가 있으니 집단 간 자유도와 집단내 자유도로 각각 나누어 집단간과 집단내의 평균제곱을 계산하게 됩니다.
이 부분은 사실 좀 복잡하므로, 관심이 있으신 분들은 아래쪽을 좀 더 읽어 보시고 나머지 분들은 점프하셔서 다음 5.2.2로 바로 넘어가셔도 괜찮습니다.
그룹 간 제곱합(SSTr, SSB): 각 그룹의 평균과 전체 평균 차이 값
그룹 내 제곱합(SSE): 각 그룹 데이터가 그룹 평균에서 얼마나 벗어나는지를 측정
총 제곱합은 위 두 제곱합의 합이며, 데이터의 총변동성을 나타냅니다.
MSTr은 그룹 간 간 제곱합(SSTr)을 자유도로 나눈 값
MSE는 그룹 내 제곱합(SSE)을 자유도로 나눈 값
F값이 클수록: 집단 간 분산이 집단 내 분산보다 상대적으로 크다는 것을 의미하며, 이는 집단 간 차이가 더 크다는 것을 의미합니다.
F값이 작을수록: 집단 간 분산과 집단 내 분산의 차이가 크지 않다는 것을 의미하며, 이는 집단 간 차이가 유의미하지 않을 수 있음을 나타냅니다.
F값은 F 분포를 따르므로, F값과 자유도를 이용하여 p값을 계산할 수 있습니다. p값은 귀무가설(예: 집단 간 평균 차이가 없다)이 참일 때, F값이 관측된 값보다 크거나 같을 확률을 나타냅니다.
p값이 유의 수준(예: 0.05) 보다 작으면 : 귀무가설을 기각하고 대립 가설(예: 집단 간 평균 차이가 있다)을 채택합니다.
p값이 유의 수준보다 크면 : 귀무가설을 기각할 증거가 충분하지 않으므로 귀무가설을 유지합니다.
엑셀에서 분산분석을 수행하기 전에, 데이터가 등분산성, 정규성, 독립성 가정을 만족하는지 확인해야 합니다. 이러한 가정들은 분산분석 결과의 신뢰성에 영향을 미치기 때문입니다.
(1) 등분산성 개념
분산분석은 각 집단의 분산이 동일하다는 등분산성 가정을 기반으로 합니다. 즉, 각 집단에서 얻은 데이터의 흩어진 정도가 비슷해야 합니다. 엑셀에서는 제공되지 않지만 레빈 검정(Levene's test) 등을 사용하여 등분산성을 확인할 수 있습니다. 엑셀에서 사용하기 위해서는 절댓값 차이로 가공된 데이터를 일원배치 분산분석을 하면 등 분산 검정과 같은 결과를 얻을 수는 있습니다. 하지만 분석이 복잡하게 되므로 다른 방법(Real Statistics 등)을 사용하는 것을 권장합니다. 만일 등분산성 가정이 충족되지 않으면 분산분석 결과가 왜곡될 수 있습니다.
(2) 정규성 개념
각 집단의 데이터가 정규분포를 따른다는 가정입니다. 엑셀 자체적으로 정규성 검정 기능을 제공하지 않지만, 다른 통계 소프트웨어나 플러그인을 사용하거나, 정규성 검정 그래프(예: Q-Q plot)를 시각적으로 확인하여 정규성 가정을 평가할 수 있습니다. 만약 정규성 가정이 위배되면 분산분석 결과의 해석에 문제가 발생할 수 있습니다.
(3) 독립성 개념
각 집단의 관측치가 서로 독립적이어야 합니다. 즉, 한 집단의 관측치가 다른 집단의 관측치에 영향을 미치지 않아야 합니다. 독립성은 데이터 수집 과정에서 주로 고려되며, 분석 전에 데이터의 특성을 파악하여 독립성 가정을 만족하는지 확인해야 합니다. 독립성 가정이 위배되면 분산분석 결과가 신뢰성을 잃을 수 있습니다.
엑셀에서 분산분석을 수행하기 전에 등분산성 검정, 정규성 검정, 그리고 독립성 검토를 통해 데이터가 분석 가정에 부합하는지 확인해야 합니다. 만약 이러한 가정들이 충족되지 않는다면, 분산분석 대신 다른 비모수 검정 방법(예: Kruskal-Wallis 검정)을 고려해야 할 수도 있습니다.
분산분석에서는 일반적으로 다음과 같은 두 가지 가설을 세워서 분석을 합니다.
귀무가설(H₀): 모든 집단의 평균이 같다. (즉, 차이가 없다.)
대립가설(H₁): 적어도 하나의 집단 평균은 다르다.
분산분석을 통해 F값과 P-값을 계산한 후, P-값이 사전에 정한 유의 수준(예: 0.05) 보다 작으면 귀무가설을 기각하고, 집단 간에 유의미한 평균 차이가 있다고 판단합니다.
자, 그럼 엑셀을 활용해서 어떻게 분석하는지를 이제부터는 살펴보도록 하겠습니다. 앞서 살펴본 Data를
가지고 분석을 진행해 보겠습니다.
광고 A, B, C의 일자별 판매 매출액을 나열한 자료를 분산분석하는 경우에 통계데이터를 클릭하면 위와 같이 3가지의 분산분석이 나타나게 됩니다. 이 3가지는 다음과 같이 구분하여 사용하여야 합니다.
1. 분산분석 : 일원 배치법 (One-way ANOVA):
하나의 독립 변수 (요인)와 하나의 종속 변수 간의 관계를 분석합니다.
예를 들어, 세 가지 다른 종류의 비료를 사용했을 때 작물의 수확량이 어떻게 달라지는지 비교할 때 사용될 수 있습니다.
주로 독립 변수의 수준 (예: 비료 종류)에 따른 종속 변수의 평균 차이가 통계적으로 유의한 지 검정합니다.
등분산성, 정규성, 독립성 등의 가정을 만족해야 합니다.
2. 분산분석 : 반복 없는 이원 배치법 (Two-way ANOVA):
두 개 이상의 독립 변수 (요인)와 하나의 종속 변수 간의 관계를 분석합니다.
예를 들어, 비료 종류와 토양 종류에 따른 작물 수확량의 차이를 분석할 때 사용될 수 있습니다.
각 독립 변수의 주 효과와 독립 변수 간의 상호작용 효과를 모두 검정할 수 있습니다.
등분산성, 정규성, 독립성 등의 가정을 만족해야 합니다.
3. 분산분석 : 반복 있는 이원 배치법(Repeated Measures ANOVA):
같은 피험자에게 여러 번 측정을 반복하여 얻은 데이터를 분석할 때 사용됩니다.
예를 들어, 동일한 사람들에게 시간 간격을 두고 여러 번 약물 투여 전후의 혈압 변화를 측정했을 때 사용될 수 있습니다.
단일 집단 내에서 시간, 조건 등에 따른 변화를 분석하는 데 유용합니다.
구조적 관련성(Sphericity) 가정에 대한 검토가 필요합니다.
이상의 구분내용을 볼 때 우리는 지금 광고라는 1가지 요인에 대해서 매출의 차이를 살펴봐야 하기 때문에 1원 배치법으로 진행해야 하는 것을 알 수 있습니다.
따라서, 1원 배치법에 입력범위를 넣고 열 방향으로 데이터가 있으니 열 방향으로 놓은 후 첫째 행 이름표사용을 클릭하고 유의 수준 0.05에 새로운 워크시트를 선택하고 확인을 누르면 다음과 같은 결과가 나옵니다.
이 결과를 보면 광고 A, B, C의 평균은 각각 10.8, 21.6, 29.5로 차이가 크고 F 비(F 값)가 28.99로 매우 큰 것으로 볼 수 있고, P값이 0.05 기준 보다 매우 작은 값(0.000000000006)을 보이므로 3개 광고의 차이가 없다는 귀무가설을 기각하고 3개의 광고는 차이가 있다는 대립가설을 채택하게 됩니다.
여기서 한 가지, 이 표에 있는 F 기각치는 유의 수준(α)에 따라 귀무가설을 기각할 기준이 되는 F 분포의 임계값입니다. 이 예시에서 F의 기각치는 3.07376*이므로 실제 F값보다 매우 작습니다. 따라서 귀무가설을 기각하는데 충분한 F값을 보여주고 있다고 생각하시면 됩니다.
F값 > F기각치 : 유의미한 차이가 있으므로 귀무가설 기각
F값 ≤ F기각치 : 차이가 통계적으로 유의하지 않음 (귀무가설 유지)
아쉽지만, 엑셀에서의 분석은 여기까지 가능합니다. 사실 A, B, C가 다른 건 알겠는데 어떤 게 어떤 것과 다른 건지 AB는 같고 AC는 다른 건지 등에 대해서 각 대안별로 확실하게 차이가 있는지를 좀 더 명확하게 알려주면 좋겠는데 그렇게 진행하는 분석을 사후분석이라고 합니다.
현재 엑셀에서는 사후분석 부분까지는 지원하지 않으므로 다음 2부에서는 지난번 말씀 드렸던 Real Statistics를 활용해서 사후분석을 진행하는 방법을 한번 살펴볼까 합니다.