반응형
Q-Q Plot이란?
Q-Q Plot은 데이터의 분포가 특정한 이론적 분포(예: 정규분포)를 따르는지 시각적으로 확인하는 도구입니다.
- X축: 이론적 분포(정규분포)의 분위수
- Y축: 실제 데이터의 분위수
- 데이터가 정규성을 만족하면 점들이 대각선(45도 직선)을 따라 배치됩니다.
Q-Q Plot에서 정규성을 확인하는 방법
- 점들이 45도 직선을 따를 때
- 데이터가 정규성을 만족함.
- 작은 편차는 허용되지만 전체적으로 직선에 근접해야 함.
- 잔차가 오른쪽으로 상승하는 경우 (비대칭성 존재)
- 오류: 잔차가 오른쪽(상위 분위수)으로 상승하는 형태를 띠면 정규성을 만족한다고 볼 수 없음.
- 해석: 데이터가 오른쪽 긴 꼬리를 가지는 분포(우측 비대칭, 오른쪽 왜도)일 가능성이 큼.
- 잔차가 아래쪽이나 위쪽으로 크게 벗어나는 경우
- 아래쪽(왼쪽 꼬리)이나 위쪽(오른쪽 꼬리)이 정규분포보다 더 두껍거나 얇음.
- 이상치(outlier) 존재 가능성 있음.
예제 코드 (Python, statsmodels)
아래는 정규성을 만족하는 데이터와 정규성을 따르지 않는 데이터의 Q-Q Plot을 그리는 예제입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt
import statsmodels.api as sm
# 정규성을 따르는 데이터
np.random.seed(42)
data_normal = np.random.normal(0, 1, 100)
# 정규성을 따르지 않는 데이터 (오른쪽 긴 꼬리)
data_skewed = np.random.exponential(1, 100)
fig, axs = plt.subplots(1, 2, figsize=(12, 5))
# 정규 데이터 Q-Q Plot
sm.qqplot(data_normal, stats.norm, line='45', ax=axs[0])
axs[0].set_title("정규성을 만족하는 Q-Q Plot")
# 오른쪽 꼬리가 긴 데이터 Q-Q Plot
sm.qqplot(data_skewed, stats.norm, line='45', ax=axs[1])
axs[1].set_title("정규성을 만족하지 않는 Q-Q Plot")
plt.show()
|
cs |
결론
Q-Q Plot에서 점들이 45도 직선을 따르지 않고 오른쪽으로 상승하는 경우, 정규성을 만족하지 않는다고 판단할 수 있습니다.
즉, "잔차가 오른쪽으로 상승하면 정규성을 만족한다"라는 설명은 잘못된 것이며, 오히려 정규성이 깨졌을 가능성이 높음을 의미합니다.
반응형
'자격증 > ADsP' 카테고리의 다른 글
[ADsP 미어캣 온라인 스터디 11기] Day 8 3과목 데이터 마트 (0) | 2025.02.05 |
---|---|
[ADsP 미어캣 온라인 스터디 11기] Day 7 R기초와 데이터 마트 (0) | 2025.02.03 |
[ADsP 미어캣 온라인 스터디 11기] Day 6 2과목 분석 거버넌스 체계 수립 (0) | 2025.02.03 |
[ADsP] R에서 aov()와 anova()의 차이 (0) | 2025.02.03 |
[ADsP 미어캣 온라인 스터디 11기] Day 5 2과목 분석 마스터플랜 (107 ~ 115p) (0) | 2025.02.02 |