< 행동 데이터 분석 > 6장 관련 내용입니다.
들어가기
데이터 분석을 하다보면, 결측치는 피할 수 없습니다. 결측치를 처리할 때 무지성으로 평균값을 넣던가, 최빈값을 넣던가 혹은 결측치의 양이 매우 적다면 무시하고 지우는 것도 방법일 것입니다. 그러나 결측치를 생각 없이 처리하면 문제가 발생할 수 있습니다.
생각없이 결측치를 처리한다면?
금융 결제와 관련된 데이터를 처리한다고 하겠습니다. 어플 사용과 관련된 데이터가 있다고 가정합시다. 어플 사용 내역이 없을 경우, 당연히 해당 데이터는 결측치로 들어갈 것입니다. 이 데이터가 없는 행을 모두 삭제하면 어떻게 될까요?
그렇게 될 경우 해당 데이터는 젊은 고객을 중심으로 편향될 것이기에 전체 고객을 대표한다고 함부로 말하기 어려울 것입니다. 즉, 편향된 데이터를 얻게 됩니다. 이러한 상황을 피하기 위해, 우리는 조금 더 조심스럽게 결측치 처리를 해야할 것입니다.
결측치 처리 여부 판단하기
변수 단위로 결측치 처리 여부를 판단해봅시다. 어떤 변수를 삭제해야 할까요?
삭제 판단하기 - 쉬운 방법
만일 특정 변수가 결측치가 많다고 삭제했는데 그 변수가 중요한 영향을 끼칠 변수라면 지워서는 안 되는 놈일 것입니다. 이를 판단하는 쉬운 전략은 다음과 같습니다.
(회귀 분석 기준)
- 결측치가 많은 행을 다음과 같이 대체합니다.
(1) 처리하지 않는다. (그냥 지운다)
(2) 최대값으로 대체한다.
(3) 최솟값으로 대체한다.
- 3가지 데이터 셋을 만들어, 간단하게 회귀분석을 실행합니다. 혹은 분류 모델이 될 수도 있겠습니다.
- 만일 3가지의 결과에 큰 차이가 없다면, 특히 회귀분석의 경우 해당 변수의 회귀 계수가 큰 차이가 없다면 해당 변수는 지워도 무방할 것입니다.
결측의 요인 - 루빈의 분류
루빈의 분류에 따른 결측 분류 요인은 다음과 같이 세 가지가 있습니다.
분류 | 설명 |
MCAR (Missing Complely at Random) |
완전 무작위 결측 변수의 결측이 데이터 외부의 변수에만 영향을 받음, 즉 관찰되지 않은 무작위 요인에 의해서만 영향을 받음 |
MAR (Missing at Random) |
무작위 결측 누락된 변수는 특정 변수와 관련은 있지만 결과에는 영향을 주지 않는다. |
MNAR (Missing Not at Random) |
무작위가 아닌 결측 특정 변수의 값이 자신의 결측에 영향을 주는 경우 (ex 바닐라 맛 선호도 결측 여부에 의해, 아이스크림 맛 선호도의 결측 여부가 갈린다) |
따라서 우리는 결측치가 이 세가지 중 어떤 것이냐에 따라서 실제 처리를 다르게 해야함을 알 수 있습니다.
즉, 결측치가 어떤 유형인지에 대해 파악을 해야 한다는 의미입니다.
결측치 유형 판단하기 - 로지스틱 회귀분석
한 가지, 방법은 로지스틱 회귀분석을 사용합니다. 즉, 결측의 여부가 다른 변수들이나 자기 자신에 의해서 예측이 유의미하게 되는지를 보는 것입니다.
Case 1. 어떤 계수도 결측치 여부 파악에 유의미하지 않다면 -> MCAR로 취급하기
이 경우는, 결측이 무작위고 예측 가능하다라고 해석하는 것이 아니라, 현재 분석에 포함된 변수는 해당 변수의 결측과 상관 없다 라고 말하는 것입니다.
Case 2. 유의미한 계수가 존재한다면 -> MAR이나 MNAR로 취급하기.
이 경우, 변수들관의 관계를 조금 더 따져봐야 합니다. 변수간의 연관성에 따라서 MNAR로 봐야 할 가능성이 더 높아집니다.
'Archive > 데이터 분석 관련' 카테고리의 다른 글
[Data] Multi-Armed Bandit - 개념편 (0) | 2024.04.11 |
---|---|
[Data] A/B 테스트 개념 다지기 (0) | 2024.01.31 |
[Data] 업리프트 모델링이란? - 예제편 (0) | 2024.01.29 |
[Data] 업리프트 모델링이란? - 개념편 (0) | 2024.01.29 |
[Data] 이탈분석 - 생존분석 개괄편 (1) | 2024.01.24 |