본문 바로가기
데이터 분석

데이터 정제 - 결측 / 이상 데이터 처리

by anion 2023. 8. 1.

결측치 : 데이터가 수집되지 않거나 누락되어 정보(값) 가 존재하지 않음을 의미

-> 결측치가 포함된 데이터는 모델학습이 불가능하므로 사전에 반드시 결측치 처리를 진행

 

결측치 처리 방안

-제거하기 -> 엄청난 데이터 손실 발생

-대체하기 -> 편향 발생 가능

<결측치 제거하기>

제거시 정보의 손실이 발생할 수 있음

Listwise deletion : 결측치가 존재하는 행 삭제

> df.dropna()

Pairwise deletion : 모든 변수가결측치로만 존재하는 행 삭제

>df.dropna(how='all')

<결측치 대체하기>

정보의 손실을 방지하나 변수 특성(평균, 상관관계 등)에 영향 발생

일정 값 대체 : 결측치를 각 변수의 평균값으로 대체

> df['col1].replace(np.nan.df['col1'].mean())

선형 값 대체 : 선형 함수 기반 앞뒤 관측치 활용 대체

>df.interpolate()

 

이상치 : 관측된 데이터 내 전체적 패턴에서 아주 작게 혹은 아주 크게 벗어난 값

-> 데이터 분석 과정 및 결과에서 영향을 미쳐 분석 결과 및 의사 결정의 왜곡을 불러일으킬 수 있음

<이상치 처리 프로세스>

통계적 방안 : Z-Score,IQR

인적 판단 방안 : 협업 관리자의 데이터 및 비즈니스 관점 기반의 이상치 여부 판단

=> 이상치 처리: 삭제, 대체 등 방안을 적용하여 처리

<이상치 판단 방안>

Z-Score

-해당 데이터가 평균으로부터 얼마의 표준 편차 만큼 벗어나 있는지를 의미

-일반적으로 -3이하 3이상 z값 관측치는 이상치로 정의

IQR

-사분위수 개념 기반의 이상치 판단 방안으로 데이터 흩어짐 정도를 기반으로 이상치를 정의

-Min,Max 범위를 벗어난 관측치는 이상치로 정의