← 1. 데이터 살펴보기

결측치

데이터에서 관측되어야 할 값이 누락된 상태를 말하며, 처리 방법에 따라 분석 결과가 달라질 수 있습니다.

MCAR · MAR · MNAR목록삭제다중대체결측률 확인

서비스 품질4명 · 2.0%가격 만족도20명 · 10.0%재이용 의향10명 · 5.0%변수별 결측 수제외 28명분석 172명200명

설문조사를 진행하거나 데이터를 수집하다 보면 일부 값이 비어 있는 경우가 있습니다. 예를 들어 고객 500명을 대상으로 만족도 조사를 진행했는데, 일부 응답자가 소득에 관한 질문에 답하지 않았거나 특정 문항을 건너뛰었다고 가정해 보겠습니다.

이처럼 데이터에서 관측되어야 할 값이 누락된 상태를 결측치(Missing Data)라고 합니다. 결측치는 단순히 빈칸이 있다는 문제로 끝나지 않습니다. 결측치가 발생한 이유와 처리 방법에 따라 분석에 사용되는 표본 수가 달라지고, 통계분석 결과에도 영향을 줄 수 있습니다.

이번 글에서는 결측치의 기본 개념부터 결측 유형, 대표적인 처리 방법, 실제 분석 사례, 결과를 해석할 때 주의해야 할 점까지 살펴보겠습니다.

SECTION 1

결측치란 무엇인가요?

결측치는 데이터에 있어야 할 값이 기록되지 않았거나 관측되지 않은 상태를 의미합니다.

예를 들어 학생 100명을 대상으로 공부 시간, 시험 점수, 학습 만족도를 조사했다고 가정해 보겠습니다. 대부분의 학생은 모든 문항에 답했지만, 일부 학생은 공부 시간을 입력하지 않았거나 만족도 문항에 응답하지 않았을 수 있습니다. 이때 비어 있는 값이 결측치입니다.

서비스 품질가격 만족도재이용 의향응답자 01응답자 02응답자 03결측응답자 04응답자 05결측응답자 06결측응답자 07응답자 08결측결측응답자 09결측응답자 10결측 있는 응답자 5명 · 완전 5명
응답자별 결측 칸

결측치는 다양한 이유로 발생할 수 있습니다.

마지막 사례처럼 질문이 적용되지 않아 비어 있는 값은 일반적인 무응답과 구분해야 합니다. 예를 들어 구매 경험이 없는 사람에게 구매 만족도를 질문하지 않았다면, 해당 값은 단순한 누락이 아니라 설문 구조상 발생한 비해당 값일 수 있습니다.

따라서 결측치를 처리하기 전에 왜 값이 비어 있는지부터 확인하는 것이 중요합니다.

SECTION 2

결측치는 왜 문제가 되나요?

결측치가 포함된 데이터를 그대로 분석하면 사용하려는 통계분석 방법에 따라 일부 관측값이 자동으로 제외되거나 분석이 실행되지 않을 수 있습니다.

또한 결측치가 발생한 방식에 따라 분석 결과에 편향이 발생할 가능성도 있습니다. 예를 들어 고객 만족도 조사에서 불만족한 고객일수록 만족도 문항에 응답하지 않는다고 가정해 보겠습니다. 이때 응답이 누락된 고객들을 모두 제외하면 만족도가 높은 고객의 응답이 상대적으로 많이 남을 수 있습니다.

그 결과 실제보다 평균 만족도가 높게 나타날 가능성이 있습니다. 결측치가 문제가 되는 이유는 크게 세 가지입니다.

첫째, 분석에 사용되는 표본 수가 줄어들 수 있습니다.

표본 수가 감소하면 추정의 정밀도가 낮아지고 통계적 검정력도 떨어질 수 있습니다.

둘째, 분석 결과에 편향이 발생할 수 있습니다.

