학습/테스트 변환 (I)
지금까지는 특정 열을 기반으로 스케일러를 만든 다음, 그 스케일러를 학습에 사용한 같은 데이터에 적용했어요. Machine Learning 모델을 만들 때는 일반적으로 과거 데이터(학습 세트)로 모델을 학습하고, 보지 못한 새로운 데이터(테스트 세트)에 모델을 적용합니다. 이런 경우 학습과 테스트 데이터 모두에 동일한 스케일링이 적용되도록 해야 합니다.
실무에서는 스케일러를 학습 세트에 대해 학습(fit)한 뒤, 그 학습된 스케일러를 보관해 테스트 세트에 그대로 적용합니다. 테스트 세트로 스케일러를 다시 학습하면 안 됩니다.
이 연습 문제와 다음 문제에서는 so_numeric_df DataFrame을 학습(so_train_numeric)과 테스트(so_test_numeric) 세트로 나누어 사용합니다.
이 연습은 강의의 일부입니다
Python으로 배우는 Machine Learning 특성 공학
연습 안내
StandardScaler()를SS_scaler로 인스턴스화하세요.- 학습 세트의
Age열에StandardScaler를 맞추어(fit) 주세요. - 테스트 세트(
so_test_numeric)의Age열을 변환(transform)하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Import StandardScaler
from sklearn.preprocessing import StandardScaler
# Apply a standard scaler to the data
SS_scaler = ____
# Fit the standard scaler to the data
____
# Transform the test data using the fitted scaler
so_test_numeric['Age_ss'] = ____
print(so_test_numeric[['Age', 'Age_ss']].head())