일원분산분석 :: R 기초 통계 - mindscale
Skip to content

일원분산분석

일원분산분석의 가설

  • 영가설: 모든 집단의 평균이 동일하다
  • 대안가설: 적어도 한 집단의 평균이 다른 집단들과 다르다

일원분산분석 수행하기

예제 데이터는 R에 내장된 PlantGrowth

head(PlantGrowth)
  weight group
1 4.17   ctrl 
2 5.58   ctrl 
3 5.18   ctrl 
4 6.11   ctrl 
5 4.50   ctrl 
6 4.61   ctrl 

이 자료에서 group 요인은 수준이 ctrl, trt1, trt2 세 개. 다시 말해 세 집단을 비교하는 것.

levels(PlantGrowth$group)
[1] "ctrl" "trt1" "trt2"

aov 함수로 분산분석을 수행. group이 독립변수, weight가 종속변수. 즉, group에 따라 weight가 달라지는지 검증.

m = aov(weight ~ group, data = PlantGrowth)
summary(m)
            Df Sum Sq Mean Sq F value Pr(>F)  
group        2  3.766  1.8832   4.846 0.0159 *
Residuals   27 10.492  0.3886                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

결과 해석

  • Pr(>F)가 p-value. 이 값이 0.05보다 작으면 통계적으로 유의미한 차이가 있음.
  • 위의 예시에서는 0.0159로 0.05보다 작음. 따라서 유의미한 차이.
  • 구체적으로 어떤 수준(집단)이 차이가 있는지 확인하려면 사후분석(post hoc tests)
  • 유의미한 차이가 없는 경우에는 사후분석할 필요가 없음