빅데이터 분석기사/정리
statsmodels 회귀 / 분산분석 함수 정리
류딩이
2025. 5. 30. 03:29
함수 | 설명 |
ols() | 선형회귀 모델 생성 |
anova_lm() | 분산분석표 생성 |
logit() | 로지스틱 회귀 |
summary() | 분석 결과 요약() |
OLS기반 회귀분석 유형
분석종류 | 함수 | 설명 |
단순선형회귀 | ols( 'y ~ x' ) | 독립변수 1개 |
다중선형회귀 | ols( 'y ~ x1 + x2 + ... ' ) | 독립변수 여러개 |
유의미한 변수 찾기 | model.pvalues < 0.05 | p값 기반 필터링 |
다중공선성 확인 | from statsmodels.stats.outliers_influence import variance_inflation_factor |
VIF값 |
유의미한 독립변수 찾기
단계 | 설명 |
회귀 모델 만들기 | ols(...).fit() |
p-value 확인 | medel.summary() / model.pvalues |
유의미한 변수 카운트 | sum(model.pvalues[1:] < 0.05 ) |
다중공선성 확인 방법 : VIF
의미 | VIF값 | 해석 |
아주 낮음 | 1이하 | 전혀 상관없음 |
주의 수준 | 5이상 | 다중공선성 의심 |
심각 | 10이상 | 다중공선성 매우 심함 변수 제거 고려 |
✅summary() 요약
용어 | 설명 |
coef (회귀계수) | 해당 독립변수가 1 단위 증가할 때 종속변수가 얼마나 변하는지를 나타냄 |
std err (표준오차) | 회귀계수의 추정값에 대한 불확실성(표준 편차), 작을수록 추정값의 신뢰도가 높음 (회귀계수 안정적) |
t (t-검정 통계량) | 회귀계수가 0이 아닐 확률이 얼마나 높은지를 판단하는 값, t = coef / std err, 크면 클수록 해당 변수는 통계적으로 유의미할 가능성↑ |
P>|t| (p-value) | 회귀계수가 우연히 나올 확률 (귀무가설: 계수=0) , p < 0.05이면 → 해당 변수는 유의미함 |
[0.025, 0.975] (95% 신뢰구간) |
회귀계수가 이 범위 안에 있을 확률이 95%라는 뜻 |
✅ 실기시험 에서 확인할 것
문제유형 | 확인할 것 | ||
유의미한 변수 찾기 | pvalues < 0.05 | ||
회귀계수 찾기 | coef | ||
회귀계수 불확실성 평가 | std err, 신뢰구간 | ||
변수 영향력 해석 | coef의 부호와 크기 | coef < 0 | 해당 변수가 1 증가할 때 종속변수는 감소 |
coef > 0 | 해당 변수가 증가하면 종속변수도 증가 |