R

R STUDIO 정규성 검정 (Kolmogorov-Smirnov test & Shapiro-Wilk test)

S4KHS 2024. 5. 15. 18:32

 

R STUDIO 정규성 검정 (Kolmogorov-Smirnov test & Shapiro-Wilk test)

목차
정규성 검정
Kolmogorov-Smirnov test
Shapiro-Wilk test

728x90

정규성 검정 (Normality test)

  • 분석에 사용되는 각 변수의 데이터들의 정규분포를 이루는지 확인한다.
  • 각 변수의 표본 수에 따른 차이점
    - n > 30 : 중심극한정리에 따라 정규성 검정 없이 모수 통계 방법을 사용한다.
    - 10 ≤ n ≤30 : 정규성 검정 결과에 따라서 모수 통계 방법과 비모수 통계 방법을 선택한다.
    - n < 10 : 매우 낮은 표본 수는 검정력이 감소하기 때문에 비모수 통계 방법을 사용한다.
  • ※ 그룹별 비교(t test, ANOVA 등)를 하는 경우에는 정규성 검정을 각 그룹별로 시행해야 한다.

정규성 검정 종류

  • Kolmogorov-Smirnov test (K-S 검정)
    - 표본 수가 클수록 검정력이 커진다 (n ≥ 50).
  • Shapiro-Wilk test
    - 표본 수가 적은 경우에 더 적합하다 (n < 50).
      * 표본 수가 커질수록 검정의 민감도가 감소할 수 있다.

가설 검정
 - 귀무가설 : 정규분포이다 (p  0.05)
 - 대립가설 : 정규분포가 아니다 (p < 0.05)

1) Kolmogorov-Smirnov 검정

※ 특정 집단이 기준이 되는 집단의 분포를 따르는지 검정한다.
 * 기준 집단에 정규 분포를 적용하는 경우, 정규성 검정이 가능하다. 

Code :

ks.test(데이터셋$특정 집단, 기준 집단)

  • ks.test() : 정규성 검정을 수행하는 함수
  • 데이터셋$특정 집단 : 입력된 데이터셋에서 특정 집단의 변숫값을 지정해서 가져온다.
  • 기준 집단 : 분포를 따르는지 검정하는 기준이 된다.
     * 정규성 검정의 경우 'pnorm' 값을 넣는다.
  • e.g) ks.test(df$Value1, pnorm)
     -> df 내의 Value1 변수가 정규성 분포를 따르는지 검정한다.

★ 기준 집단의 평균과 표준편차를 별도로 지정하고 싶은 경우
 Code :
ks.test(df$Value1, pnorm, mean=0, sd=1)

결과 해석

p값 해석 : p-value 값이 0.05 이상일 때 정규분포를 따른다.

2) Shapiro-Wilk 검정

※ 특정 집단이 정규분포를 따르는지 검정한다.

Code :

shapiro.test(데이터셋$특정 집단)

  • shapiro.test() : 정규성 검정을 수행하는 함수
  • 데이터셋$특정 집단 : 입력된 데이터셋에서 특정 집단의 변숫값을 지정해서 가져온다.
  • e.g) shapiro.test(df$Value1)
     -> df 내의 Value1 변수가 정규성 분포를 따르는지 검정한다.

결과 해석

p값 해석 : p-value 값이 0.05 이상일 때 정규분포를 따른다.

반응형

2024.05.10 - [R] - R studio에서 Excel 파일 불러오기

2024.05.11 - [R] - R STUDIO TIP 옵션 (scipen, digits, max.print)

2024.05.13 - [R] - R STUDIO 그룹 분할 및 변수 설정 / dplyr

반응형