🧹 데이터 정제(전처리) 완벽정리 💡
결측값 처리 & 이상값 처리 (ADsP 필수 핵심)
안녕하세요 👋
데이터분석 전문가 선생님입니다 👩🏫
오늘은 ADsP 시험에서 정말 자주 등장하는 🔥
결측값 처리(Missing Value) 와 이상값 처리(Outlier)
개념을 쉽고 예쁘게 정리해볼게요!
🧩 1️⃣ 결측값 처리 (Missing Value Imputation)
📖 결측값(Missing Value) 이란?
데이터 중에서 비어 있거나(None/NaN), 값이 누락된 부분을 의미해요.
데이터 분석에서는 이런 결측값을 그냥 두면 ❌
👉 통계량 계산이 왜곡되거나, 모델 학습이 제대로 안 될 수 있어요.
💡 결측값이 생기는 이유
| 구분 | 설명 | 예시 |
| MCAR (무작위 결측) | 아무 이유 없이 랜덤하게 빠진 값 | 설문 미응답 |
| MAR (조건부 무작위) | 다른 변수에 따라 빠짐 | 남성 응답자에서 소득 미기재 ↑ |
| MNAR (비무작위) | 그 변수 값 자체 때문에 빠짐 | 소득이 높을수록 응답 회피 ↑ |
✏️ 시험 포인트 :
MCAR은 삭제해도 영향이 적지만, MNAR은 단순 대치로 해결 불가!
🧰 결측값 처리 방법
| 방법 | 설명 | 장점 | 단점 |
| 🗑️ 데이터 제거법 | 결측이 있는 행(또는 열)을 통째로 삭제 | 간단하고 빠름 | 데이터 손실, 표본 수 감소 |
| 📏 평균대치법 | 결측값을 평균(혹은 중앙값)으로 채움 | 쉬움, 속도 빠름 | 분산 축소, 편향 발생 가능 |
| 🎲 확률론적 대치법 | 회귀 예측값 + 랜덤 오차로 채움 | 변동성 보존 | 구현 복잡, 불확실성 |
| 🧮 단순 대치법(Simple) | 한 번만 일정한 규칙으로 채움 (평균, 중앙, 최빈 등) | 간단함 | 불확실성 반영 어려움 |
| 🔁 다중 대치법(MICE) | 여러 번 대치 후 평균내는 통계적 방식 | 신뢰도 높음 | 계산량 많음, 복잡함 |
🧠 쉽게 예시로 정리
💬 “고객의 나이(age)”에 결측이 있을 때 👇
- 데이터제거 → 그 행 전체를 삭제
- 평균대치법 → 결측값을 평균나이로 채움
- 확률론적 대치법 → 예측모델로 값 예측 + 랜덤오차 추가
- 단순대치법 → 중앙값 혹은 최빈값으로 단순히 채움
- 다중대치법 → 여러 번 예측하여 평균내 최종 반영
✅ 핵심 암기 :
“평균대치 → 쉽지만 편향↑”
“다중대치 → 복잡하지만 신뢰성↑”
🚨 2️⃣ 이상값 처리 (Outlier Handling)
📖 이상값(Outlier) 이란?
데이터의 일반적인 패턴에서 크게 벗어난 값, 즉 너무 튀는 값이에요!
예를 들어 👇
- 나머지 고객 매출은 50~100만원인데,
- 어떤 고객은 1,000만원을 결제했다면 → 이상값!
하지만 ❗ 모든 이상값이 나쁜 건 아닙니다.
💬 “실제 VIP 고객, 사기, 오류 등 의미가 다를 수 있어요!”
⚙️ 이상값 탐지 방법
| 방법 | 설명 | 장점 | 단점 |
| 🧮 ESD 테스트 | 통계적으로 이상값 여부를 검정 (정규분포 가정) | 객관적 판단 가능 | 정규성 가정 필요 |
| 📦 사분위수(IQR) 활용법 | 1.5×IQR 밖의 값을 이상값으로 판단 | 쉬움, 시각화 용이 | 비대칭 분포엔 부정확 |
💡 ESD 테스트 쉽게 이해하기
ESD = “Extreme Studentized Deviate Test”
✅ 절차 요약
1️⃣ 평균·표준편차 계산
2️⃣ 가장 극단값(평균에서 가장 멀리 있는 값) 찾기
3️⃣ 통계적으로 “이 값이 진짜 이상값인지” 검정
4️⃣ 여러 개의 이상값(r개)까지 순차적으로 판단
✨ 즉, 단순히 ‘튀는 값’이 아니라,
검정 통계량으로 “통계적으로 이상값인지”를 판별하는 방법이에요.
💡 사분위수(IQR) 활용법 쉽게 이해하기
IQR(Inter Quartile Range) = Q3 − Q1
✅ 기준 공식
- 하한 = Q1 − 1.5 × IQR
- 상한 = Q3 + 1.5 × IQR
이 범위를 벗어나면 ➡️ “이상값으로 판단”
| 구분 | 의미 | 예시 |
| 💛 일반 이상값 | 1.5배 IQR 밖의 값 | Q1−1.5IQR 이하 or Q3+1.5IQR 이상 |
| ❤️ 극단 이상값 | 3배 IQR 밖의 값 | Q1−3IQR 이하 or Q3+3IQR 이상 |
📊 박스플롯(Boxplot) 에서 튀어나온 점이 바로 이 기준이에요!
🧠 이상값 처리 방법 요약
| 방법 | 설명 | 주의점 |
| ✂️ 제거(Trim) | 오류로 판단되면 삭제 | 데이터 손실 가능 |
| 🎯 수정(Clean) | 입력 실수 시 원본값으로 정정 | 로그 확인 필수 |
| 🔒 윈저라이징(Capping) | 이상값을 경계값으로 제한 | 왜도 줄이지만 정보 손실 가능 |
| 🔄 변환(Log 등) | 로그 변환으로 완화 | 0·음수 처리 주의 |
| 🧩 별도 처리(분리모델) | VIP·사기 등 특수 집단은 따로 분석 | 삭제 금지! |
🧠 시험 핵심 요약 💡
📌 결측값 처리
- 데이터제거 → 간단, 정보 손실
- 평균대치법 → 분산 축소
- 확률론적 대치법 → 예측+랜덤
- 단순대치법 → 한 번만 채움
- 다중대치법 → 신뢰도 높음(MICE)
📌 이상값 처리
- ESD 테스트 → 정규성 가정, 통계 검정
- IQR법 → 박스플롯 기준(1.5×IQR, 3×IQR)
🎯 한 줄 정리
결측값은 “비어있는 값”을 합리적으로 채우기,
이상값은 “튀는 값”을 올바르게 판단하기!
🌈 공부 꿀팁 ✏️
✅ 시험에서는 이렇게 물어요 👇
“정규분포를 가정해 이상값을 검정하는 방법은?” → ESD 테스트
“1.5×IQR 밖의 값을 이상값으로 보는 방법은?” → 사분위수 활용법
“결측값을 평균으로 채우는 방법은?” → 평균대치법