티스토리 뷰

완전 분석 vs 다중대체법

한 줄 요약

완전분석 "결측치 있는 행? 그냥 버려"
다중대체법 "결측치를 여러 번 예측"

 

❓결측치가 뭔데

이름    나이    소득
홍길동   25     300만원
김철수   NaN    250만원   ← 나이가 없음 (결측치)
이영희   30     NaN       ← 소득이 없음 (결측치)
박민수   28     400만원

→ 이렇게 데이터 일부가 빠져있는 걸 결측치(Missing Value) 라고 함.이걸 어떻게 처리하느냐에 대한 것.


1. 완전 분석 (Complete Case Analysis)

결측치가 하나라도 있는 행 전체를 그냥 삭제하고 분석

동작 방식

이름    나이    소득
홍길동   25     300만원   ✅ 사용
김철수   NaN    250만원   ❌ 삭제 (나이 없음)
이영희   30     NaN       ❌ 삭제 (소득 없음)
박민수   28     400만원   ✅ 사용

결과: 홍길동, 박민수 데이터만 분석

장점

- 구현이 매우 단순함
- 완전한 데이터만 사용하니까 분석 자체는 깔끔함
- 추가 처리 없이 바로 분석 가능

 

단점

데이터 손실이 크다
  (결측치가 20%면 데이터 20% 이상 날아감)

편향(Bias) 발생 가능
  예) 고소득자가 소득 기입을 꺼린다면?
      → 삭제된 데이터가 특정 패턴을 가짐
      → 남은 데이터가 전체를 대표 못함

- 결측치가 많으면 분석 자체가 불가능해짐

 

이런 경우에 적합

- 결측치 비율이 매우 낮을 때 (5% 이하)
- 결측치가 완전히 무작위로 발생했을 때
  (어떤 패턴 없이 랜덤하게 빠진 경우)

 

2. 다중대체법 (Multiple Imputation)

결측치를 통계적으로 예측해서 여러 번 채워넣고, 각각 분석한 뒤 결과를 합침

 

동작 방식

 

Step 1. 결측치를 여러 번 다르게 채운다

원본:
이름    나이    소득
김철수   NaN    250만원

대체 데이터셋 1번:  김철수   27     250만원
대체 데이터셋 2번:  김철수   24     250만원
대체 데이터셋 3번:  김철수   29     250만원

 

Step 2. 각 데이터셋으로 따로 분석한다

데이터셋 1번으로 분석 → 결과 A
데이터셋 2번으로 분석 → 결과 B
데이터셋 3번으로 분석 → 결과 C

 

Step 3. 결과를 합쳐서 최종 결론 낸다

결과 A + B + C를 통합
→ 불확실성까지 반영한 최종 결과

 

❓왜 여러 번 채울까

• 결측치를 1번만 채우면:
→ "이 값이 맞나?" 확신할 수 없음
→ 불확실성을 무시하게 됨

여러 번 채우면:
→ "27일수도, 24일수도, 29일수도 있어"
→ 그 불확실성 자체를 분석에 반영
→ 더 정직한 결과가 나옴

 

장점

데이터 손실 없음
- 통계적 불확실성을 결과에 반영
- 결측치가 많아도 분석 가능
- 편향 발생 가능성이 낮음

 

단점

- 구현이 복잡함
- 계산량이 많음 (여러 번 분석해야 하니까)
- 전문적인 통계 지식 필요
- 잘못된 대체 모델 사용 시 오히려 왜곡될 수 있음


한눈에 비교

구분 완전 분석 다중 대체법
처리 방식 결측 행 삭제 여러 번 예측해서 채움
데이터 손실 ❌ 많음 ✅ 없음
구현 난이도 ✅ 쉬움 ❌ 복잡함
편향 위험 ❌ 높음 ✅ 낮음
불확실성 반영 ❌ 무시 ✅ 반영
적합한 상황 결측치 적을 때 결측치 많을 때

 

⭐️ 핵심 포인트

다중대체법 = 무작위 제거 후 반복? ❌ 예측값으로 여러 번 채우는 것
완전 분석은 편향이 없다? ❌ 편향 발생 가능
다중대체법은 데이터 손실이 크다? ❌ 손실 없음
결측치 적을 땐 어떤 방법? 완전 분석으로도 충분
불확실성을 반영하는 방법은? 다중대체법