사이킷런을 이용하여 data의 Nan값을 해당 feature의 중앙값으로 대체하고, 모든 feature들의 scale을 조정하는 전처리 코드를 작성해 보겠습니다.
우선 SimpleImputer로 train_set을 estimate -> trasform하고, MinmaxScaler로 다시 한번 estimate-> transform의 과정을 거칩니다.
전처리를 한 train_set으로 모델을 훈련한다면, 새로운 test_set을 모델에 넣기 위해서는 test_set 또한 동일하게 imputing과정과 scaleing과정을 거처야 합니다.
연속적으로 (추정 -> 변환)의 과정을 거친다면 이 과정을 하나로 묶을 수 있다 생각에서 파이프라인이 등장하였습니다. 사이킷런의 파이프라인은 imputer와 scaler의 역할을 연속적으로 실행하는 하나의 추정기를 만들어 줍니다.
이렇게 파이프라인이 선언되면 이 pipeline은 마치 새로운 추정기처럼 사용할 수 있습니다.
이제 학습된 pipeline으로 test_set또한 transform할 수 있습니다.
'머신러닝' 카테고리의 다른 글
# K-means 군집화 알고리즘 (sklearn.cluster) (0) | 2020.02.18 |
---|---|
# scikit - learn과 머신러닝 (1) 사이킷런의 설계 철학 (0) | 2020.02.18 |
# 비슷한 correlation을 갖는 feature 제거하기 by df.triu(), df.where() (0) | 2020.02.17 |
# startswith()함수 (0) | 2020.02.17 |
# 파이썬 apply(), lambda() 이해하기 (0) | 2020.02.16 |