Skip to content

Instantly share code, notes, and snippets.

@john-adeojo
Last active March 26, 2023 10:21
Show Gist options
  • Save john-adeojo/5e167b9bbc486430745e386fc444e6fa to your computer and use it in GitHub Desktop.
Save john-adeojo/5e167b9bbc486430745e386fc444e6fa to your computer and use it in GitHub Desktop.
from sklearn.compose import ColumnTransformer
from sklearn.pipeline import Pipeline
from sklearn.ensemble import RandomForestRegressor, StackingRegressor
from sklearn.linear_model import Ridge, LinearRegression
from sklearn.preprocessing import OneHotEncoder, MinMaxScaler, StandardScaler
from sklearn.model_selection import train_test_split
from xgboost import XGBRegressor
preprocessor = ColumnTransformer(
transformers=[
('logtransform', LogTransformer(), num_features),
('standardize', StandardScaler(), num_features),
('onehotencode', OneHotEncoder(handle_unknown='ignore'), cat_features),
])
xgb_pipeline = Pipeline([
('preprocessor', preprocessor),
('regressor', XGBRegressor(tree_method='gpu_hist', objective='reg:squarederror', random_state=42))
])
rf_pipeline = Pipeline([
('preprocessor', preprocessor),
('regressor', RandomForestRegressor(random_state=42))
])
ridge_pipeline = Pipeline([
('preprocessor', preprocessor),
('regressor', Ridge(random_state=42))
])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment