잔차 분석
- 잔차 분석에서는 잔차의 분포에서 다음 특성에 주목
- 예측만 잘 된다면 크게 중요하지는 않을 수 있음
- 하지만 모형을 개선하는 힌트를 줌
잔차 보기
- 잔차는 적합된 회귀모형의
resid 속성으로 확인
import seaborn as sns
sns.histplot(r)
왜도
- 왜도(skewness): 분포의 비대칭성
- 잔차의 왜도가 크면 한쪽 꼬리가 길거나 분포가 한쪽으로 치우쳐 있음을 의미
import scipy as sp
sp.stats.skew(r)
첨도
- 첨도(kurtosis): 분포가 한 점에 몰린 정도
- 정규분포의 첨도는 3
- 첨도가 높음: 첨도 > 3
- 첨도가 낮음: 첨도 < 3
- 초과 첨도는 첨도에서 3을 뺀 값
정규성
- 정규성(normality): 잔차가 정규분포에 가까운 성질을 가지고 있는지 보는 기준
- Omnibus 검정, Jarque-Bera 검정
- Q-Q 플롯
- 정규분포를 따른다고 할 때의 이론적 예측값과 실제값을 비교한 플롯
import matplotlib.pyplot as plt
sp.stats.probplot(m.resid, plot=plt)
등분산성
- 등분산성(homoscedasticity): 모든 범위에서 잔차 분산이 일정한 성질
- 예측값과 잔차를 산점도로 그려 시각화
plt.scatter(m.predict(df), m.resid)

등분산성 문제의 원인
- 종속변수의 왜도가 큼
- 종속변수가 이진(
0, 1) 또는 개수, 비율
- 측정값의 바닥효과/천장효과 등 범위 제한
- 중요한 비선형 관계가 빠짐
- 곱셈적인 관계 또는 비율의 변화
- 이상치 또는 영향점
- 서로 다른 집단이 합쳐진 경우
- 예측값에 따라 잔차가 달라지는 경우
- 집단별로 변동성이 다름
자기상관
- 자기상관(autocorrelation): 이전의 값과 이후의 값 사이에 상관이 존재하는 현상
- 양의 자기상관
- 이전에
+면 계속 +로, -면 계속 -로 유지되는 경향
- 예: 화학 공정의 품질
- 음의 자기상관
- 이전에
+면 -로, -면 +로 변하는 특성
- 예: 주별 제품 판매량



잔차의 자기상관 진단
- 잔차의 자기상관: 직전의 잔차가 직후의 잔차와 상관관계가 있는 것
- 선형 회귀분석은 각각의 데이터가 독립적으로 수집되어야 하므로 자기상관이 있으면 안 됨
- 자기상관은
acf로 수치 계산할 수 있음
from statsmodels.tsa.stattools import acf
acf(m.resid)
from statsmodels.graphics.tsaplots import plot_acf
plot_acf(m.resid)

- Durbin-Watson 통계량(0<d<4)으로 진단
- d=0: 양의 자기상관
- d=2: 자기상관 없음
- d=4: 음의 자기상관