데이터 전처리

  • 결측치
  • 중복값
  • 이상치
  • 그 외

데이터 전처리는 데이터 분석과 머신러닝 모델의 성능을 극대화하는 데 필수적인 과정이다.
데이터의 신뢰성을 높이고, 보다 정확한 분석 결과를 도출할 수 있다.
데이터 전처리에 충분한 시간을 투자하여 더 나은 분석 결과와 모델 성능을 기대할 수 있다.

결측치

    (1) 결측치가 있는 데이터 삭제
    (2) 결측치를 다른 값을 대체

  • 데이터의 특성을 분석하여 적절한 방법을 선택한다.

결측치를 다른 다른 값으로 대체
    (1) 특정 값으로 대체
    (2) 대표값으로 대체

대표값으로 대체 (Measures of Central Tendency)

  • 평균(Mean)
    • 모든 데이터를 더한 후, 데이터의 개수로 나눈 값. 이상치(Outlier)의 영향을 크게 받음.
    • 예) 매장 별 고객 만족도 점수를 비교하여 각 매장의 평균 만족도를 측정
  • 중앙값(Median)
    • 데이터를 크기 순으로 정렬했을 때 가장 중앙에 있는 값. 이상치의 영향을 덜 받음.
    • 예) 이상치(CEO 연봉) 포함된 직원 연봉 분석에서 적합
  • 최빈값(Mode)
    - 가장 자주 등장하는 값. 범주형 데이터에서 특히 유용
    - 예) 특정 제품 판매 데이터를 통해 가장 많이 팔린 상품을 파악

중복값

  • row 별로 유일한 값이 되어야 한다면, 중복 데이터를 제거해야한다.

이상치

  • 대부분의 값의 범위에서 벗어난, 극단적으로 크거나 작은 값을 이상치라고 한다.

Z-score (표준화)

  • 평균을 0, 표준편차를 1로 맞춤.
    • 이상값 감지나 통계적 비교에 유리함.
    • 평균보다 큰 값은 양수, 작은 값은 음수로 표현됨.
    • 표준화된 값은 단위가 사라지고 비교 가능해짐.
  • 작은 데이터셋의 경우 이상치를 알기 어려움.
    Z=xmeanstdZ = \frac{x - mean}{std} (데이터에서 평균을 빼고 표준 편차로 나눈다)

IQR (Interquartile Range)

  • 사분위범위수
  • IQR=Q3Q1IQR = Q3 - Q1
    • 제 3사분위수에서 제 1사분위수를 뺀 값이다. 즉, 데이터의 중간 50%의 범위이다.
  • Q11.5IQRQ1-1.5 * IQR 보다 작거나, Q3+1.5IQRQ3+1.5 * IQR보다 크면 이상치라고 판단한다.

정규화(Normalization)

  • 컬럼마다 스케일의 차이가 꽤 날 때는 머신러닝 모델 학습에서 문제가 생길 수도 있다.
  • 컬럼 간 범위가 다를 때는 전처리 과정에서 데이터를 정규화한다.

표준화

Min-Max Scaling

Z=xxminxmaxxminZ = \frac{x-x_{min}}{x_{max}-x_{min}}

  • 컬럼의 최소값(min)은 0, 최대값(max)sms 1로 변경된다.

One-Hot Encoding

  • 이진 특성을 만들어 해당 특성을 1, 나머지는 모두 0으로 만드는 것이다.


출처

profile
개발자

0개의 댓글