데이터를 받았는데 결과값($Y$)이 '횟수(Count)'라면? 고민하지 말고 푸아송 회귀를 떠올려야 합니다. 하지만 모든 횟수 데이터에 쓸 수 있는 건 아닙니다.
오늘은 푸아송 회귀의 정확한 사용 조건과 의료 현장에서의 대표적인 예시, 그리고 주의할 점(과산포)까지 정리해 보겠습니다.
1. 언제 쓰는가? : "발생 횟수"를 셀 때
가장 중요한 키워드는 "단위 시간/공간 동안 발생한 사건의 횟수"입니다.
핵심 조건 3가지
- 결과값($Y$)이 0 이상의 정수(Non-negative Integer)여야 합니다.
- $Y = 0, 1, 2, 3 \dots$ (OK)
- $Y = 1.5, -2, 3.7$ (NO - 이런 데이터는 푸아송 불가능)
- 발생 횟수가 드문(Rare) 사건일수록 잘 맞습니다.
- 예: 희귀병 발병, 교통사고 발생, 기계 고장 등.
- 독립성: 한 번의 사건 발생이 다음 사건 발생 확률에 영향을 주지 않아야 합니다.
2. 의료 데이터에서의 대표적인 활용 예시
의료 데이터 분석가라면 아래와 같은 상황에서 반드시 푸아송 회귀를 써야 합니다.
① 병원 이용량 분석
- 상황: "고혈압 환자의 연간 응급실 방문 횟수 예측"
- 데이터: 0회, 1회, 2회... (음수 없음, 정수임)
- 해석: 나이가 10살 많을수록 응급실 방문 횟수가 1.2배 증가한다.
② 역학(Epidemiology) 연구: 발병 건수
- 상황: "특정 지역의 일주일간 독감 확진자 수 분석"
- 데이터: A지역 5명, B지역 12명...
- 활용: 기온, 습도, 백신 접종률($X$)이 확진자 수($Y$)에 미치는 영향 분석.
③ 임상 연구: 증상 발현 횟수
- 상황: "신약 투여 후 24시간 동안 발작(Seizure) 횟수 비교"
- 데이터: 0번, 3번, 5번...
3. 왜 그냥 선형회귀(OLS)를 쓰면 안 될까?
"그냥 $Y$가 숫자니까 선형회귀($Y=ax+b$) 돌리면 안 되나요?" $\rightarrow$ 안 됩니다!
- 음수 예측 문제: 선형회귀는 $Y$값의 범위를 제한하지 않습니다. 모델이 "내년 응급실 방문 횟수는 -3회입니다"라고 예측할 수 있습니다. (말이 안 되죠.)
- 정수 조건 위배: 선형회귀는 "방문 횟수 1.5회" 같은 소수점을 예측합니다.
- 등분산성 위배: 횟수 데이터는 평균이 커질수록 분산도 같이 커지는 성질이 있습니다. (발생 빈도가 높을수록 변동폭도 큼). 이는 선형회귀의 '등분산성 가정'을 깨뜨립니다.
푸아송 회귀는 $Log$를 씌워서 계산하기 때문에 예측값이 항상 양수(+)가 나오도록 보장합니다.
4. 꿀팁: "Offset(오프셋)"과 "과산포"
실무에서 푸아송 회귀를 돌릴 때 꼭 체크해야 할 두 가지입니다.
① 관찰 기간이 다를 때? (Offset 활용)
환자 A는 1년 동안 관찰해서 2번 방문했고, 환자 B는 10년 동안 관찰해서 2번 방문했습니다. 둘을 똑같이 "2번"으로 취급하면 안 되겠죠? 이때 관찰 기간(Time)이나 인구수(Population)를 보정해주는 것을 Offset이라고 합니다.
- 적용: log(Visits / Time) = ... 형태로 모델링하여 "발생률(Rate)"을 분석하게 됩니다.
② 분산이 너무 크다면? (Overdispersion, 과산포)
푸아송 분포의 대전제는 "평균 = 분산"입니다. 하지만 실제 의료 데이터는 대부분 분산이 평균보다 훨씬 큽니다. (어떤 환자는 0번 오는데, 어떤 환자는 100번 옴).
- 해결책: 이때는 푸아송 대신 음이항 회귀(Negative Binomial Regression)를 써야 합니다.
Tip: R이나 Python 결과에서 Deviance / DF 값이 1보다 훨씬 크면 음이항 회귀로 갈아타세요.
요약
- 목적: "몇 번(Count)" 발생했는지를 예측할 때 쓴다.
- 조건: 결과값 $Y$는 반드시 0 이상의 정수여야 한다.
- 주의: 평균보다 분산이 너무 크면(과산포) 음이항 회귀를 쓴다.
- 핵심: 기간이나 인구수가 다르면 Offset을 설정해서 "비율(Rate)"을 봐야 한다.
'Study Note > 통계' 카테고리의 다른 글
| 정확도(Accuracy)의 함정: 민감도, 특이도, 그리고 베이즈 정리 (0) | 2025.12.17 |
|---|---|
| 분류 문제의 시작, 로지스틱 회귀(Logistic Regression) 완벽 해부 (0) | 2025.12.16 |
| 직선을 넘어 곡선으로, 그리고 모델의 성적표 AIC (0) | 2025.12.15 |
| 회귀분석의 확장: 과적합 방지와 데이터 특성에 맞는 모델링 (0) | 2025.12.15 |
| 회귀모형의 진단: 잔차, 레버리지, 그리고 쿡의 거리 (0) | 2025.12.15 |