10. 데이터 전처리

오대근·2022년 9월 18일
0

Fundamentals

목록 보기
10/16

"데이터 분석의 8할은 데이터 전처리이다."

결측치(Missing Data)

결측치가 있는 데이터를 제거한다.
결측치를 어떤 값으로 대체한다
-결측치를 대체하는 방법은 다양한데 데이터마다 특성을 반영하여 해결해야 함.

중복된 데이터

같은 값을 가진 데이터 없이 행(row)별로 값이 유일해야 한다면 중복된 데이터를 제거해야 함.
DataFrame.duplicated()는 중복된 데이터 여부를 불리언 값으로 반환


이상치(Outlier)

이상치란 값의 범위에서 벗어나 극단적으로 크거나 작은 값.
평균을 빼주고 표준편차로 나눠 z score(X−μ/σ)를 계산.
그리고 z score가 특정 기준을 넘어서는 데이터에 대해 이상치라고 판단.
기준을 작게 하면 이상치라고 판단하는 데이터가 많아지고, 기준을 크게 하면 이상치라고 판단하는 데이터가 적어짐.

z-score method

abs(df[col] - np.mean(df[col])) : 데이터에서 평균을 빼준 것에 절대값.

abs(df[col] - np.mean(df[col]))/np.std(df[col]) : 위에 한 작업에 표준편차로 나눔.

df[abs(df[col] - np.mean(df[col]))/np.std(df[col])>z].index: 값이 z보다 큰 데이터의 인덱스를 추출

IQR method

사분위 범위수. 제 3사분위수에서 제 1사분위 값을 뺀 값으로 데이터의 중간 50%의 범위


정규화(Normalization)

Standardization: 데이터의 평균은 0, 분산은 1로 변환
Min-Max Scaling: 데이터의 최솟값은 0, 최댓값은 1로 변환


원-핫 인코딩(One-Hot Encoding)

머신러닝이나 딥러닝 프레임워크에서 범주형을 지원하지 않는 경우 원-핫 인코딩을 해야 함.
카테고리별 이진 특성을 만들어 해당하는 특성만 1, 나머지는 0으로 만드는 방법


profile
neuro.deeplearning

0개의 댓글