특정 특성을 가진 사람이나 관측값에서 결측치가 집중적으로 발생하면 남아 있는 데이터가 원래의 조사 대상을 충분히 대표하지 못할 수 있습니다.

셋째, 변수 간 관계가 달라질 수 있습니다.

결측값을 어떤 방식으로 처리하느냐에 따라 평균, 분산, 상관계수, 회귀계수 등이 달라질 수 있습니다. 따라서 결측치를 단순히 삭제할지, 다른 값으로 대체할지 결정하기 전에 결측 현황을 확인해야 합니다.

SECTION 3

결측치에는 어떤 유형이 있나요?

통계학에서는 결측치가 발생하는 원리를 크게 세 가지로 구분합니다.

MCAR, MAR, MNAR입니다. 이러한 구분은 결측치를 어떤 방법으로 처리할지 판단하는 데 중요한 기준이 됩니다.

결측 유형의미예시
MCAR관측된 값과 관측되지 않은 값 모두와 무관하게 결측 발생무작위 장비 오류
MAR관측된 변수들을 고려하면 결측 발생이 관측되지 않은 값과 무관연령에 따라 소득 응답률이 달라짐
MNAR관측된 변수를 고려해도 누락된 값 자체와 결측 발생이 관련소득이 높은 사람이 자신의 소득을 공개하지 않음
관측된 다른 변수 →누락된 값 자체 →예MCAR완전무작위결측––장비 오류MAR조건부 무작위결측✓–연령별 응답률MNAR비무작위결측✓✓고소득 무응답값이 빌 가능성에 영향을 주는가
결측의 세 가지 유형

완전무작위결측(MCAR: Missing Completely At Random)

MCAR은 결측 발생이 데이터의 관측값이나 누락된 값과 관계없이 완전히 무작위로 발생하는 경우입니다. 예를 들어 측정 장비가 무작위로 고장 나 일부 참가자의 측정값이 기록되지 않았다고 가정해 보겠습니다. 장비 고장이 참가자의 특성이나 실제 측정값과 관계없이 발생했다면 MCAR에 해당할 수 있습니다.

MCAR에서는 완전한 관측값만 분석하더라도 특정 조건에서 편향 없이 모수를 추정할 수 있지만, 표본 수가 줄어들어 분석의 효율성이 낮아질 수 있습니다.

조건부 무작위결측(MAR: Missing At Random)

MAR은 결측 발생 여부가 관측된 다른 변수들과 관련되어 있지만, 그 변수들을 고려하면 누락된 값 자체와는 추가적인 관련이 없다고 가정하는 경우입니다. 예를 들어 연령대에 따라 소득 질문의 응답률이 다르다고 가정해 보겠습니다.

연령 정보가 수집되어 있고, 연령을 고려한 뒤에는 실제 소득이 응답 여부에 추가적인 영향을 미치지 않는다면 MAR로 볼 수 있습니다. MAR은 다중대체법이나 최대우도법과 같은 결측치 처리 방법에서 중요한 가정으로 사용됩니다. 다만 실제 데이터만으로 MAR 가정이 확실히 성립한다고 증명하기는 어렵습니다.

비무작위결측(MNAR: Missing Not At Random)

MNAR은 관측된 변수들을 고려하더라도 누락된 값 자체가 결측 발생과 관련되는 경우입니다. 예를 들어 소득이 높은 사람일수록 자신의 소득을 공개하지 않을 가능성이 높고, 관측된 다른 변수만으로 이러한 경향을 충분히 설명할 수 없다면 MNAR에 해당할 수 있습니다.

이 경우 일반적인 삭제나 대체 방법만으로는 편향을 해결하기 어려울 수 있습니다. 따라서 결측 발생 과정을 별도로 모형화하거나 다양한 가정을 적용한 민감도 분석이 필요할 수 있습니다.

SECTION 4

실제 사례: 만족도 조사에서 결측치가 발생했다면?

