Esempio n. 1
0
print("start")
dataset=wholeDataset.values  
print(dataset.shape)
X = dataset[0:1460,2:276]
Y = trainDataset['SalePrice']
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.3)
    
xgbclassifier = xgb.XGBRegressor(colsample_bytree=0.7,
                 gamma=0,
                 min_child_weight=1.5,
                 n_estimators=1000,                                                                    
                 reg_alpha=0.75,
                 reg_lambda=0.45,
                 subsample=0.6,
                 seed=42,
                 max_features=220)
xgbclassifier.fit(X_train, Y_train)

rfclassifier = RandomForestRegressor(n_estimators = 1000, max_features=220)
rfclassifier.fit(X_train, Y_train)

stack_gen = StackingCVRegressor(regressors=(xgbclassifier,rfclassifier),
                                meta_regressor=xgbclassifier,
                                use_features_in_secondary=True)
stack_gen.fit(X_train,Y_train)


print("Score rf",rfclassifier.score(X_test, Y_test))
print("Score xgb",xgbclassifier.score(X_test, Y_test))
print("Score stack",stack_gen.score(X_test, Y_test))
from mlxtend.regressor import StackingCVRegressor

y = dataset['PM']
x = dataset.drop(columns=['PM','CBWD'])

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=42)
lr = LinearRegression()
dtr = DecisionTreeRegressor()
svr_rbf = SVR(kernel='rbf', gamma='auto')
knr = KNeighborsRegressor()
ridge = Ridge()
lasso = Lasso()
regression_models = [lr, dtr, svr_rbf, knr, ridge, lasso]

sclf = StackingCVRegressor(regression_models, meta_regressor=ridge)
sclf.fit(x_train, y_train)
pred = sclf.predict(x_test)

print(sclf.score(x_train, y_train))
%matplotlib inline
plt.scatter([i*10 for i in range(len(y_test))], y_test, c='red', lw=1)
plt.plot([i*10 for i in range(len(y_test))], pred, c='black', lw=1)
plt.show()


`# In[ ]: