결측치의 정의와 결측치가 발생하는 원인이 무엇인지, 이를 대체하는 방법은 어떤 것이 있는지 배웠습니다.
결측치: 입력이 되어있지 않은 값
언어별로
- NA: Not Available (유효하지 않음)
- NaN: Not a Number (숫자가 아닌)
- Null: 아무것도 존재하지 않음
1. NA
사용할 수 없는 데이터를 뜻하며, 일반적으로 결측값을 의미합니다
2. NaN
정의 되지 않거나 할 수 없는 결과를 수학 연산으로 나타내는데 사용합니다
R언어에서는 NaN과 NA를 거의 동일하게 봅니다
NaN은 사용할 수 없는 숫자 데이터, NA는 사용할 수 없는 모든 유형의 데이터입니다
3. NULL
NULL은 어느 언어이든간에 대상이 없음을 의미합니다
결측치가 발생하는 이유
- 실제로 값을 입력하지 않은 경우
- 설문조사 특정 질문에 미응답
- 데이터 오류 등
결측치는 데이터의 손실을 불러올 수 있음
결측치 대체에 따라 데이터에세 편향이 생길 수 있음
결측치 처리에 따라 분석결과가 매우 달라질 수 있음
결측값 대체하기
1. 평균으로 대체하기
- 변수의 결측값을 평균값으로 대체
- 특정 정보가 존재하지 않을 경우 평균값이 가장 좋은 샘플이라는 논리에 기인
- 정보의 손실은 줄어들 수 있으나, 결측치에 대한 불확실성을 고려하지 못함 (예: 나이 평균이 20인데 실제 나이가 4살일 수 있다.)
2. 완전제거하기
- 결측치가 포함된 값을 분석 대상에서 제거하기
- 분석에서 편향이 발생할 가능성이 적음
- 정보의 손실 및 검정력 약화 문제 야기 가능성 존재
3. 회귀대체법
- 회귀 방정식을 통해 결측값을 예측값으로 대체하는 방법
- 변수의 특성에 따라 회귀식을 구성해 예측력 향상을 꾀함
- 평균으로 대체하기와 마찬가지로 결측치에 대한 불확실성을 고려하지 못함
결측치를 대처하는 방법들 모두 장단점이 존재했습니다. 따라서 어느 상황에 어느 방법을 써야 더 정확한 예측을 할 수 있는지 궁금했습니다.