한 기업에서 고객 200명을 대상으로 서비스 만족도 조사를 진행했다고 가정해 보겠습니다.

조사 항목은 서비스 품질, 가격 만족도, 재이용 의향입니다. 수집된 데이터의 결측 현황은 다음과 같습니다.

변수전체 응답자결측 수결측률
서비스 품질200명4명2.0%
가격 만족도200명20명10.0%
재이용 의향200명10명5.0%
분석 172명제외 28명서비스 품질4명가격 만족도20명재이용 의향10명
변수별 결측률과 남는 표본

가격 만족도는 전체 응답자 중 10%가 답변하지 않아 다른 변수보다 결측률이 높게 나타났습니다. 이 결과를 확인했다면 먼저 가격 만족도 문항에서 왜 응답 누락이 많이 발생했는지 살펴봐야 합니다. 예를 들어 가격 만족도에 응답하지 않은 고객이 특정 연령대나 이용 요금제에 집중되어 있는지 확인할 수 있습니다.

또한 세 변수에 결측치가 각각 존재하더라도, 실제 분석에서 제외되는 사람 수는 결측값이 어떤 응답자에게 겹쳐 있는지에 따라 달라집니다. 만약 세 변수 중 하나라도 값이 누락된 응답자가 총 28명이라면, 완전한 응답만 사용하는 분석에서는 172명의 데이터가 남게 됩니다.

이처럼 변수별 결측률뿐 아니라 분석에 필요한 변수들을 모두 갖춘 완전관측치 수도 확인해야 합니다.

SECTION 5

결측치는 어떻게 처리하나요?

결측치를 처리하는 방법에는 여러 가지가 있습니다.

대표적으로 결측이 있는 관측값을 제외하는 방법과 누락된 값을 추정해 대체하는 방법이 있습니다.

처리 방법특징
목록삭제(Listwise Deletion)필요한 변수 중 결측이 있는 관측값을 제외
쌍별삭제(Pairwise Deletion)변수 쌍마다 사용 가능한 관측값 활용
평균·중앙값 대체결측값을 대표값으로 대체
회귀 기반 대체다른 변수와의 관계를 이용해 값 예측
다중대체(Multiple Imputation)여러 개의 대체 데이터셋을 생성하여 불확실성 반영
최대우도 기반 방법확률모형을 이용해 관측된 정보를 활용하여 추정

목록삭제(Listwise Deletion)

목록삭제는 분석에 필요한 변수 중 하나라도 결측값이 있는 관측값을 제외하는 방식입니다. 예를 들어 공부 시간, 시험 점수, 학습 만족도 세 변수를 사용하는 분석에서 한 학생의 학습 만족도 값이 비어 있다면 해당 학생의 자료 전체를 그 분석에서 제외합니다.

방법이 간단하고 처리 과정이 명확하다는 장점이 있습니다. 하지만 결측치가 많으면 분석에 사용할 수 있는 표본 수가 크게 감소할 수 있습니다. 또한 MCAR과 같은 적절한 조건이 충족되지 않으면 결과에 편향이 발생할 수 있습니다.

쌍별삭제(Pairwise Deletion)

쌍별삭제는 각 변수 쌍에서 사용할 수 있는 관측값만 이용하는 방식입니다. 예를 들어 공부 시간과 시험 점수의 상관관계를 계산할 때 두 변수에 값이 있는 학생만 사용하고, 공부 시간과 만족도의 상관관계를 계산할 때는 또 다른 관측값 집합을 사용할 수 있습니다.

목록삭제보다 더 많은 데이터를 활용할 수 있다는 장점이 있지만, 분석 결과마다 사용되는 표본 수가 달라질 수 있습니다. 또한 서로 다른 관측값을 사용해 계산한 상관행렬은 수학적으로 일관성이 떨어지는 문제가 생길 수 있습니다.

평균·중앙값 대체(Mean/Median Imputation)

