효과 크기 :: 통계 - mindscale
Skip to content

효과 크기

두 집단의 차이를 비교할 때, 절대적인 차이로는 그 차이가 얼마나 큰지 알기 어려운 경우가 있습니다. 두 가지 교육 방법이 있는데, 방법 A보다 방법 B가 학생들이 평균적으로 시험을 10점 잘 본다고 하면 그게 조금 잘 보는 것인지 많이 잘 보는 것인지 알 수가 없죠. 이럴 때 사용하는 것이 효과 크기(effect size)입니다. 효과 크기는 두 집단의 차이를 표시하는 방법입니다. 분산을 이용하는 방법이 있고 평균 차이를 이용하는 방법이 있습니다.

에타 제곱

일단 이제 분산을 이용한 효과 크기 표현 방법을 먼저 알아보면 에타 제곱(eta-squared, $\eta^2$)이라고 하는 방법을 쓰는데요. 에타($\eta$)는 그리스문자입니다. 그리스문자 에타의 제곱을 써서 표시하기 때문에 에타 제곱이라고 합니다. 에타 제곱은 집단 차이에 의한 분산과 전체 분산의 비율로 구합니다.

$$ \eta^2 = \frac{\text{집단 차이에 의한 분산}}{\text{전체 분산}} $$

여기에 두 집단 A, B가 있어요.

$$ \begin{align} A = 1, 2, 3\ B = 3, 4, 5 \end{align} $$

전체 평균은 3입니다. 그러면 전체 분산을 구해봅시다.

$$ \frac{(1- 3)^2 + (2 - 3)^2 + (3 - 3)^2 + (3 - 3)^2 + (4 - 3)^2 + (5 - 3)^2}{6} = \frac{10}{6} = 1.66 \ldots $$

다음으로 집단 차이에 의한 분산은 값에서 전체 평균을 빼는 대신, 집단의 평균과 전체 평균의 차이를 구합니다. A의 평균은 2, B의 평균은 4입니다.

$$ \frac{(2- 3)^2 + (2 - 3)^2 + (2 - 3)^2 + (4 - 3)^2 + (4 - 3)^2 + (4 - 3)^2}{6} = \frac{6}{6} = 1 $$

이 경우 에타 제곱은 $1/1.66\ldots = 0.6$이 됩니다. 에타 제곱은 퍼센트로 바꿔서 읽을 수도 있습니다. 그러면 60%가 되겠죠. 에타 제곱이 60%라는 것은 이 데이터에서 각각의 사례가 가진 차이 중에 60%는 집단 간의 차이라는 뜻입니다.

에타 제곱이 0%면, 집단 간에는 아무 차이도 없고 오직 개별 사례 간의 차이만 있습니다. 에타 제곱이 100%면 모든 차이는 집단 간의 차이이며, 같은 집단의 사례들 사이에는 아무런 차이가 없게 됩니다.

Question

다음의 경우에 에타 제곱은 얼마일까요?

$$ \begin{align} A = 1, 1, 1\ B = 3, 3, 3 \end{align} $$

Question

다음의 경우에 에타 제곱은 얼마일까요?

$$ \begin{align} A = 1, 2, 3\ B = 1, 2, 3 \end{align} $$

중고차 데이터에서 에타 제곱을 계산해봅시다.

pg.compute_effsize(avante, k3, eftype='eta-square')
m = aov(price ~ model, data = df)
lsr::etaSquared(m) # (1)!
  1. lsr 패키지가 없으면 install.packages('lsr')으로 설치합니다.

결과에서 eta.sq가 에타 제곱입니다. eta.sq.part는 부분 에타 제곱이라고 하는데, 여기서는 항상 에타 제곱과 같습니다.

Question

HR 데이터에서 marriagesingle인 집단과 married인 집단의 rating 차이를 에타 제곱으로 나타내면 얼마입니까?

위의 차이를 코헨의 d로 나타내면 얼마입니까?

코헨의 d

코헨의 d(Cohen's d)는 아주 간단합니다. 평균 차이를 표준 편차로 나눠준 것입니다. 이것은 통계에서 많이 사용하는 방법인데, 어떤 수치가 있을 때 이것이 큰지, 작은지 가늠하기가 어려우면 표준 편차로 나눠줍니다. 즉, 표준 편차를 일종의 잣대로 사용하는 것입니다.

중고차 데이터에서 코헨의 d를 계산해봅시다.

pg.compute_effsize(avante, k3, eftype='cohen')

결과에서 cohen-d가 코헨의 d입니다.

lsr::cohensD(
  subset(df$price, df$model == 'Avante'),
    subset(df$price, df$model == 'K3')
) # (1)!
  1. lsr 패키지가 없으면 install.packages('lsr')으로 설치합니다.

Question

HR 데이터에서 marriagesingle인 집단과 married인 집단의 rating 차이를 코헨의 d로 나타내면 얼마입니까?

CLES

CLES는 Common Language Effect Size의 약자입니다. 보통(Common)의 언어(Language)로 표현한 효과 크기(Effect Size)라는 뜻입니다. 실제로 그렇게 보통의 언어는 아닙니다.

CLES는 A와 B, 두 집단에서 값을 하나씩 무작위로 뽑았을 때 A에서 뽑은 값이 클 확률이 얼마인가, 이런 뜻입니다.

pg.compute_effsize(
    df.price[df.model == 'Avante'],
    df.price[df.model == 'K3'],
    eftype='CLES')

아반떼와 K3를 비교해서 CLES를 계산하면 0.397가 나옵니다. 이것은 아반떼와 K3를 섞어서 한 대 씩 뽑으면 39.7%의 경우에는 아반떼가 더 비싸고, 나머지 60.3%의 경우에는 K3가 더 비싸다, 이런 뜻입니다.

검정력

검정력(power)은 귀무가설이 거짓이고 대립가설이 참일 때, 귀무가설을 올바르게 기각하고 대립가설을 채택할 확률을 나타냅니다.

그런데 대립가설에서 모수는 다양한 값을 가질 수 있기 때문에, 이 확률을 계산할 때는 관찰된 통계량이 모수라고 치고 계산을 합니다.

검정력은 효과 크기와 표본의 크기가 클 수록 커집니다.

검정력이 낮으면, 다음 번에 동일한 크기의 표본에서 대립가설을 채택하지 못할 수도 있습니다. 연구가 재현이 안되는 것이죠. 따라서 검정력은 가능한 높은 것이 좋습니다. 보통은 0.8 이상을 권장합니다.