• 수치형 데이터가 여러개 있는데 숫자범위가 다르다면 → 범위를 비슷하게 만들어줄 필요가 있다. • 왜냐하면? 그대로 모델링하면 상대적으로 큰 숫자를 가지는 칼럼의 기여도가 더 크게 반영되어버리기 때문! • 따라서 스케일링하여 상대적인 크기 차이를 없애줘야 함 • 스케일링을 통해 데이터의 불필요한 차원을 줄이고, 분석모델의 학습속도가 향상시킬 수 있음 (효율↑)
정규화 (Normalization)
• Min-Max Scaling : 데이터의 최솟값, 최댓값을 이용해서 데이터를 일정 범위 내의 값들로 변환 • 일반적으로 0~1 사이의 값으로 변환 ※ 데이터에 이상치가 없고, 분포가 크게 치우쳐 있지 않은 경우에 적합한 방법 (이상치 제거 후 정규화해야함)
표준화 (Standardization)
• 데이터의 평균, 표준편차를 이용해서 변환 •평균=0, 표준편차=1 이 되도록 데이터 값들을 변환 ※ 데이터에 이상치가 있고, 분포가 치우쳐 있는 경우 적합한 방법
0️⃣ 패키지 & 데이터프레임 불러오기
예시가 될 데이터셋은 Kaggle에서 가져온 Flight Price Prediction 입니다.
수치형 칼럼인 비행시간(duration), 출발까지 남은일수(days_left), 가격(price) 만 가져와서 스케일링을 해보겠습니다.