평균 또는 중앙값 대체는 결측된 값을 해당 변수의 평균이나 중앙값으로 채우는 방식입니다. 예를 들어 고객 만족도 점수의 평균이 3.8점이라면, 누락된 값을 3.8로 대체할 수 있습니다. 구현이 쉽고 모든 행을 유지할 수 있다는 장점이 있습니다.

하지만 같은 값을 반복해서 넣으면 데이터의 변동성이 실제보다 작아질 수 있습니다. 변수 사이의 관계도 왜곡될 수 있으므로 통계적 추론이 중요한 연구에서 기본적인 해결책으로 사용하기에는 한계가 있습니다. 특히 단순 대체 후 일반적인 분석을 수행하면 대체 과정의 불확실성이 충분히 반영되지 않을 수 있습니다.

회귀 기반 대체(Regression Imputation)

회귀 기반 대체는 다른 변수들과의 관계를 이용해 결측값을 예측하는 방식입니다. 예를 들어 소득 정보가 누락되었다면 연령, 직업, 교육 수준 등 다른 변수를 활용하여 소득을 예측할 수 있습니다.

평균 대체보다 변수 간 관계를 활용할 수 있지만, 예측값 하나로만 대체하면 대체값의 불확실성을 충분히 반영하지 못할 수 있습니다. 따라서 단순한 회귀 예측값 대체와 불확실성을 반영하는 다중대체는 구분해야 합니다.

SECTION 6

다중대체법(Multiple Imputation)이란 무엇인가요?

다중대체법은 결측값을 하나의 숫자로 확정해서 채우는 대신, 가능한 값의 불확실성을 반영하여 여러 개의 완성된 데이터셋을 만드는 방법입니다.

예를 들어 결측치가 포함된 원본 데이터가 있다고 가정해 보겠습니다. 다중대체법을 사용하면 결측값을 서로 조금씩 다르게 채운 데이터셋을 여러 개 생성할 수 있습니다. 이후 각 데이터셋에 동일한 통계분석을 수행하고, 분석 결과를 통합합니다.

일반적인 과정은 다음과 같습니다.

1결측 패턴 확인2여러 데이터셋 생성3같은 분석 수행4결과 통합0.420.370.45최종 추정치추정치 + 분산결합결측대체값
다중대체법의 네 단계

① 결측 패턴 확인

어떤 변수에 결측값이 있는지, 결측이 어떤 형태로 나타나는지 확인합니다.

② 여러 개의 대체 데이터셋 생성

관측된 변수 사이의 관계와 통계적 모형을 이용하여 결측값을 여러 방식으로 대체합니다.

③ 각 데이터셋에서 동일한 분석 수행

생성된 데이터셋마다 회귀분석이나 평균 비교 등 연구 목적에 맞는 분석을 수행합니다.

④ 결과 통합

