Pandas 결측치 처리 DeepDive

이상민·2025년 2월 7일

데이터 분석

목록 보기
1/3

Pandas의 누락 데이터 처리 기능이 데이터 정리에 미치는 이점

1. Pandas에서 결측치(Null)란?

Pandas에서는 결측치를 NA, NaT, np.nan, None 등으로 표현한다.

  • NA (Not Available): 일반적인 결측값
  • NaT (Not a Time): 시간 데이터에서의 결측값
  • np.nan / None: 결측값을 나타내는 또 다른 표현

이러한 결측치를 적절히 처리하는 것은 데이터 분석과 모델링의 정확도 및 신뢰성을 높이는 핵심 과정이다.


2. 결측치 처리 방법 (대분류)

결측치 처리 방법은 크게 다음 세 가지로 나눌 수 있다.

  1. 그대로 둔다.
  2. 행 또는 열을 삭제한다.
  3. 결측값을 대체한다.

각 방법마다 장점과 단점이 존재하며, 데이터의 특성에 따라 적절한 방법을 선택해야 한다.


3. 결측치 처리 방법 상세 설명

① 결측값을 그대로 둔다

  • 예시: 기상 데이터에서 강수량 측정이 실패한 경우, 해당 값을 0으로 설정하면 왜곡될 수 있음.
  • 장점: 데이터의 원본 상태를 유지할 수 있음.
  • 단점: 모델이 결측값을 직접 처리하지 못할 경우 오류 발생 가능.

② 행 또는 열을 삭제한다

  • 결측치가 포함된 행 또는 열을 제거하여 데이터의 품질을 높이는 방법.
  • 장점:
    • 데이터의 품질과 신뢰도를 향상시킬 수 있음.
    • 연산 속도 향상 및 메모리 비용 절감 가능.
  • 단점:
    • 데이터 손실이 발생할 수 있음.
    • 결측값이 많은 변수(열)를 삭제하면 중요한 정보를 잃을 수도 있음.
    • 삭제 여부를 결정하기 위해 결측치 비율 및 인과관계를 분석해야 함.

③ 결측값을 대체한다 (Imputation)

  • 결측치를 특정 값으로 채우는 방법.
  • 다양한 기법이 있으며, 데이터의 성격에 따라 적절한 방법을 선택해야 함.

주요 대체 방법과 특징

번호방법설명장점단점
1Mean Imputation변수의 평균값으로 결측치를 대체변수의 평균 유지데이터 변동성 감소
2Substitution다른 데이터에서 값을 가져와 대체새로운 데이터 활용 가능데이터 왜곡 가능
3Hot Deck Imputation비슷한 데이터를 랜덤 샘플링하여 대체랜덤 샘플링으로 변동성 확보일관성 부족 가능
4Cold Deck Imputation특정 규칙을 적용해 유사한 값으로 대체규칙적인 대체로 일관성 유지랜덤성 부족
5Regression Imputation결측 변수를 회귀 분석으로 예측하여 대체변수 간 관계 유지 가능변동성 부족
6Stochastic Regression Imputation회귀 분석 후 랜덤 오차 추가변수 간 관계 유지 + 랜덤성 추가계산 비용 증가
7Interpolation & Extrapolation시간 순서 데이터를 보간법으로 대체시계열 데이터 활용 가능시간 데이터 아니면 적용 어려움
8k-NN Imputationk-NN 알고리즘으로 유사한 데이터 활용변수 간 관계 유지 가능대량 데이터에서 계산 비용 증가
9Multiple Imputation (MICE)여러 개의 대체값을 생성 후 평균정교한 보완 가능모델링 과정이 복잡
10Bayesian Imputation베이지안 모델을 사용하여 대체불확실성 고려 가능계산 복잡
11Mode Imputation최빈값(가장 많이 등장한 값)으로 대체빠르고 쉬움데이터 왜곡 가능
12Expectation-Maximization (EM)확률 모델을 통해 반복적으로 대체데이터 패턴 유지 가능계산 복잡
13GAIN (GAN-based Imputation)GAN을 활용하여 결측치를 생성자연스러운 대체 가능모델 학습 필요, 비용 증가
14Deep Learning Imputation딥러닝(Autoencoder 등) 활용복잡한 패턴 학습 가능대량 데이터 필요
15Domain-Specific Imputation도메인 지식을 활용하여 대체특화된 대체 가능일반화 어려움

4. 결측치 처리가 데이터 정리에 주는 이점

1. 데이터 손실 최소화

  • 행/열을 삭제하면 데이터가 손실될 수 있지만, 대체 방법을 사용하면 데이터를 최대한 보존 가능.

2. 분석 및 모델 성능 향상

  • 결측값을 그대로 두면 모델이 처리할 수 없는 경우가 많음.
  • 대체하면 모델이 데이터를 온전히 학습할 수 있어 예측 성능이 향상됨.

3. 데이터 일관성 유지

  • 결측값이 그대로 있으면 데이터의 일관성이 떨어지고 분석 결과에 영향을 줌.
  • 대체 방법을 사용하면 데이터의 구조와 패턴을 유지할 수 있음.

4. 연산 및 처리 용이성 증가

  • 결측값이 많으면 특정 연산(평균, 표준편차 계산 등)이 불가능할 수 있음.
  • 대체하면 데이터 처리 과정이 원활해지고 연산 속도가 빨라짐.

5. 변수 간 관계 유지

  • Regression Imputation, k-NN Imputation 같은 방법은 변수 간 상관관계를 반영하여 결측값을 대체함.
  • 이를 통해 데이터의 패턴이 유지되고, 모델이 더 현실적인 학습을 할 수 있음.

6. 표본 편향(Bias) 방지

  • 단순히 결측값이 있는 행을 삭제하면 데이터가 특정 그룹(예: 값이 큰 그룹, 작은 그룹)으로 치우칠 가능성이 있음.
  • 적절한 대체 방법을 사용하면 표본 편향을 줄이고, 대표성을 유지할 수 있음.

5. 결론: 최적의 결측치 처리 방법 선택하기

  1. 먼저 결측치를 확인한다.
  2. 결측치가 발생한 원인을 분석한다.
  3. 데이터의 성격을 파악한다.
  4. 결측치 처리 방법을 선택한다.
  5. 결측치를 처리한 후, 다른 방법과 비교하여 최적의 방법을 결정한다.

결측치 처리는 데이터 분석에서 정해진 절대적인 방법이 없다.
데이터의 목적과 분석 방향을 고려하여 가장 적합한 방법을 선택하는 것이 핵심이다.


profile
컴퓨터공학 대학생

0개의 댓글