정규성 검정(Nomality Test)이란?
데이터 셋의 분포가 정규분포를 따르는지 검정하는 것이다.
정규분포 형태
아래 이미지와 같이 종 모양의 형태를 띄운 데이터가 정규분포의 형태다.
정규성 검정을 하는 이유가 뭘까?
정규성 검정을 하는 이유의 대부분은 특정 데이터를 분석하기 전에 모수적인 방법을 선택할지 혹은
비모수적인 방법의 분석을 실시할지 정규성 검정을 통해 결정하고 검정 결과의 신뢰도를 높이기 위해서다.
통계에서는 데이터의 정규분포를 가정해야 가능한 분석 기법들이 많다. 예를 들어 T-TEST, 선형회귀 분석 등 모두 정규성이 만족해야 분석할 수 있는 기법이다. 만족하지 않는다면 비모수적 분석 기법을 사용해야 한다.
정규성 검정의 종류
검정 방법
아래 검정들은 가설검정 모두 귀무가설(h0)을 채택할 때, 정규성을 따른다고 보면 된다.
(※ 귀무가설 채택 = p-value가 0.05보다 커야 함, 보통 귀무가설을 기각해야 의미가 있다는 부분이랑 헷갈리지 말자)
- Shapiro-Wilk(샤피로-윌크 검정)
보통 표본이 적을 때(소표본) 사용하는 정규성 검정 방법
shapiro test의 표본 기준이 보통 50개 미만일 때 사용한다.
굉장히 보수적인 판별법이기 때문에 QQplot, 히스토그램과 함께 사용하는 것이 좋다.
귀무가설(h0): 데이터 표본의 분포가 정규성을 만족한다.
대립가설(h1): 데이터 표본의 분포가 정규성을 만족한다.
from scipy import stats
stats.shapiro(x)
- Kolmogorov-Smirnov(콜모고로프-스미르노프 검정)
표본이 많을 때(대표본) 사용하는 정규성 검정 방법
Kolmogorov test의 표본 기준이 보통 50개 이상일 때 사용한다.
귀무가설(h0): 데이터 표본의 분포가 정규성을 만족한다.
대립가설(h1): 데이터 표본의 분포가 정규성을 만족한다.
from scipy import stats
stats.kstest(x, 'norm')
- Anderson-Darling(앤더슨-달링 검정)
Kolmogorov-Smirnov(K-S검정)을 수정하여 만든 검정, 특정 분포의 꼬리(tail)에 K-S검정보다 가중치를 두어 수행된다.
정규성 검정 뿐만 아니라 여러 분포의 적합도 검정을 수행할 수 있다. 하지만 정규성 검정하는 데에 가장 많이 쓰인다.
귀무가설(h0): 데이터가 특정 분포를 따른다.
대립가설(h1): 데이터가 특정 분포를 따르지 않는다.
from scipy import stats
stats.anderson(x, dist = 'norm')
시각화
- 히스토그램
전체적인 분포의 모양을 볼 수 있으다.
- QQ plot
표본이 엄청 많은 경우 혹은 데이터를 변환했을 때, 정규에 가까워지는 변화가 있는지 확인할때 많이 쓴다.
보수적인 shapiro test를 의심해볼 때도 사용하면 좋다.
- 왜도(skewness)와 첨도(Kurtosis)
QQ plot과 마찬가지로 표본이 아주 많은 경우에 적합하다.
<참고자료>
'데이터분석 > Statistics(통계학)' 카테고리의 다른 글
[통계학] 이산확률분포 이해하기(베르누이, 이항, 기하, 음이항, 초기하, 포아송 with R) (0) | 2024.07.25 |
---|---|
[통계학] 상관분석(correlation analysis)의 종류와 방법 (0) | 2024.07.22 |
[통계학] 중심극한정리(CLT: Central Limit Theorem) 쉽게 설명 (0) | 2024.07.15 |
[통계학] 종속변수가 1개일 때 통계 분석 기법 선택(한 눈에 보기) (0) | 2024.07.08 |