각 분석의 추정치와 분산을 결합하여 최종 결과를 산출합니다. 이때 대표적으로 Rubin의 결합 규칙(Rubin's Rules)을 활용합니다. 다중대체법은 단순 평균 대체와 달리 결측값 추정의 불확실성을 반영할 수 있다는 장점이 있습니다.

다만 다중대체법을 사용한다고 해서 모든 결측 문제가 해결되는 것은 아닙니다.

대체모형이 적절해야 하며, 일반적으로 MAR과 같은 결측 메커니즘에 관한 가정도 고려해야 합니다.

SECTION 7

결측률이 높으면 반드시 대체해야 하나요?

결측률이 높다고 해서 반드시 값을 대체해야 하는 것은 아닙니다.

반대로 결측률이 낮다고 해서 무조건 삭제해도 되는 것도 아닙니다. 예를 들어 결측률이 2%이더라도 특정 집단에서만 결측이 발생했다면 분석 결과에 편향이 생길 수 있습니다. 반대로 결측률이 비교적 높더라도 결측 발생 원리를 이해하고 적절한 분석 모형을 적용할 수 있다면 일부 정보를 활용할 수 있습니다.

결측치 처리 방법을 결정할 때는 다음 요소를 함께 고려해야 합니다.

따라서 모든 데이터에 동일한 결측률 기준을 적용하기보다는 연구 목적과 데이터의 특성에 따라 판단해야 합니다.

SECTION 8

결측치 처리 결과는 어떻게 보고하나요?

연구 논문이나 분석 보고서에서는 결측치를 어떤 방식으로 처리했는지 명확하게 설명하는 것이 중요합니다.

특히 결측치 처리 전후의 표본 수가 달라진 경우에는 그 차이를 확인할 수 있어야 합니다. 예를 들어 고객 만족도 조사에서 총 200명의 데이터를 수집했지만, 분석에 필요한 변수에 결측값이 포함된 28명을 제외했다고 가정하겠습니다. 이 경우 다음과 같이 보고할 수 있습니다.

분석 결과 보고 예시

전체 200명의 응답 자료 중 분석에 필요한 변수에서 결측값이 확인된 28명을 제외하고, 최종 172명의 데이터를 분석에 사용하였다. 결측치는 목록삭제 방식으로 처리하였다.

다중대체법을 사용했다면 대체 방법과 생성한 데이터셋 수, 분석 결과를 통합한 방법 등을 추가로 설명하는 것이 좋습니다. 또한 결측치 처리 방식에 따라 주요 분석 결과가 얼마나 달라지는지 확인하는 민감도 분석도 유용할 수 있습니다.

SECTION 9

결측치 처리는 어디에서 중요할까요?

결측치 처리는 설문조사뿐 아니라 거의 모든 데이터 분석에서 중요합니다.

설문조사 및 사회과학 연구

응답자가 일부 문항을 건너뛰거나 민감한 질문에 답하지 않는 경우가 발생할 수 있습니다.

교육 연구

시험 점수나 학습 활동 기록이 일부 누락되거나 조사 도중 학생이 참여를 중단할 수 있습니다.

보건 및 의료 연구

추적 조사 과정에서 일부 환자의 측정값이 누락되거나 연구 참여가 중단될 수 있습니다.

기업 및 고객 데이터 분석

구매 기록, 고객 정보, 서비스 이용 기록 등이 수집되지 않았거나 시스템 간 데이터 병합 과정에서 누락될 수 있습니다.

머신러닝 및 예측분석

입력 변수에 결측값이 존재하면 일부 알고리즘은 이를 직접 처리하지 못할 수 있으며, 결측값 처리 방법에 따라 예측 성능도 달라질 수 있습니다. 이처럼 결측치 처리는 분석 결과의 정확성과 신뢰성을 확보하기 위해 반드시 검토해야 할 데이터 준비 과정입니다.

✓마무리

결측치는 채우는 것보다 이해하는 것이 먼저입니다.

결측치는 데이터에서 값이 누락된 상태를 의미하며, 설문조사와 실험 연구, 기업 데이터 분석 등 다양한 상황에서 발생합니다.


결측치를 처리하는 방법에는 목록삭제, 쌍별삭제, 평균·중앙값 대체, 회귀 기반 대체, 다중대체, 최대우도 기반 방법 등이 있습니다. 하지만 어떤 방법이 항상 가장 좋은 것은 아닙니다.

결측률이 얼마나 높은지뿐 아니라 왜 결측이 발생했는지, 어떤 변수에서 누락되었는지, 분석 결과에 어떤 영향을 미칠 수 있는지를 함께 살펴봐야 합니다.

KEY TAKEAWAY

결측치 처리의 목적은 단순히 데이터의 빈칸을 없애는 것이 아니라, 누락된 정보로 인해 분석 결과가 왜곡될 가능성을 줄이고 신뢰할 수 있는 결론을 얻는 데 있습니다.