본문 바로가기
R & SAS 300제

비모수(non-parametric) 검정 - SAS, R, SPSS 비교

by 통컨이 2021. 11. 25.
728x90
안녕하세요. 요즘 SAS, R, Python의 분석 결과를 비교하고 있습니다.
t검정 등에서는 정규분포를 가정하고 있으나, 비모수 검정은 분포의 형태를 가정하지 않습니다.
우선 비모수 검정 중에서 두 그룹간 평균치차이 검정을 하는 윌콕선순위값 검정을 살펴보았습니다.
순위합검정은 두 그룹을 합쳐서 하나의 그룹으로 만든 다음,
크기순으로 정렬하여 순서를 매긴 다음
다시 원래의 두 그룹으로 나누고, 각 그룹의 순위합을 구하여
서로 비교하는 분석방법입니다.
남자의 국어성적: 60, 66. 72, 78, 84, 79
여자의 국어성적: 64, 69, 75, 81, 87, 92
남녀의 국어성적: 60, 66. 72, 78, 84, 79, 64, 69, 75, 81, 87, 92 
          (정렬)     60, 64, 66.  69, 72, 75, 78, 79, 81, 84, 87, 92
          (순위)       1,  2,   3,   4,   5,   6,  7,   8,  9, 10, 11, 12 
SAS에서는 PROC NPAR1WAY wilcoxon 을 사용하지만
R에서는 wilcox.test( ) 를 사용합니다.
(SAS와 R 의 결론은 같지만, 중간과정의 통계결과가 다르게 나옵니다.
 좀더 살펴봐야 할 듯 하네요...)

[SAS]

T검정인 경우 : PROC NPAR1WAY WILCOXON, PROC RANK & TTEST

          Wilcoxon 순위합검정, Mann-Whitmey

 

쌍체비교인 경우 :Wilcoxon 부호순위검정 : PROC UNIVARIATE NORMAL

ANOVA 인 경우 : Kruskal-Wallis 검정 : PROC NPAR1WAY WILCOXON

3그룹 쌍체비교 : Friedman 검정 PROC RANK & ANOVA       

상관계수 : Spearman 순위상관계수 :PROC CORR SPEARMAN

              Kendall의 순위상관계수 :PROC CORR KENDALL

적합도, 독립성검정: 카이제곱검정 : PROC FREQ CHISQ  

참고문헌: SAS비모수 통계분석(이재창, 송일성 지음, 자유아카데미)

 

DATA a1;INPUT group score @@;        
CARDS;                               
1  60   2  64                        
1  66   2  69                        
1  72   2  75                        
1  78   2  81                        
1  84   2  87                        
1  79   2  92
;
PROC NPAR1WAY WILCOXON;   *PROC NPAR1WAY wilcoxon 을 사용;
CLASS group;
VAR score;
RUN;  

p값이 0.4712 로 남녀간 성적차이가 없음을 알 수 있습니다.

PROC NPAR1WAY 옵션들; VAR 변수들; CLASS 분류변수명;
    옵션들 : ANOVA, WILCOXON, MEDIAN, VW, SAVAGE

[R]

x1 <- c(60,63,72,78,84,79)
x2 <- c(64,69,75,81,87,92)
wilcox.test(x1,x2)  # 평균값 같다... #wilcox.text( ) 를 사용

[SPSS]

다음은 SPSS결과입니다. R의 결과와 같이 나오는 것을 알 수 있습니다.

SAS 의 결과를 검토해 봐야겠습니다.

제일 아래에 있는 값이 .394 가 R 과 같은 결과를 보입니다.