라일락 꽃이 피는 날

[R] ANOVA 검정 본문

데이터 분석/R

[R] ANOVA 검정

eunki 2021. 6. 27. 06:14
728x90

1. 데이터 불러오기

raw_anova <- read.csv("htest04.csv", header = TRUE) 

 



2. 집단 나누기

groupA4 <- raw_anova[raw_anova$group=='A', 1:2] 
groupB4 <- raw_anova[raw_anova$group=='B', 1:2] 
groupC4 <- raw_anova[raw_anova$group=='C', 1:2] 

 

 


3. 각 집단의 평균 구해서 비교하기

mean(groupA4[,2])  # 174.7778
mean(groupB4[,2])  # 181 
mean(groupC4[,2])  # 164.9

 

 


4-1. 정규성 검정 - 집단A

귀무가설: 데이터셋이 정규분포를 따른다.
대립가설: 데이터셋이 정규분포를 따르지 않는다.

shapiro.test(groupA4)

→ p-value = 0.8978 이므로, 귀무가설을 채택한다.

 

 

qqnorm(groupA4[,2]) 
qqline(groupA4[,2]) 

 

 


4-2. 정규성 검정 - 집단B

shapiro.test(groupB4)

→ p-value = 0.9108 이므로, 귀무가설을 채택한다.

 

 

 

qqnorm(groupB4[,2]) 
qqline(groupB4[,2]) 

 



4-3. 정규성 검정 - 집단B

shapiro.test(groupC4)

→ p-value = 0.6313 이므로, 귀무가설을 채택한다. 

 

 

 

qqnorm(groupC4[,2]) 
qqline(groupC4[,2]) 

 



5. 분산 동질성 검정

귀무가설: 세 집단 간 분산이 동일하다.
대립가설: 세 집단 간 분산이 다르다.

install.packages("lawstat") 
library(lawstat) 


5-1. levene 테스트

levene.test(raw_anova$height, raw_anova$group)

 

→ p-value = 0.3298 이므로, 귀무가설을 채택한다. 

 

 


5-2. bartlett 테스트

bartlett.test(height~group, data=raw_anova)

 

→ p-value = 0.3435 이므로, 귀무가설을 채택한다. 

 



6. ANOVA 테스트

귀무가설: 세 집단 간 평균이 동일하다.
대립가설: 세 집단 간 평균이 다르다.

rawAnova <- aov(height~group, data=raw_anova) 

summary(rawAnova)

 

→ p-value = 1.14e-05 이므로, 대립가설을 채택한다. 
→ Mean.Sq-group = 658.4 (그룹 간 오차) 
→ Mean.Sq-Residuals = 36.2 (그룹 내 오차) 

728x90

'데이터 분석 > R' 카테고리의 다른 글

[R] k-Nearest Neighbor (KNN)  (1) 2021.06.30
[R] 카이제곱 검정  (0) 2021.06.27
[R] z-test (z-검정)  (0) 2021.06.27
[R] 대응표본 t-test (t-검정)  (0) 2021.06.27
[R] t-test (t 검정)  (0) 2021.06.27