한 학생이 이렇게 질문했다고 하자.
수업 방식과 과외 여부가 성적에 영향을 준다면 두 요인의 효과를 각각 확인하면 되지 않나요?
언뜻 합리적인 질문이다. 온라인 수업과 오프라인 수업의 평균 성적을 비교하고, 과외를 받은 학생과 받지 않은 학생의 평균 성적을 비교하면 될 것처럼 보인다.
그러나 다음과 같은 결과가 나왔다면 이야기가 달라진다.
| 수업 방식 | 과외 없음 | 과외 있음 | 과외의 효과 |
|---|---|---|---|
| 오프라인 | 70점 | 82점 | 12점 증가 |
| 온라인 | 78점 | 80점 | 2점 증가 |
오프라인 수업에서는 과외를 받은 학생의 점수가 12점 높다. 반면 온라인 수업에서는 과외에 따른 차이가 2점에 불과하다.
과외의 효과가 수업 방식에 따라 달라진 것이다.
이것이 분산분석에서 말하는 상호작용 효과다.
상호작용은 두 요인이 단순히 각각 작용하는지를 넘어, 한 요인의 효과가 다른 요인의 조건에 따라 변하는지를 보여준다. 반드시 두 효과를 합친 것보다 더 큰 결과가 나타나야 하는 것은 아니다. 효과가 약해지거나 사라지거나 반대 방향으로 바뀌는 경우도 모두 상호작용에 포함된다(Jaccard, 1998; Rohrer & Arslan, 2021).
주효과와 상호작용 효과는 무엇이 다른가
두 개의 요인이 포함된 분산분석을 이원분산분석이라고 한다.
수업 방식과 과외 여부를 분석한다면 세 가지 효과를 검정한다.
| 효과 | 질문 |
|---|---|
| 수업 방식의 주효과 | 과외 여부를 평균했을 때 온라인과 오프라인의 성적이 다른가? |
| 과외의 주효과 | 수업 방식을 평균했을 때 과외 유무에 따른 성적 차이가 있는가? |
| 상호작용 효과 | 과외의 효과가 수업 방식에 따라 달라지는가? |
앞의 예에서 수업 방식별 주변평균은 다음과 같다.
- 오프라인 평균: 76점
- 온라인 평균: 79점
온라인 수업의 전체 평균은 오프라인 수업보다 3점 높다. 이것이 수업 방식의 주효과다.
과외 여부별 주변평균은 다음과 같다.
- 과외 없음: 74점
- 과외 있음: 81점
과외를 받은 학생의 전체 평균이 7점 높다. 이것이 과외의 주효과다.
그러나 이 두 주효과만 보고하면 중요한 사실이 사라진다.
과외의 효과는 오프라인에서 12점이지만 온라인에서는 2점이다. “과외를 받으면 평균적으로 7점 높다”는 문장은 두 조건에서 매우 다른 효과를 하나의 숫자로 평균한 결과다.
주효과는 다른 요인의 수준을 평균한 효과이고, 상호작용은 그 평균 속에 숨은 조건별 차이를 보여준다.
분산분석 모형에서 상호작용은 어떻게 표현되는가
두 요인 A와 B가 포함된 분산분석 모형은 다음처럼 표현할 수 있다.
\[
Y_{ijk}=\mu+\alpha_i+\beta_j+\gamma_{ij}+\varepsilon_{ijk}
\]
각 항의 의미는 다음과 같다.
- \(Y_{ijk}\): 관측된 결과값
- \(\mu\): 전체 평균
- \(\alpha_i\): 요인 A의 효과
- \(\beta_j\): 요인 B의 효과
- \(\gamma_{ij}\): A와 B의 상호작용 효과
- \(\varepsilon_{ijk}\): 모형으로 설명되지 않는 오차
상호작용항 \(\gamma_{ij}\)이 없다면 두 요인의 효과는 덧셈 구조로 설명된다.
예를 들어 과외가 언제나 7점을 높이고 온라인 수업이 언제나 3점을 높인다면 두 효과는 조건과 관계없이 더해진다.
그러나 과외 효과가 오프라인에서는 12점, 온라인에서는 2점이라면 단순한 덧셈으로 설명할 수 없다. 상호작용항이 필요하다.
R의 모형식에서는 다음 표현이 두 주효과와 상호작용을 모두 포함한다.
score ~ class_method * tutoringR이는 다음 식을 줄여 쓴 것이다.
score ~
class_method +
tutoring +
class_method:tutoringR콜론으로 연결된 항이 상호작용항이다.
2×2 상호작용은 차이의 차이로 이해할 수 있다
두 요인이 각각 두 수준을 가진 2×2 설계에서는 상호작용을 ‘차이의 차이’로 계산할 수 있다.
오프라인 수업에서 과외의 효과는 다음과 같다.
\[
82-70=12
\]
온라인 수업에서 과외의 효과는 다음과 같다.
\[
80-78=2
\]
두 조건에서 과외 효과의 차이는 다음과 같다.
\[
I=(82-70)-(80-78)=10
\]
상호작용 대비는 10점이다.
이 값이 0이라면 두 수업 방식에서 과외 효과가 동일하다. 0에서 멀어질수록 조건별 효과가 다르다는 뜻이다.
계산형태는 이중차이법과 유사하지만 연구설계의 의미는 다를 수 있다. 정책평가의 DID는 평행추세 같은 인과적 식별가정을 사용한다. 반면 요인분산분석의 상호작용 대비는 한 요인의 평균차이가 다른 요인의 수준에 따라 달라지는지를 표현한다.
무작위 요인실험이라면 상호작용을 인과적으로 해석할 근거가 강해질 수 있지만, 관찰자료에서 계산한 상호작용은 기본적으로 조건부 연관성이다.
상호작용은 여러 모양으로 나타난다
상호작용은 선이 교차할 때만 존재하는 것이 아니다.
선이 평행한 경우
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 70 | 80 |
| 온라인 | 75 | 85 |
두 수업 방식에서 과외 효과가 모두 10점이다.
두 선은 평행하게 나타나며 상호작용이 없다. 온라인 수업의 효과와 과외의 효과가 조건에 관계없이 일정한 덧셈 구조를 이룬다.
선이 벌어지는 경우
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 70 | 82 |
| 온라인 | 78 | 80 |
과외 효과가 오프라인에서는 12점, 온라인에서는 2점이다.
두 선은 평행하지 않지만 교차하지는 않는다. 이를 비서열적 또는 크기 차이형 상호작용으로 볼 수 있다.
선이 교차하는 경우
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 70 | 85 |
| 온라인 | 82 | 75 |
오프라인에서는 과외가 성적을 높이지만 온라인에서는 오히려 낮추는 패턴이다.
효과의 방향이 반대로 바뀌는 형태를 교차 상호작용이라고 한다. 주효과가 거의 0으로 나타나더라도 조건별 효과는 매우 클 수 있다.
상호작용 그래프는 왜 필요한가
분산분석표에는 상호작용의 F값과 p값이 제시된다. 그러나 이 값들만으로는 어느 조건에서 효과가 커지고 어느 조건에서 작아지는지 알기 어렵다.
상호작용 그래프에서는 일반적으로 다음과 같이 표시한다.
- 가로축: 한 요인의 수준
- 서로 다른 선: 다른 요인의 수준
- 세로축: 조건별 평균 또는 추정주변평균
두 선이 평행에 가까우면 상호작용이 작은 패턴을 나타낸다. 선이 벌어지거나 좁아지거나 교차하면 상호작용 가능성을 보여준다.
하지만 그래프만으로 통계적 유의성을 판정해서는 안 된다.
표본에서 선이 약간 교차하더라도 불확실성이 크면 상호작용 검정은 유의하지 않을 수 있다. 반대로 대규모 표본에서는 눈으로 거의 구분하기 어려운 작은 비평행성도 통계적으로 유의할 수 있다.
좋은 상호작용 그래프에는 다음 정보가 포함되는 것이 바람직하다.
- 조건별 평균
- 신뢰구간 또는 표준오차
- 가능하다면 원자료 분포
- 각 조건의 표본 수
- 의미가 분명한 축 이름
- 실제 관측범위를 보여주는 세로축
세로축의 범위를 지나치게 좁히면 작은 차이가 매우 커 보일 수 있다. 반대로 범위를 지나치게 넓히면 중요한 상호작용이 거의 보이지 않을 수 있다.
상호작용이 유의하면 주효과는 해석할 수 없는가
상호작용이 유의하면 주효과를 무조건 버려야 한다는 설명이 종종 등장한다.
보다 정확한 설명은 다음과 같다.
상호작용이 존재할 때 주효과는 여전히 계산할 수 있지만, 다른 요인의 수준을 평균한 효과라는 점을 분명히 해야 한다.
앞의 예에서 과외의 주효과는 평균 7점이다. 이 값은 틀린 숫자가 아니다. 다만 오프라인의 12점과 온라인의 2점을 평균한 값이다.
연구질문이 전체 학생에게 과외를 제공했을 때의 평균적인 차이라면 7점이라는 주효과가 의미 있을 수 있다. 그러나 수업 방식별로 정책을 다르게 적용하려는 목적이라면 조건별 효과가 더 중요하다.
따라서 상호작용이 유의할 때는 주효과를 다음 순서로 해석하는 것이 좋다.
- 상호작용의 방향과 크기를 확인한다.
- 조건별 평균과 신뢰구간을 제시한다.
- 단순효과 또는 계획된 대비를 검토한다.
- 주효과가 어떤 조건들을 평균한 값인지 설명한다.
- 실질적인 연구질문과 연결한다.
균형 잡힌 직교설계에서는 주효과와 상호작용의 대비가 통계적으로 직교할 수 있다. 그러나 수학적으로 분리된다는 사실과 내용적으로 독립적으로 해석할 수 있다는 사실은 같지 않다.
단순효과는 조건별 효과를 직접 검정한다
단순효과는 다른 요인의 한 수준을 고정한 상태에서 특정 요인의 효과를 검정하는 방법이다.
앞의 사례에서는 다음 질문을 검정할 수 있다.
- 오프라인 수업에서 과외 유무에 따른 점수 차이는 얼마인가?
- 온라인 수업에서 과외 유무에 따른 점수 차이는 얼마인가?
- 과외가 없는 학생에게 온라인과 오프라인의 차이는 얼마인가?
- 과외가 있는 학생에게 온라인과 오프라인의 차이는 얼마인가?
상호작용이 유의하면 이러한 조건부 비교를 통해 관계의 방향을 구체적으로 설명할 수 있다.
단순효과 분석에서는 p값뿐 아니라 다음을 함께 제시해야 한다.
- 추정평균
- 평균차이
- 표준오차
- 신뢰구간
- 효과의 원래 단위
- 다중비교 조정방법
여러 단순효과를 반복해서 검정하면 거짓양성 위험이 증가한다. 사전에 관심 있는 비교를 계획하거나 Holm, Tukey 등의 조정방법을 적용할 수 있다.
한 집단에서만 유의하다고 상호작용이 되는 것은 아니다
다음과 같은 결과가 나왔다고 하자.
- 오프라인 집단의 과외 효과: p = .03
- 온라인 집단의 과외 효과: p = .08
이 결과만으로 과외 효과가 수업 방식에 따라 다르다고 결론 내려서는 안 된다.
한 조건에서 유의하고 다른 조건에서 유의하지 않다는 사실은 두 효과의 차이가 유의하다는 뜻이 아니다(Gelman & Stern, 2006).
상호작용을 주장하려면 두 조건의 효과 차이 자체를 검정해야 한다.
즉, 다음 값이 0과 다른지를 직접 검정해야 한다.
\[
(82-70)-(80-78)
\]
상호작용 검정은 바로 이 차이의 차이를 평가한다.
“한쪽은 유의하고 다른 쪽은 유의하지 않았다”는 비교보다 상호작용항과 그 신뢰구간을 확인하는 것이 우선이다.
상호작용이 유의하지 않으면 두 요인은 독립적으로 작용하는가
그렇지 않다.
상호작용 검정이 유의하지 않다는 것은 현재 자료에서 상호작용을 발견할 충분한 증거를 얻지 못했다는 뜻이다.
다음을 의미하지는 않는다.
- 상호작용 효과가 정확히 0이다.
- 두 요인이 완전히 독립적으로 작용한다.
- 조건별 효과가 동일하다.
- 더 큰 표본에서도 같은 결과가 나온다.
- 실질적으로 중요한 차이가 존재하지 않는다.
상호작용 검정은 주효과보다 검정력이 낮은 경우가 많다. 조건별 차이의 차이를 추정하기 때문에 더 많은 불확실성이 포함되기 때문이다(McClelland & Judd, 1993).
비유의 상호작용을 해석할 때는 점추정치와 신뢰구간을 함께 봐야 한다.
신뢰구간이 좁고 실질적으로 중요한 상호작용을 배제한다면 “중요한 상호작용은 자료와 양립하기 어렵다”고 말할 수 있다.
반대로 신뢰구간이 넓다면 “상호작용이 없다”기보다 “자료가 충분히 정밀하지 않다”고 해석하는 편이 타당하다.
상호작용의 F검정은 무엇을 비교하는가
분산분석은 상호작용으로 설명되는 변동과 오차변동을 비교한다.
\[
F_{AB}=\frac{MS_{AB}}{MS_E}
\]
여기서 다음과 같이 해석한다.
- \(MS_{AB}\): 상호작용으로 설명되는 평균제곱
- \(MS_E\): 오차 평균제곱
상호작용으로 설명되는 변동이 오차변동에 비해 충분히 크면 F값이 커진다.
그러나 F값은 표본크기의 영향을 받는다. 표본이 커지면 작은 상호작용도 유의할 수 있으므로 효과크기와 원래 단위의 조건별 차이를 함께 보고해야 한다.
상호작용의 효과크기는 어떻게 보고하는가
분산분석에서는 부분 에타제곱이 자주 사용된다.
\[
\eta_p^2=\frac{SS_{AB}}{SS_{AB}+SS_E}
\]
여기서 \(SS_{AB}\)는 상호작용 제곱합이고 \(SS_E\)는 오차제곱합이다.
부분 에타제곱은 다른 효과를 제외한 상태에서 상호작용과 오차가 구성하는 변동 가운데 상호작용이 차지하는 비율을 나타낸다.
하지만 부분 에타제곱만 보고하면 실제 점수 차이가 얼마나 되는지 알기 어렵다.
다음 정보를 함께 제시하는 것이 좋다.
- 부분 에타제곱 또는 일반화 에타제곱
- 상호작용 대비의 원점수 단위
- 조건별 평균차이
- 신뢰구간
- 연구분야에서의 실질적 기준
반복측정이나 혼합설계에서는 부분 에타제곱이 설계에 따라 크게 달라져 연구 간 비교가 어려울 수 있다. 일반화 에타제곱은 관찰된 개인차와 측정요인을 보다 일관되게 반영하려는 대안이다(Olejnik & Algina, 2003; Lakens, 2013).
0.01, 0.06과 0.14 같은 관행적 기준을 각각 작은 효과, 중간 효과와 큰 효과로 사용하기도 한다. 그러나 이러한 기준을 분야와 결과변수에 관계없이 기계적으로 적용해서는 안 된다.
교육점수 2점, 혈압 2mmHg와 전환율 2%포인트는 같은 표준화 효과크기를 갖더라도 실제 의미가 다를 수 있다.
상호작용은 결과변수의 척도에 따라 달라진다
상호작용은 절대적인 속성이 아니라 분석척도에 의존한다.
예를 들어 원래 점수척도에서는 두 효과가 덧셈적으로 보이지 않더라도 로그변환 후에는 상호작용이 작아질 수 있다.
연속형 결과에서 다음 질문들은 서로 다르다.
- 점수 차이가 조건에 따라 달라지는가?
- 점수 비율이 조건에 따라 달라지는가?
- 백분율 변화가 조건에 따라 달라지는가?
이항결과에서도 다음 척도의 상호작용은 서로 다를 수 있다.
- 위험차이
- 위험비
- 오즈비
위험차이 척도에서 상호작용이 없어도 오즈비 척도에서는 상호작용이 나타날 수 있다.
따라서 “상호작용이 있다”는 문장에는 어떤 결과척도에서 분석했는지를 포함해야 한다(VanderWeele, 2015).
상호작용과 조절효과는 어떤 관계인가
분산분석의 상호작용과 회귀분석의 조절효과는 수학적으로 같은 구조를 공유한다.
두 범주형 요인이 있는 경우에는 요인분산분석으로 표현할 수 있다.
한 변수 이상이 연속형이라면 회귀모형의 곱항으로 표현하는 것이 일반적이다.
\[
Y=\beta_0+\beta_1X+\beta_2Z+\beta_3XZ+\varepsilon
\]
여기서 \(\beta_3\)가 상호작용계수다.
이는 \(X\)가 \(Y\)에 미치는 기울기가 \(Z\)의 값에 따라 변하는지를 나타낸다.
연속형 변수를 낮음과 높음으로 임의로 나누어 분산분석을 수행하면 정보가 손실되고 검정력이 낮아질 수 있다. 원래의 연속형 척도를 유지한 회귀분석이 대체로 더 적절하다.
연속형 조절변수를 평균 중심화하면 주효과를 평균 수준에서 해석하기 쉬워진다. 그러나 중심화 자체가 상호작용의 존재를 새로 만들거나 제거하는 것은 아니다.
연속형 상호작용은 평균에서 1표준편차 낮음·평균·1표준편차 높음 같은 몇 지점의 단순기울기만 제시하기보다, 관찰범위 전체에서 효과와 신뢰구간을 보여주는 방법을 고려할 수 있다(Spiller et al., 2013; Rohrer & Arslan, 2021).
균형설계가 중요한 이유
각 조건에 동일한 수의 참여자가 배정된 설계를 균형설계라고 한다.
2×2 설계에서 각 조건에 30명씩 포함된다면 다음과 같다.
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 30명 | 30명 |
| 온라인 | 30명 | 30명 |
균형설계의 장점은 다음과 같다.
- 주효과와 상호작용을 비교적 명확하게 분리할 수 있다.
- 주변평균의 가중방식이 단순하다.
- 분산 차이에 대한 민감성이 상대적으로 줄어든다.
- 통계적 검정력이 효율적이다.
- 결측된 조합이 생길 위험이 줄어든다.
반면 다음처럼 표본 수가 불균형할 수 있다.
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 80명 | 20명 |
| 온라인 | 25명 | 75명 |
이 경우 단순한 주변평균은 표본이 많은 조건에 더 큰 가중치를 부여한다.
연구자가 알고 싶은 효과가 실제 표본구성에서의 평균효과인지, 각 조건에 같은 가중치를 준 효과인지에 따라 결과가 달라질 수 있다.
불균형 자료에서는 제곱합 유형을 확인한다
균형설계에서는 Type I, Type II와 Type III 제곱합이 같은 결과를 내는 경우가 많다.
불균형설계에서는 결과가 달라질 수 있다.
| 제곱합 | 특징 |
|---|---|
| Type I | 모형에 입력된 순서대로 효과를 순차 검정 |
| Type II | 다른 주효과를 조정하지만 해당 주효과를 포함한 상호작용은 조정하지 않음 |
| Type III | 다른 모든 항을 포함한 상태에서 각 항을 검정 |
Type I 제곱합은 변수 입력순서에 따라 결과가 달라질 수 있다.
Type II는 상호작용이 없거나 주효과 중심의 모형에서 해석하기 편리할 수 있다.
Type III는 상호작용을 포함한 불균형설계에서 널리 사용되지만 대비코딩과 가중방식에 영향을 받는다. 자동으로 가장 올바른 방법이 되는 것은 아니다(Langsrud, 2003).
불균형설계에서는 다음을 먼저 정해야 한다.
- 어떤 모집단 평균을 추정하려는가?
- 셀에 동일한 가중치를 줄 것인가?
- 실제 표본비율을 반영할 것인가?
- 상호작용이 연구의 핵심인가?
- 요인수준 조합이 모두 관찰되었는가?
- 대비코딩은 무엇인가?
제곱합 유형을 결과가 가장 유리하게 나오는 방식으로 선택해서는 안 된다. 연구질문과 추정대상을 먼저 정한 뒤 분석방법을 선택해야 한다.
비어 있는 셀은 단순한 불균형보다 심각하다
어떤 조합에 관측값이 전혀 없다면 완전한 요인설계가 아니다.
예를 들어 온라인 수업을 받으면서 과외도 받은 학생이 한 명도 없다면 다음 셀이 비게 된다.
| 수업 방식 | 과외 없음 | 과외 있음 |
|---|---|---|
| 오프라인 | 있음 | 있음 |
| 온라인 | 있음 | 없음 |
이 경우 주효과와 상호작용을 완전히 분리하기 어렵거나 특정 효과를 추정할 수 없을 수 있다.
통계프로그램이 계수를 출력하더라도 자료가 제공하지 않는 비교를 모형가정에 의존해 추정하고 있을 수 있다.
실험설계 단계에서 모든 중요한 조합에 충분한 표본을 배정하는 것이 가장 안전하다.
분산분석의 기본 가정도 확인해야 한다
상호작용을 포함한 분산분석에는 일반적인 선형모형의 조건이 적용된다.
독립성
한 학생의 점수는 다른 학생의 점수와 독립적이어야 한다.
같은 학생을 여러 번 측정했거나 같은 학급 학생들이 군집되어 있다면 일반적인 이원분산분석을 그대로 사용해서는 안 된다.
잔차의 정규성
각 셀의 원자료가 완벽한 정규분포여야 한다기보다, 요인효과를 고려한 뒤 남은 잔차분포가 추론에 적합한지를 확인한다.
표본이 균형적이고 셀별 표본이 충분하다면 ANOVA는 중간 정도의 정규성 위반에 비교적 강건할 수 있다. 그러나 작은 표본, 심한 비대칭과 극단값이 동시에 존재하면 결과가 불안정해질 수 있다(Blanca et al., 2017).
등분산성
각 조건의 오차분산이 유사해야 한다.
분산 차이와 표본 수 불균형이 동시에 존재하면 F검정의 오류율이 왜곡될 수 있다.
이상치
한 조건의 극단값 몇 개가 평균과 상호작용선을 크게 바꿀 수 있다.
상자그림, 원자료 점도표와 잔차진단을 함께 확인해야 한다.
가정이 위반되었다면 다음 대안을 검토할 수 있다.
- 결과변수 변환
- 이분산성 강건 표준오차
- 일반화 최소제곱
- 강건 분산분석
- 절사평균 기반 방법
- 부트스트랩
- 자료형에 맞는 일반화선형모형
강건한 방법도 연구설계의 독립성 위반을 자동으로 해결하지는 않는다(Wilcox, 2012).
반복측정 상호작용은 일반 이원분산분석과 다르다
같은 학생의 성적을 교육 전과 교육 후에 측정했다고 하자.
요인은 다음과 같다.
- 집단: 온라인과 오프라인
- 시간: 교육 전과 교육 후
관심 있는 상호작용은 집단×시간이다.
이 상호작용은 다음 질문에 답한다.
교육 전후의 점수변화가 온라인과 오프라인 집단에서 다른가?
같은 학생의 전후 점수는 독립적이지 않으므로 일반적인 독립집단 이원분산분석을 사용해서는 안 된다.
다음 방법을 사용할 수 있다.
- 혼합설계 분산분석
- 반복측정 분산분석
- 선형혼합효과모형
- 일반화추정방정식
측정시점이 세 개 이상이면 구형성 가정을 확인하거나 적절한 보정을 적용해야 한다. 결측시점이 있거나 측정간격이 일정하지 않다면 혼합효과모형이 더 유연할 수 있다.
집단×시간 상호작용이 유의하더라도 반드시 처치의 인과효과를 뜻하지는 않는다. 집단이 무작위로 배정되지 않았다면 두 집단의 기존 추세와 다른 시간가변 요인이 영향을 줄 수 있다.
세 요인이 있으면 삼원 상호작용도 나타날 수 있다
수업 방식, 과외 여부와 학년을 함께 분석한다고 하자.
삼원분산분석에는 다음 효과가 포함된다.
- 수업 방식의 주효과
- 과외의 주효과
- 학년의 주효과
- 수업 방식×과외
- 수업 방식×학년
- 과외×학년
- 수업 방식×과외×학년
삼원 상호작용은 다음 질문을 의미한다.
수업 방식과 과외의 상호작용이 학년에 따라 달라지는가?
예를 들어 1학년에서는 오프라인 학생에게 과외가 특히 효과적이지만 3학년에서는 이런 차이가 없을 수 있다.
삼원 상호작용이 유의하면 전체 자료의 이원 상호작용만 해석하기 어렵다. 학년별 상호작용이나 계획된 대비를 검토해야 한다.
요인이 늘어날수록 셀 수가 급격히 증가한다. 2×2×3 설계에는 12개 셀이 필요하다. 각 셀에 충분한 표본이 없다면 상호작용 추정이 매우 불안정해질 수 있다.
상호작용 검정에는 더 많은 표본이 필요할 수 있다
주효과가 5점이라는 가설보다 “한 조건에서는 8점이고 다른 조건에서는 3점”이라는 차이를 검정하는 것이 더 어렵다.
상호작용은 두 효과의 차이를 추정하므로 일반적으로 표준오차가 더 크다.
표본 수 계획에서는 주효과가 아니라 연구에서 가장 중요한 상호작용을 기준으로 검정력을 계산해야 한다.
G*Power에서 범주형 요인의 고정효과 상호작용을 계획할 때는 다음 메뉴를 사용할 수 있다.
| 항목 | 설정 예 |
|---|---|
| Test family | F tests |
| Statistical test | ANOVA: Fixed effects, special, main effects and interactions |
| Type of power analysis | A priori |
| Number of groups | 2×2 설계라면 4 |
| Numerator df | 2×2 상호작용이라면 1 |
| α err prob | 일반적으로 0.05 |
| Power | 0.80 또는 0.90 |
부분 에타제곱을 Cohen의 \(f\)로 변환하려면 다음 식을 사용할 수 있다.
\[
f=\sqrt{\frac{\eta_p^2}{1-\eta_p^2}}
\]
상호작용 표본 수 계산에는 반드시 상호작용의 예상 효과크기를 사용해야 한다. 주효과의 효과크기를 그대로 입력하면 필요한 표본 수를 과소평가할 수 있다.
파일럿 연구에서 얻은 상호작용 효과는 특히 불안정할 수 있으므로 선행연구, 최소관심효과와 여러 시나리오를 이용한 민감도 분석이 필요하다.
R로 2×2 상호작용 자료 만들기
수업 방식과 과외 여부에 각각 30명씩 배정된 가상자료를 만들어보자.
set.seed(2026)
cell_means <- data.frame(
class_method = factor(
c(
"오프라인",
"오프라인",
"온라인",
"온라인"
),
levels = c(
"오프라인",
"온라인"
)
),
tutoring = factor(
c(
"없음",
"있음",
"없음",
"있음"
),
levels = c(
"없음",
"있음"
)
),
mean_score = c(
70,
82,
78,
80
)
)R각 조건에서 평균 주변으로 점수를 생성한다.
study_data <- do.call(
rbind,
lapply(
seq_len(
nrow(cell_means)
),
function(i) {
data.frame(
class_method =
cell_means$class_method[i],
tutoring =
cell_means$tutoring[i],
score = rnorm(
30,
mean =
cell_means$mean_score[i],
sd = 6
)
)
}
)
)
head(
study_data
)R이 자료는 분석방법을 설명하기 위한 가상자료다. 실제 연구에서는 관측된 원자료와 연구설계를 사용해야 한다.
조건별 평균과 표준편차 확인하기
각 셀의 평균, 표준편차와 표본 수를 계산한다.
cell_summary <- aggregate(
score ~
class_method +
tutoring,
data = study_data,
FUN = function(x) {
c(
mean = mean(x),
sd = sd(x),
n = length(x)
)
}
)
cell_summaryR상호작용 분석에서는 전체 평균보다 각 요인 조합의 셀 평균을 먼저 확인하는 것이 좋다.
R로 상호작용 그래프 그리기
기본 R의 interaction.plot()을 사용할 수 있다.
interaction.plot(
x.factor =
study_data$tutoring,
trace.factor =
study_data$class_method,
response =
study_data$score,
fun = mean,
type = "b",
pch = c(
1,
2
),
lty = c(
1,
2
),
xlab = "과외 여부",
ylab = "평균 성취도",
trace.label = "수업 방식",
main = "수업 방식과 과외 여부의 상호작용"
)R오프라인 선의 기울기가 온라인 선보다 가파르게 나타날 가능성이 높다.
그래프는 상호작용의 방향을 이해하는 도구다. 통계적 불확실성을 평가하려면 분산분석과 신뢰구간을 함께 확인해야 한다.
R로 이원분산분석 실행하기
두 주효과와 상호작용을 포함한 모형을 적합한다.
anova_model <- aov(
score ~
class_method *
tutoring,
data = study_data
)
summary(
anova_model
)R분산분석표에서 다음 세 행을 확인한다.
class_methodtutoringclass_method:tutoring
세 번째 행이 수업 방식과 과외 여부의 상호작용 검정이다.
가상자료는 무작위로 생성되므로 실행할 때의 구체적인 평균과 F값은 표본변동을 반영한다. 그러나 설정한 셀 평균 구조상 상호작용이 비교적 뚜렷하게 나타나도록 구성되어 있다.
R로 부분 에타제곱 계산하기
분산분석표에서 상호작용 제곱합과 오차제곱합을 가져온다.
anova_table <- summary(
anova_model
)[[1]]
ss_interaction <- anova_table[
"class_method:tutoring",
"Sum Sq"
]
ss_error <- anova_table[
"Residuals",
"Sum Sq"
]
partial_eta_squared <- (
ss_interaction
) / (
ss_interaction +
ss_error
)
partial_eta_squaredR효과크기 패키지를 사용할 수도 있다.
# 최초 한 번만 실행
# install.packages("effectsize")
library(effectsize)
eta_squared(
anova_model,
partial = TRUE
)R효과크기를 보고할 때는 조건별 평균차이와 신뢰구간을 함께 제시해야 한다.
R로 단순효과 분석하기
emmeans 패키지를 사용하면 추정주변평균과 조건별 비교를 계산할 수 있다(Lenth, 2016).
# 최초 한 번만 실행
# install.packages("emmeans")
library(emmeans)R수업 방식별 과외 효과를 계산한다.
tutoring_by_method <- emmeans(
anova_model,
~ tutoring |
class_method
)
simple_tutoring <- pairs(
tutoring_by_method,
adjust = "holm"
)
summary(
simple_tutoring,
infer = c(
TRUE,
TRUE
)
)R과외 여부별 수업 방식의 효과도 계산할 수 있다.
method_by_tutoring <- emmeans(
anova_model,
~ class_method |
tutoring
)
simple_method <- pairs(
method_by_tutoring,
adjust = "holm"
)
summary(
simple_method,
infer = c(
TRUE,
TRUE
)
)Rinfer 옵션은 신뢰구간과 검정결과를 함께 표시한다.
단순효과를 해석할 때는 각 조건의 효과가 유의한지만 비교하지 말고 효과의 차이인 상호작용 검정을 우선 확인해야 한다.
추정주변평균과 신뢰구간 그리기
emmeans의 그래프 기능을 사용할 수 있다.
emmip(
anova_model,
class_method ~ tutoring,
CIs = TRUE,
xlab = "과외 여부",
ylab = "추정 평균 성취도"
)R불균형자료에서는 원자료의 단순평균과 추정주변평균이 다를 수 있다.
추정주변평균은 모형에서 다른 요인의 수준에 부여한 가중방식에 따라 계산되므로 어떤 가중치를 사용했는지 확인해야 한다.
R로 모형가정 확인하기
기본 회귀진단 그림을 확인한다.
par(
mfrow = c(
2,
2
)
)
plot(
anova_model
)
par(
mfrow = c(
1,
1
)
)R주요 확인사항은 다음과 같다.
| 진단 | 확인할 내용 |
|---|---|
| 잔차와 예측값 | 비선형 패턴과 이분산성 |
| Q-Q 그림 | 잔차분포의 꼬리와 이상치 |
| Scale-Location | 예측수준별 잔차분산 |
| 레버리지 그림 | 영향력이 큰 관측값 |
셀별 등분산성을 확인하려면 Levene 검정을 사용할 수 있다.
# 최초 한 번만 실행
# install.packages("car")
library(car)
leveneTest(
score ~
interaction(
class_method,
tutoring
),
data = study_data,
center = median
)RLevene 검정의 p값 하나만으로 등분산성을 확정하지 말고 셀별 표준편차와 잔차그림을 함께 봐야 한다.
불균형 자료에서 Type II와 Type III 검정하기
car 패키지의 Anova()를 이용할 수 있다.
Type II 제곱합은 다음과 같이 계산한다.
linear_model <- lm(
score ~
class_method *
tutoring,
data = study_data
)
Anova(
linear_model,
type = 2
)RType III 제곱합을 사용할 때는 일반적으로 합 대비를 설정한다.
old_contrasts <- options(
"contrasts"
)
options(
contrasts = c(
"contr.sum",
"contr.poly"
)
)
type3_model <- lm(
score ~
class_method *
tutoring,
data = study_data
)
Anova(
type3_model,
type = 3
)
options(
contrasts =
old_contrasts$contrasts
)RType II와 Type III 가운데 하나가 항상 정답인 것은 아니다. 불균형의 원인, 상호작용의 존재, 대비코딩과 추정하려는 평균을 먼저 검토해야 한다.
상호작용 결과를 어떻게 보고할까
다음과 같이만 쓰면 충분하지 않다.
수업 방식과 과외 여부의 상호작용이 유의했다.
보다 좋은 보고는 다음 구조를 가진다.
수업 방식과 과외 여부가 학업성취도에 미치는 영향을 검토하기 위해 2×2 요인분산분석을 실시하였다. 수업 방식과 과외 여부의 상호작용이 통계적으로 유의했으며, F값, 자유도, p값과 부분 에타제곱을 함께 보고하였다. 오프라인 수업에서는 과외에 따른 평균점수 차이가 약 12점이었으나 온라인 수업에서는 약 2점이었다. 두 단순효과의 차이는 약 10점이었고 신뢰구간을 함께 제시하였다. 따라서 과외의 효과는 수업 방식에 따라 달라지는 것으로 나타났다.
실제 결과보고에는 다음 정보가 필요하다.
- 요인과 각 수준
- 각 셀의 표본 수
- 조건별 평균과 표준편차
- 상호작용 그래프
- 상호작용 F값과 자유도
- 정확한 p값 또는 p값 범위
- 효과크기
- 상호작용 대비와 신뢰구간
- 단순효과와 다중비교 조정
- 사용한 제곱합 유형
- 모형가정 진단
- 무작위배정 또는 관찰설계 여부
- 결측값과 이상치 처리
- 실질적 의미와 일반화 범위
상호작용 분석에서 자주 발생하는 오류
주효과만 보고 상호작용을 확인하지 않는다
전체 평균에서는 차이가 작아도 특정 조건에서 큰 효과가 나타날 수 있다.
선이 교차하면 무조건 유의하다고 판단한다
표본평균의 교차는 시각적 단서일 뿐이다. 불확실성과 상호작용 검정을 확인해야 한다.
선이 교차하지 않으면 상호작용이 없다고 생각한다
선이 벌어지거나 좁혀지는 비평행 패턴도 상호작용이다.
한 집단에서만 유의하면 상호작용이라고 주장한다
유의와 비유의의 차이는 차이의 유의성을 뜻하지 않는다. 상호작용항을 직접 검정해야 한다.
상호작용이 비유의하면 두 효과가 동일하다고 결론 내린다
검정력 부족일 수 있다. 효과추정치와 신뢰구간을 확인해야 한다.
상호작용이 유의하면 모든 주효과를 무시한다
주효과는 주변평균에 대한 효과로 의미가 있을 수 있다. 어떤 조건을 평균한 값인지 밝혀야 한다.
조건별 t검정을 여러 번 반복한다
가족별 오류율이 증가한다. 계획된 대비나 다중비교 조정이 필요하다.
셀 크기가 불균형한데 제곱합 유형을 확인하지 않는다
Type I, II와 III 결과가 달라질 수 있다.
연속형 변수를 임의로 두 집단으로 나눈다
정보와 검정력이 손실된다. 회귀분석의 연속형 상호작용항을 사용하는 편이 적절할 수 있다.
반복측정 자료를 독립자료로 분석한다
같은 사람의 관측값 사이의 상관을 무시한다. 혼합모형이나 반복측정 분석이 필요하다.
효과크기 없이 p값만 보고한다
표본이 크면 작은 상호작용도 유의할 수 있다. 원점수 차이와 신뢰구간을 함께 제시해야 한다.
관찰자료의 상호작용을 인과효과로 단정한다
교란과 선택편향이 남을 수 있다. 인과적 해석은 연구설계에 근거해야 한다.
분석 전에 확인할 질문
- 연구질문이 주효과가 아니라 조건부 효과를 포함하는가?
- 요인 A의 효과가 요인 B에 따라 달라질 이론적 근거가 있는가?
- 각 요인의 수준은 명확하게 정의되어 있는가?
- 모든 요인 조합이 자료에 포함되어 있는가?
- 각 셀의 표본 수는 충분한가?
- 표본이 지나치게 불균형하지 않은가?
- 상호작용을 기준으로 검정력을 계획했는가?
- 원자료와 조건별 평균을 확인했는가?
- 상호작용 그래프에 신뢰구간을 표시했는가?
- 상호작용의 방향과 크기를 설명할 수 있는가?
- 단순효과 또는 계획된 대비를 정했는가?
- 여러 비교에 대한 조정을 고려했는가?
- 효과크기와 원래 단위의 차이를 보고했는가?
- 상호작용이 분석척도에 의존한다는 점을 고려했는가?
- 반복측정이나 군집구조가 있는가?
- 잔차의 정규성과 등분산성을 확인했는가?
- 이상치가 상호작용을 주도하지 않는가?
- 불균형설계에서 제곱합 유형을 정당화했는가?
- 비유의 결과의 신뢰구간이 충분히 좁은가?
- 관찰된 상호작용을 인과적으로 과장하지 않았는가?
평균효과만으로는 현실의 조건을 설명할 수 없습니다
주효과는 한 요인의 평균적인 영향을 보여준다.
상호작용은 그 영향이 어떤 조건에서 커지고, 줄어들고, 사라지거나 반대로 바뀌는지를 보여준다.
비전공자는 다음 다섯 문장으로 기억할 수 있다.
상호작용은 한 요인의 효과가 다른 요인의 수준에 따라 달라지는 현상이다.
선이 교차하지 않아도 비평행하면 상호작용이 있을 수 있다.
한 조건에서만 유의하다는 사실은 상호작용의 증거가 아니다.
상호작용이 나타나면 조건별 평균과 단순효과를 함께 확인해야 한다.
p값보다 차이의 차이, 효과크기와 신뢰구간이 중요하다.
앞의 교육 사례에서 “과외는 평균적으로 성적을 7점 높였다”는 말은 계산상 틀리지 않다.
하지만 오프라인에서는 12점, 온라인에서는 2점이라는 조건별 차이를 숨긴다.
교육기관이 모든 학생에게 같은 방식으로 과외를 제공할 것인지, 수업 방식에 따라 다르게 운영할 것인지 결정하려면 평균적인 주효과보다 상호작용이 더 중요한 정보가 될 수 있다.
통계에서 평균은 전체적인 경향을 보여준다. 그러나 현실의 효과는 사람, 환경, 시간과 조건에 따라 달라진다.
상호작용을 분석한다는 것은 평균 뒤에 감춰진 조건을 읽는 일이다.
참고문헌
Blanca, M. J., Alarcón, R., Arnau, J., Bono, R., & Bendayan, R. (2017). Non-normal data: Is ANOVA still a valid option? Psicothema, 29(4), 552–557. https://doi.org/10.7334/psicothema2016.383
Cohen, J. (1988). Statistical power analysis for the behavioral sciences (2nd ed.). Lawrence Erlbaum Associates. https://doi.org/10.4324/9780203771587
Gelman, A., & Stern, H. (2006). The difference between “significant” and “not significant” is not itself statistically significant. The American Statistician, 60(4), 328–331. https://doi.org/10.1198/000313006X152649
Jaccard, J. (1998). Interaction effects in factorial analysis of variance. SAGE Publications. https://books.google.com/books?id=liAHMTUoqjMC
Lakens, D. (2013). Calculating and reporting effect sizes to facilitate cumulative science: A practical primer for t-tests and ANOVAs. Frontiers in Psychology, 4, 863. https://doi.org/10.3389/fpsyg.2013.00863
Langsrud, Ø. (2003). ANOVA for unbalanced data: Use Type II instead of Type III sums of squares. Statistics and Computing, 13, 163–167. https://doi.org/10.1023/A:1023260610025
Lenth, R. V. (2016). Least-squares means: The R package lsmeans. Journal of Statistical Software, 69(1), 1–33. https://doi.org/10.18637/jss.v069.i01
McClelland, G. H., & Judd, C. M. (1993). Statistical difficulties of detecting interactions and moderator effects. Psychological Bulletin, 114(2), 376–390. https://doi.org/10.1037/0033-2909.114.2.376
Olejnik, S., & Algina, J. (2003). Generalized eta and omega squared statistics: Measures of effect size for some common research designs. Psychological Methods, 8(4), 434–447. https://doi.org/10.1037/1082-989X.8.4.434
Rohrer, J. M., & Arslan, R. C. (2021). Precise answers to vague questions: Issues with interactions. Advances in Methods and Practices in Psychological Science, 4(2), 1–19. https://doi.org/10.1177/25152459211007368
Spiller, S. A., Fitzsimons, G. J., Lynch, J. G., Jr., & McClelland, G. H. (2013). Spotlights, floodlights, and the magic number zero: Simple effects tests in moderated regression. Journal of Marketing Research, 50(2), 277–288. https://doi.org/10.1509/jmr.12.0420
VanderWeele, T. J. (2015). Explanation in causal inference: Methods for mediation and interaction. Oxford University Press. https://doi.org/10.1093/acprof:oso/9780199325870.001.0001
Wilcox, R. R. (2012). Introduction to robust estimation and hypothesis testing (3rd ed.). Academic Press. https://doi.org/10.1016/C2010-0-67044-1








