Предобработка данных в конвейере
Теперь, когда вы знаете, какие шаги необходимо выполнять по отдельности для правильной обработки данных об объектах недвижимости Эймса, воспользуемся более чистым и компактным подходом с DictVectorizer и разместим его вместе с XGBoostRegressor внутри конвейера scikit-learn.
Это упражнение является частью курса
Экстремальный градиентный бустинг с XGBoost
Инструкции к упражнению
- Импортируйте
DictVectorizerизsklearn.feature_extractionиPipelineизsklearn.pipeline. - Заполните пропущенные значения в столбце
LotFrontageнабора данныхXзначением0. - Укажите шаги конвейера:
DictVectorizer(sparse=False)для"ohe_onestep"иxgb.XGBRegressor()для"xgb_model". - Создайте конвейер с помощью
Pipeline()иsteps. - Обучите конвейер. Не забудьте привести
Xк формату, понятномуDictVectorizer, вызвав методto_dict("records")на объектеX.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import necessary modules
____
____
# Fill LotFrontage missing values with 0
X.LotFrontage = ____
# Setup the pipeline steps: steps
steps = [("ohe_onestep", ____),
("xgb_model", ____)]
# Create the pipeline: xgb_pipeline
xgb_pipeline = ____
# Fit the pipeline
____