
데이터 전처리
데이터 전처리는 데이터 분석과 머신러닝 모델의 성능을 극대화하는 데 필수적인 과정이다.
데이터의 신뢰성을 높이고, 보다 정확한 분석 결과를 도출할 수 있다.
데이터 전처리에 충분한 시간을 투자하여 더 나은 분석 결과와 모델 성능을 기대할 수 있다.
결측치
(1) 결측치가 있는 데이터 삭제
(2) 결측치를 다른 값을 대체
- 데이터의 특성을 분석하여 적절한 방법을 선택한다.
결측치를 다른 다른 값으로 대체
(1) 특정 값으로 대체
(2) 대표값으로 대체
대표값으로 대체 (Measures of Central Tendency)
- 평균(Mean)
- 모든 데이터를 더한 후, 데이터의 개수로 나눈 값. 이상치(Outlier)의 영향을 크게 받음.
- 예) 매장 별 고객 만족도 점수를 비교하여 각 매장의 평균 만족도를 측정
- 중앙값(Median)
- 데이터를 크기 순으로 정렬했을 때 가장 중앙에 있는 값. 이상치의 영향을 덜 받음.
- 예) 이상치(CEO 연봉) 포함된 직원 연봉 분석에서 적합
- 최빈값(Mode)
- 가장 자주 등장하는 값. 범주형 데이터에서 특히 유용
- 예) 특정 제품 판매 데이터를 통해 가장 많이 팔린 상품을 파악
중복값
- row 별로 유일한 값이 되어야 한다면, 중복 데이터를 제거해야한다.
이상치
- 대부분의 값의 범위에서 벗어난, 극단적으로 크거나 작은 값을 이상치라고 한다.
Z-score (표준화)
- 평균을 0, 표준편차를 1로 맞춤.
- 이상값 감지나 통계적 비교에 유리함.
- 평균보다 큰 값은 양수, 작은 값은 음수로 표현됨.
- 표준화된 값은 단위가 사라지고 비교 가능해짐.
- 작은 데이터셋의 경우 이상치를 알기 어려움.
Z=stdx−mean (데이터에서 평균을 빼고 표준 편차로 나눈다)
IQR (Interquartile Range)
- 사분위범위수
- IQR=Q3−Q1
- 제 3사분위수에서 제 1사분위수를 뺀 값이다. 즉, 데이터의 중간 50%의 범위이다.
- Q1−1.5∗IQR 보다 작거나, Q3+1.5∗IQR보다 크면 이상치라고 판단한다.
정규화(Normalization)
- 컬럼마다 스케일의 차이가 꽤 날 때는 머신러닝 모델 학습에서 문제가 생길 수도 있다.
- 컬럼 간 범위가 다를 때는 전처리 과정에서 데이터를 정규화한다.
표준화
Min-Max Scaling
Z=xmax−xminx−xmin
- 컬럼의 최소값(min)은 0, 최대값(max)sms 1로 변경된다.
One-Hot Encoding
- 이진 특성을 만들어 해당 특성을 1, 나머지는 모두 0으로 만드는 것이다.
출처