1093 단어
5 분
결측값 처리 방법
2026-07-24
태그 없음

단순대치법

  1. 완전 분석법 : 결측값이 존재하는 데이터를 삭제

  2. 평균 대치법 :평균 혹은 중앙값으로 결측값을 대치함

    1. 비조건부 평균 대치법: 평균으로
    2. 조건부 평균: 회귀분석을 사용하여 대치함
  3. 단순 확률대치법: 평균대치법에서 과소추정문제를 보완하고자 함 KNN으로 해결

    K개의 데이터 중 가장 많은 데이터로 대치하는 방법이지만 적절한 K값의 선정이 어려움

다중 대치법 : 여러번의 대치를 통해 여러개의 가상적 완전 자료를 만드는 방법. 대치, 분석, 결합과정을 통해 구성됨.

R에서 함수 complete.cases() 레코드에 결측값이 있으면 FALSE, 없으면 TRUE, is.na() 결측값이 있으면 TRUE, 없으면 FALSE

이상값 처리 방법

이상값이란 극단적으로 크거나 극단적으로 작은값을 의미

어떻게 판단하나요?̊̈

  1. ESD(Extreme Studentized Deviation)

    평균으로부터 표준편차 3만큼 떨어진 값들을 이상값으로 인식 즉 전체데이터의 약 0.3퍼센트

  2. 사분위수

  3. 표준편차의 2.5배만큼

결측값 처리(Missing Value)#

1. 단순 대치법(Single Imputation)#

(1) 완전 분석법 (Complete Case Analysis)#

  • 결측값이 포함된 행(레코드)을 삭제하는 방법
  • 구현이 간단하지만 데이터 손실이 발생할 수 있음

(2) 평균 대치법 (Mean Imputation)#

  • 결측값을 평균 또는 중앙값으로 대체하는 방법
  • 비조건부 평균 대치법
    • 전체 평균(또는 중앙값)으로 대치
  • 조건부 평균 대치법
    • 회귀분석 등을 이용하여 예측한 값으로 대치

단점: 분산이 감소하여 통계량이 과소추정될 수 있음

(3) 단순 확률 대치법 (Hot Deck, KNN 등)#

  • 평균 대신 실제 관측값 또는 유사한 데이터를 이용하여 대치
  • 평균 대치법의 분산 감소 문제를 보완

KNN 대치(KNN Imputation)

  • 가장 가까운 K개의 이웃을 찾은 후 해당 이웃들의 값을 이용하여 결측값을 대치
  • 연속형은 평균, 범주형은 최빈값을 사용하는 경우가 많음
  • K값 선택에 따라 결과가 달라질 수 있음

2. 다중 대치법(Multiple Imputation)#

결측값을 여러 번 추정하여 여러 개의 완전한 데이터를 생성한 뒤 결과를 종합하는 방법이다.

절차

  1. 대치(Imputation)
  2. 분석(Analysis)
  3. 결합(Pooling)

장점

  • 결측으로 인한 불확실성을 반영
  • 평균 대치보다 통계적 추정이 우수

R 결측값 함수#

함수의미
complete.cases()결측값이 없으면 TRUE, 있으면 FALSE
is.na()결측값이면 TRUE, 아니면 FALSE
na.omit()결측값이 있는 행 삭제

이상값(Outlier)#

정의#

다른 관측값과 비교하여 지나치게 크거나 작은 값

이상값 판별 방법#

1. ESD(Extreme Studentized Deviation)#

  • 평균 ± 3σ(표준편차)를 벗어난 값을 이상값으로 판단
  • 정규분포에서는 약 0.3%가 해당

2. 사분위수(IQR) 방법#

  • Q1 - 1.5×IQR 미만
  • Q3 + 1.5×IQR 초과

IQR = Q3 - Q1

3. Z-score#

  • 일반적으로 |Z| > 3 (또는 2.5)을 이상값으로 판단

이상값 처리 방법#

1. 이상값 제거(Deletion)#

  • 이상값을 데이터에서 제거
  • 데이터 수가 충분할 때 사용

2. 극단값 절단(Trimming)#

극단적으로 큰 값과 작은 값을 제거하는 방법이다.

  • 기하평균(Geo.mean) 이용
    • 기하평균 등을 기준으로 극단값을 제거하여 이상값의 영향을 줄인다.
  • 상·하위 일정 비율 제거(Trimmed Mean)
    • 상위 10%, 하위 10%와 같이 일정 비율의 데이터를 제거한 후 분석한다.

3. 극단값 조정(Winsorization)#

상한값과 하한값을 벗어나는 값을 제거하지 않고 상한값 또는 하한값으로 변경하여 사용한다.

예시

  • 상한값 = 100
  • 하한값 = 10
원래 값조정 후
510
3030
120100

4. 변환(Transformation)#

  • 로그(Log) 변환
  • 제곱근(Square Root) 변환
  • Box-Cox 변환

5. 유지(Retention)#

  • 이상값이 실제 중요한 의미를 가지는 경우 그대로 분석한다.
결측값 처리 방법
https://fuwari.vercel.app/posts/결측값-처리-방법/
저자
Argon
게시일
2026-07-24
라이선스
CC BY-NC-SA 4.0