<jupyter_start><jupyter_text>Decision Tree<jupyter_code>def run_model(model, feats):
 X = df[cat_feats].values
 y = df['price_value'].values

 #model = DecisionTreeRegressor(max_depth=5)
# scores = cross_val_score(model, X, y, cv=3, scoring = 'neg_mean_absolute_error')
 return np.mean(scores), np.std(scores)
run_model(DecisionTreeRegressor(max_depth=5), cat_feats)<jupyter_output><empty_output><jupyter_text>Random Forest<jupyter_code>model = RandomForestRegressor(max_depth=5, n_estimators=50, random_state=0)
run_model(model, cat_feats)<jupyter_output><empty_output><jupyter_text>XGBoost<jupyter_code>xgb_params = {
    'max_depth': 5,
    'n_estimators': 50,
    'learning_rate': 0.1,
    'seed' :0
}

run_model(xgb.XGBRegressor(**xgb_params), cat_feats)
m = xgb.XGBRegressor(max_depth=5, n_estimators=50,learning_rate=0.1,seed=0)
m.fit(X, y)

#ktore cechy sa istotne wg xgboosta
inp= PermutationImportance(m).fit(X, y)
eli5.show_weights(inp, feature_names = cat_feats)
len(cat_feats)
feats=['param_napęd__cat','param_stan__cat','param_rok-produkcji__cat','param_faktura-vat__cat','param_moc__cat','param_skrzynia-biegów__cat','param_marka-pojazdu__cat','feature_kamera-cofania__cat','param_typ__cat','param_pojemność-skokowa__cat','seller_name__cat','param_wersja__cat','param_model-pojazdu__cat','feature_wspomaganie-kierownicy__cat','feature_system-start-stop__cat','param_kod-silnika__cat','feature_asystent-pasa-ruchu__cat','feature_łopatki-zmiany-biegów__cat','feature_czujniki-parkowania-przednie__cat','feature_światła-led__cat']
#sprawdzamy czy jak zmienimy ilość cech z 151 na 20 (te uznane za ważne) to wynik się zmeni
len(feats)
run_model(xgb.XGBRegressor(**xgb_params), feats)
#analizujemy co jest w kolumnach. Poszukujemy zmienne numeryczne
df['param_rok-produkcji'].unique()
df['param_rok-produkcji__cat'].unique()
#po zastosowani funki cat te lata się dubią, tracimy informację , możemy je zopymalizować troche
df['param_rok-produkcji']=df['param_rok-produkcji'].map(lambda x: -1 if str(x) == 'None' else int(x))
feats=['param_napęd__cat','param_stan__cat','param_rok-produkcji','param_faktura-vat__cat','param_moc__cat','param_skrzynia-biegów__cat','param_marka-pojazdu__cat','feature_kamera-cofania__cat','param_typ__cat','param_pojemność-skokowa__cat','seller_name__cat','param_wersja__cat','param_model-pojazdu__cat','feature_wspomaganie-kierownicy__cat','feature_system-start-stop__cat','param_kod-silnika__cat','feature_asystent-pasa-ruchu__cat','feature_łopatki-zmiany-biegów__cat','feature_czujniki-parkowania-przednie__cat','feature_światła-led__cat']
run_model(xgb.XGBRegressor(**xgb_params), feats)
df['param_moc']=df['param_moc'].map(lambda x: -1 if str(x) == 'None' else int(x.split(' ')[0]) )
feats=['param_napęd__cat','param_stan__cat','param_rok-produkcji','param_faktura-vat__cat','param_moc','param_skrzynia-biegów__cat','param_marka-pojazdu__cat','feature_kamera-cofania__cat','param_typ__cat','param_pojemność-skokowa__cat','seller_name__cat','param_wersja__cat','param_model-pojazdu__cat','feature_wspomaganie-kierownicy__cat','feature_system-start-stop__cat','param_kod-silnika__cat','feature_asystent-pasa-ruchu__cat','feature_łopatki-zmiany-biegów__cat','feature_czujniki-parkowania-przednie__cat','feature_światła-led__cat']
run_model(xgb.XGBRegressor(**xgb_params), feats) #poniewaz nadpisujmy param_moc w feats zmieniamy z wersji __cat na param_moc
df['param_pojemność-skokowa'].unique()
df['param_pojemność-skokowa']=df['param_pojemność-skokowa'].map(lambda x: -1 if str(x) == 'None' else int(str(x).split('cm')[0].replace(' ','')) )
feats=['param_napęd__cat','param_stan__cat','param_rok-produkcji','param_faktura-vat__cat','param_moc','param_skrzynia-biegów__cat','param_marka-pojazdu__cat','feature_kamera-cofania__cat','param_typ__cat','param_pojemność-skokowa','seller_name__cat','param_wersja__cat','param_model-pojazdu__cat','feature_wspomaganie-kierownicy__cat','feature_system-start-stop__cat','param_kod-silnika__cat','feature_asystent-pasa-ruchu__cat','feature_łopatki-zmiany-biegów__cat','feature_czujniki-parkowania-przednie__cat','feature_światła-led__cat']
run_model(xgb.XGBRegressor(**xgb_params), feats)<jupyter_output><empty_output>
StarcoderdataJupyterStructuredCleanDedup