
ADsP 결측값(Missing Value) 처리 방법, 결측 유형(MCAR·MAR·MNAR)과 완전분석법·평균대치법·단순확률대치법·다중대치법 핵심 정리
결측값 처리는 "이 설명은 어떤 대치법인가"를 구분하는 문제가 나와
49회에 출제된 완전분석법 vs 평균대치법 함정까지 대치법별 특징을 정리해보자
ADsP 기초이론 정리 시리즈 20탄!!!
과목 : 3과목 데이터 분석
세부 영역 : R 기초와 데이터 마트 - 결측값 처리
▶ [이론 19] 데이터 마트와 요약변수·파생변수 보러가기
1. 결측값이란?
결측값(Missing Value)은 값이 기록되지 않고 비어 있는 데이터야, R에서는 NA로 표시돼
결측값을 잘못 처리하면 분석 결과가 왜곡되거나 데이터가 크게 줄어들 수 있어
2. 결측값 발생 유형
| 유형 | 의미 | 예시 |
| 완전 무작위 결측 (MCAR) | 결측이 다른 변수와 전혀 관계없이 무작위로 발생 | 설문지 일부가 우연히 훼손됨 |
| 무작위 결측 (MAR) | 결측이 다른 관측된 변수와 관련 있음 | 남성 응답자가 체중 항목을 더 많이 비워둠 |
| 비무작위 결측 (MNAR) | 결측이 결측된 값 자체와 관련 있음 | 소득이 높은 사람일수록 소득을 기재하지 않음 |
3. 결측값 처리 방법
| 방법 | 설명 | 특징 |
| 완전분석법 (Complete Analysis) | 결측값이 있는 레코드(행)를 삭제하고 완전한 데이터만 분석 | 간단하지만 데이터가 줄어 효율성 저하, 편향 가능 |
| 평균대치법 (Mean Imputation) | 결측값을 해당 변수의 평균으로 대체 | 비조건부(전체 평균) / 조건부(회귀 등으로 추정), 분산이 과소 추정될 수 있음 |
| 단순확률대치법 (Single Stochastic Imputation) | 평균대치에 확률적 변동을 더해 대체 | 핫덱(같은 데이터셋에서 비슷한 값), 콜드덱(외부 데이터 활용) 등 |
| 다중대치법 (Multiple Imputation) | 여러 번 대치해 여러 데이터셋을 만든 뒤 결과를 결합 | 대치 → 분석 → 결합 3단계, 통계적 효율성 높음 |
49회 출제 포인트 : "완전분석법 - 결측값을 평균으로 대치" ✕ → 평균으로 채우는 건 평균대치법이야
4. R에서 결측값 다루기
| 코드 | 기능 |
| is.na(x) | 결측값 여부를 TRUE/FALSE로 반환 |
| sum(is.na(x)) | 결측값 개수 |
| complete.cases(df) | 결측값이 없는 행만 TRUE |
| na.omit(df) | 결측값이 있는 행 제거 (완전분석법) |
| mean(x, na.rm=TRUE) | 결측값을 제외하고 평균 계산 |
참고 : mean(x)처럼 na.rm 옵션 없이 계산하면 결과가 NA로 나와
[ 최근 기출 출제 포인트 ]
| 회차 | 출제 포인트 |
| 49회 | 결측값 처리 방법 설명 중 잘못된 것 고르기 (완전분석법과 평균대치법 설명 바꿔치기) |
| 48회 | 결측값이 포함된 데이터에서 확률 계산 (하나라도 결측인 행의 비율, 여사건 활용) |
| 출제 경향 | 대치법 정의 구분, R 함수 결과 해석 |
[ 자주 묻는 질문 ]
Q. 결측값은 무조건 채워야 해?
A. 아니야, 결측 비율과 발생 원인에 따라 삭제·대치를 선택해, 무조건 제거하거나 무조건 채우라는 보기는 함정이야
Q. 평균대치법의 단점은?
A. 모든 결측을 같은 평균값으로 채우니까 데이터가 평균에 몰려서 분산(변동성)이 실제보다 작게 추정될 수 있어
[ 시험 포인트 정리 ]
| 키워드 | 핵심 |
| MCAR · MAR · MNAR | 완전 무작위 / 무작위 / 비무작위 결측 |
| 완전분석법 | 결측 행 삭제, 효율성 저하 |
| 평균대치법 | 평균으로 대체, 분산 과소 추정 |
| 단순확률대치법 | 확률적 변동 추가, 핫덱·콜드덱 |
| 다중대치법 | 대치 → 분석 → 결합 |
| R 함수 | is.na, complete.cases, na.omit, na.rm=TRUE |
[ 기출변형문제 ]
※ 47~49회 출제 포인트를 바탕으로 새로 만든 변형문제야
Q1. 결측값 처리 방법에 대한 설명으로 옳지 않은 것은?
① 완전분석법은 결측값이 있는 행을 제거하고 분석한다
② 평균대치법은 결측값을 변수의 평균으로 대체한다
③ 다중대치법은 대치·분석·결합 단계를 거친다
④ 완전분석법은 결측값을 해당 변수의 평균값으로 채운다
Q2. 여러 번의 대치로 복수의 데이터셋을 만든 뒤 분석 결과를 결합하는 방법은?
① 완전분석법
② 평균대치법
③ 단순확률대치법
④ 다중대치법
Q3. 소득이 높은 사람일수록 소득 항목을 비워두는 경우 해당하는 결측 유형은?
① MCAR
② MAR
③ MNAR
④ 정상 결측
Q4. 데이터 100건 중 A변수만 결측인 행이 8건, B변수만 결측인 행이 6건, 둘 다 결측인 행이 2건이다. 하나 이상의 결측이 있는 행의 비율은?
① 14%
② 16%
③ 18%
④ 20%
Q5. R에서 결측값을 제외하고 평균을 계산하는 코드는?
① mean(x)
② mean(x, na.rm=TRUE)
③ is.na(mean(x))
④ na.omit(mean)
[ 정답 & 해설 ]
| 문항 | 정답 및 해설 |
| Q1 | ④ 평균으로 채우는 건 평균대치법 (49회 출제 포인트) |
| Q2 | ④ 다중대치법 : 대치 → 분석 → 결합 |
| Q3 | ③ 결측이 결측된 값 자체와 관련 = MNAR |
| Q4 | ② (8 + 6 + 2) / 100 = 16% (48회 확률 계산 유형 변형) |
| Q5 | ② na.rm=TRUE 옵션으로 결측 제외 |
다음 글은 튀는 값을 찾아내는
[이론 21] 이상값 탐지와 상자그림 · IQR
▶ [이론 21] 이상값 탐지와 상자그림·IQR 보러가기
을 정리해볼게!
▶ ADsP · AI 자격증 스터디 자료 보러가기 (AI DATA 자격증 스터디 클럽)
ADsP 준비하시는 분들 모두 화이팅입니다~~~~~ ^^