안녕하세요, 산격동 너구리입니다.
이번 포스팅은,
SAS를 이용한 "분산 분석(Analysis of Variance)"입니다.
주로 앞 글자를 따서 ANOVA로 부르는데,
한글 이름이 더 어색할 정도로 ANOVA로 많이 알고 계실거에요.
개요
분산 분석(ANOVA)이란??
3개 이상의 집단에 대한 평균 검정
가정
정규성 가정 : 각각의 그룹에서 표본은 정규성을 가진다.
등분산성 가정 : 각 집단의 분산은 서로 동일해야 한다.
독립성 가정 : 표본은 서로 독립적이어야 한다.
가설
$H_0$ : 모든 모집단의 평균은 동일하다.
$H_1$ : 모든 모집단의 평균이 동일한 것은 아니다.
예제
A, B, C 고등학교 학생들의 하루 공부 시간을 조사했을 때,
고등학교 간에 공부 시간이 차이가 있는지 확인해보겠습니다.
위의 파일을 이용하였고, 통계적 유의수준은 0.05로 두었습니다.
데이터 불러오기
/* SAS는 내가 실행시킬 줄을 드래그하고 F8을 누르시면 그 문장만 실행됩니다. */
/* 데이터 읽기 */
proc import file = "G:\산격동 너구리\[수정]\예제 파일\07. [산격동 너구리] ANOVA 예제.csv"
out= work.data dbms = csv replace;
run;
가정
1. 정규성 가정 확인
/* 정규성 검정 */
proc univariate data = data normal;
var time;
by group;
run;
모든 그룹에서 p-value가 0.05보다 크므로 귀무가설을 채택합니다.
따라서, 모든 그룹에서 정규성 가정을 만족하는 것으로 판단할 수 있습니다.
2. 등분산성 가정 확인
SAS에서는 ANOVA 분석 코드를 실행하면서 등분산성 결과를 함께 볼 수 있습니다.
ANOVA 파트에서 확인하도록 하겠습니다.
3. 독립성 가정 확인
제가 알기로는 독립성 가정을 확인하는 검정은 따로 없습니다.
독립성 가정은 말 그대로 두 그룹이 독립적인지를 의미하는 것이므로
표본 추출방법에 따라 만족하는지 판단해주시면 됩니다.
가설
$H_0$ : 세 고등학교 학생들의 평균 학습 시간은 전부 같다.
$H_1$ : 세 고등학교 학생들의 평균 학습 시간이 전부 같은 것은 아니다.
예제를 위해 임의로 지정한 가설입니다.
상황에 맞추어 적절히 변형하시길 바랍니다.
ANOVA
/* ANOVA */
proc glm data = data;
class group;
model time = group;
means group / hovtest = levene scheffe ;
run;
p-value가 0.05보다 크므로 귀무가설을 채택합니다.
따라서, 세 그룹의 분산은 동일한 것으로 판단할 수 있습니다.
"group"변수에 대한 p-value가 0.05 미만이므로 귀무가설을 기각합니다.
따라서, "세 고등학교 학생들의 평균 공부시간에는 유의한 차이가 있다"라는 결론을 낼 수 있습니다.
이 때, 모든 고등학교가 서로 유의한 차이를 가질 수도 있지만,
하나의 고등학교만 유의한 차이를 보일 수도 있죠.
하지만, ANOVA의 결과만으로는,
세 고등학교 중 어느 고등학교가 유의한 차이를 보이는지에 대해서는 정확히 알 수가 없습니다.
이 때 사용하는 것이 사후분석입니다.
그 중 하나인 scheffe 방법으로 해보겠습니다.
이미 코드에 scheffe 옵션을 입력해놓았기 때문에 사후분석 결과도 함께 출력됩니다.
사후 분석
* 표시가 있는 관계가 유의한 차이가 있는 관계입니다.
따라서,
"C 고등학교 학생들의 공부시간이 A, B 고등학교 학생들의 공부시간보다 유의하게 높음"을 알 수 있으며,
"A, B 고등학교 학생들의 공부 시간은 유의한 차이가 없음"을 확인할 수 있습니다.
이것으로 SAS를 이용한 분산 분석(ANOVA)에 대해 마치도록 하겠습니다.
이상, 산격동 너구리였습니다.
감사합니다.
* 잘못된 정보 및 오타가 포함되어 있을 수 있습니다.
그대로 받아들이시기보다는 다른 사람의 의견도 참고하셔서 분석하시길 바랍니다.
* 포스팅 내용 및 통계 분석 관련 질문은 언제나 환영입니다.
가능한 선에서 최대한 답변하도록 하겠습니다.
'내가 하는 통계 분석 > SAS' 카테고리의 다른 글
[내가 하는 통계 분석] 크루스칼 왈리스 검정(Kruskal Wallis test) in SAS (0) | 2021.03.05 |
---|---|
[내가 하는 통계 분석] Welch's T 검정(Welch's t-test) in SAS (0) | 2021.03.05 |
[내가 하는 통계 분석] 윌콕슨 순위합 검정(Wilcoxon rank sum test) or 맨-휘트니 U 검정(Mann-Whitney U test) in SAS (0) | 2021.03.05 |
[내가 하는 통계 분석] 윌콕슨 부호 순위 검정(Wilcoxon signed rank test) in SAS (0) | 2021.03.05 |
[내가 하는 통계 분석] 대응표본 T 검정(Paired Sample t-test) in SAS (0) | 2021.03.01 |