데이터가 무작위로 누락되었나요?

Python에서 결측치 다루기

Suraj Donthi

Deep Learning & Computer Vision Consultant

누락 데이터의 가능한 원인

참고 $-$ (변수 $\rightarrow$ 데이터 필드 또는 데이터프레임 열)

  • 변수 내에서 시점/구간별로 우연히 누락된 값
  • 다른 변수로 인해 누락된 값
  • 동일/다른 변수의 누락 때문에 누락된 값
Python에서 결측치 다루기

누락 유형

  1. 완전무작위 누락(MCAR)
  2. 무작위 누락(MAR)
  3. 비무작위 누락(MNAR)
Python에서 결측치 다루기

완전무작위 누락(MCAR)

정의:

"누락은 관측/누락 값을 포함한 어떤 값과도 관련이 없습니다."

완전무작위 누락 예시

Python에서 결측치 다루기

MCAR - 예시

msno.matrix(diabetes)

당뇨병 데이터셋의 MCAR 예시

Python에서 결측치 다루기

무작위 누락(MAR)

정의:

"누락은 누락된 값 자체가 아니라, 다른 관측 데이터와 체계적으로 관련됩니다."

무작위 누락 예시

Python에서 결측치 다루기

MAR - 예시

msno.matrix(diabetes)

당뇨병 데이터셋의 MAR 예시

Python에서 결측치 다루기

비무작위 누락(MNAR)

정의:

"누락은 해당 값(누락·비누락)과 관련이 있습니다."

MNAR 예시

Python에서 결측치 다루기

MNAR - 예시

  • Serum_Insulin으로 정렬한 diabetes의 누락 패턴
sorted = diabetes.sort_values('Serum_Insulin')
msno.matrix(sorted)

당뇨병 데이터셋의 MNAR 예시

Python에서 결측치 다루기

요약

  • 누락의 가능한 원인
    • 완전무작위 누락(MCAR)
    • 무작위 누락(MAR) 또는
    • 비무작위 누락(MNAR)
  • 변수 정렬로 누락 패턴 탐지
  • 누락 유형을 MCAR, MAR, MNAR로 매핑
Python에서 결측치 다루기

연습해 봅시다!

Python에서 결측치 다루기

Preparing Video For Download...