개념
- 이원 분산 분석(이원 ANOVA)은 두 개의 독립 변수가 종속 변수에 미치는 영향을 동시에 분석하는 통계 방법
- 주효과와 상호작용 효과를 평가하여 각 요인이 개별적으로 또는 상호작용하여 종속 변수에 영향을 미치는지를 분석
1. 이원 분산 분석의 목적
두 개의 독립 변수 A와 B가 종속 변수 Y에 미치는 영향을 다음과 같은 방식으로 평가:
- 주효과: 각각의 독립 변수 A와 B가 종속 변수에 미치는 개별적인 효과.
- 상호작용 효과: 독립 변수 A와 B의 결합 효과가 종속 변수에 미치는 영향. 즉, A의 효과가 B의 값에 따라 달라지는지 여부.
2. 수식적 표현
이원 분산 분석 모형:
Yijk=μ+αi+βj+(αβ)ij+ϵijk
- Yijk: 종속 변수 Y의 관측값 (즉, 특정 조건 하에서의 측정값).
- μ: 전체 평균(종속 변수의 전체 평균값).
- αi: 독립 변수 A의 i번째 수준의 주효과.
- βj: 독립 변수 B의 j번째 수준의 주효과.
- (αβ)ij: 독립 변수 A와 B 사이의 상호작용 효과.
- ϵijk: 잔차(오차), 정규 분포를 따르며 N(0,σ2)로 가정.
3. 이원 분산 분석의 단계
1) 총 변동(총 제곱합):
총 변동(SST, Sum of Squares Total)은 종속 변수의 관측값과 전체 평균 사이의 차이:
SST=i=1∑aj=1∑bk=1∑nij(Yijk−Yˉ..)2
- a: 독립 변수 A의 수준 수.
- b: 독립 변수 B의 수준 수.
- nij): 각 수준에서의 샘플 크기.
- Yˉ..: 종속 변수 Y의 전체 평균.
2) 각 요인의 변동:
각 요인의 변동(즉, 독립 변수 A와 B)
-
요인 A의 제곱합 (SSA):
SSA=nbi=1∑a(Yˉi.−Yˉ..)2
여기서 Yˉi.는 요인 A의 i번째 수준의 평균, nb는 요인 B의 모든 수준에 대해 관측된 샘플 수
-
요인 B의 제곱합 (SSB):
SSB=naj=1∑b(Yˉ.j−Yˉ..)2
여기서 Yˉ.j는 요인 B의 j번째 수준의 평균, na는 요인 A의 모든 수준에 대해 관측된 샘플 수
-
상호작용의 제곱합 (SSAB):
SSAB=i=1∑aj=1∑b(Yˉij−Yˉi.−Yˉ.j+Yˉ..)2
상호작용 효과는 각 요인의 주효과가 제거된 후 남은 변동을 측정
3) 오차(잔차) 제곱합 (SSE):
오차 제곱합은 데이터의 변동 중 설명되지 않는 부분
SSE=i=1∑aj=1∑bk=1∑nij(Yijk−Yˉij)2
잔차는 관측된 값과 각 수준에서 예측된 평균 값 사이의 차이
4) 각 제곱합을 이용한 분산 분석표:
제곱합을 기반으로 분산 분석표를 작성
각 요인의 변동을 분해하고, F-값과 p-값을 계산
| Source | Sum of Squares (SS) | Degrees of Freedom (df) | Mean Square (MS) | F-value | p-value |
|---|
| 요인 A | SSA | a−1 | a−1SSA | MSEMSA | (p-값) |
| 요인 B | SSB | b−1 | b−1SSB | MSEMSB | (p-값) |
| 상호작용 | SSAB | (a−1)(b−1) | (a−1)(b−1)SSAB | MSEMSAB | (p-값) |
| 오차 | SSE | ab(n−1) | ab(n−1)SSE | | |
| 총합 | SST | N−1 | | | |
- Mean Square (MS): 각 요인의 평균 제곱합은 제곱합을 자유도로 나누어 계산
- MS=dfSS
- F-value: F-값은 각 요인의 평균 제곱합을 오차 평균 제곱합(MSE)으로 나누어 계산
- F-값이 클수록 해당 요인이 종속 변수에 미치는 영향이 크다
- p-value: F-값을 기반으로 해당 요인이 유의미한지(통계적으로 의미 있는지를) 판단
- 일반적으로 p-값이 0.05보다 작으면 해당 요인은 종속 변수에 유의미한 영향을 미침
문제
문제1
토마토 수확량을 늘리기 위해 세 가지 다른 비료 유형과 네 가지 다른 물주기를 실험하고자 한다.
연구소에서는 12개의 토마토 식물을 무작위로 조합해 각 조합에 대해 반복적으로 실험 수행
비료 유형에 따른 효과
- 귀무가설(H0): 모든 비료 유형의 토마토 수확량 평균은 동일
- 대립가설(H1): 적어도 2개 이상의 비료 유형에서의 토마토 수확량 평균이 다름
물주기 따른 효과
- 귀무가설(H0): 모든 물 주기의 토마토 수확량 평균 동일
- 대립가설(H1): 적어도 2개 이상의 물 주기에서의 토마토 수확량 평균이 다름
비료 유형과 물 주기 간의 상호작용 효과
- 귀무가설(H0): 비료 유형과 물 주기 간의 상호작용은 토마토 수확량에 미치지 않음
- 대립가설(H1): 비료 유형과 물 주기 간의 상호작용은 토마토 수확량에 미침
- 비료 유형이 토마토 수확량의 평균에 차이가 있는지 검정통계량 구하기
- p-value
- 귀무가설 채택
- 물 검정통계량
- 물 p-value
- 물 귀무가설
7.비료와 물의 상호작용 검정통계량
- p-value
- 귀무가설
풀이
- ols는 최소 제곱법 회귀 분석을 수행하는 함수
- anoval_lm은 ANOVA(분산분석)을 수행하여 각 요인이 종속 변수에 영향을 미치는지 평가
import statsmodels.api as sm
from statsmodels.formula.api import ols
model = ols('수확량 ~ C(비료유형) * (물주기)', data=df).fit()
anova_table = sm.stats.anova_lm(model)
print(anova_table)
df sum_sq mean_sq F PR(>F)
C(비료유형) 2.0 5251.722222 2625.861111 3.184685 0.059334
C(물주기) 3.0 9057.000000 3019.000000 3.661490 0.026460
C(비료유형):C(물주기) 6.0 4271.833333 711.972222 0.863491 0.535426
Residual 24.0 19788.666667 824.527778 NaN NaN
답
검정 통계량 -> F
p-value -> PR
p값 0.05 이상, 채택/ 이하 기각