使用了随机森林回归、梯度提升回归以及极端随机森林回归对租房租金预测
采用多种回归算法对小区的租房租金进行预测
数据集
导入算法包
#导入机器学习相关的包
import pandas as pd
import numpy as np
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import r2_score, mean_squared_error, mean_absolute_error
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestRegressor, ExtraTreesRegressor, GradientBoostingRegressor
标题数据清洗
调用机器学习算法预测
#3 训练数据和测试数据进行标准化处理
ss_x = StandardScaler()
X_train = ss_x.fit_transform(X_train)
X_test = ss_x.transform(X_test)
# 4 三种集成回归模型进行训练和预测
# 随机森林回归
rfr = RandomForestRegressor()
# 训练
rfr.fit(X_train, Y_train)
# 预测 保存预测结果
rfr_y_predict = rfr.predict(X_test)
# 极端随机森林回归
etr = ExtraTreesRegressor()
# 训练
etr.fit(X_train, Y_train)
# 预测 保存预测结果
etr_y_predict = rfr.predict(X_test)
# 梯度提升回归
gbr = GradientBoostingRegressor()
# 训练
gbr.fit(X_train, Y_train)
# 预测 保存预测结果
gbr_y_predict = gbr.predict(X_test)
Y_test = test['月租金']
#衡量模型拟合度的一个量,是一个比例式,比例区间为[0,1],越接近1,表示模型拟合度越高
print("随机森林回归的R_squared值为:", r2_score(Y_test, rfr_y_predict))
print("极端随机森林回归的R_squared值为:", r2_score(Y_test, etr_y_predict))
print("梯度提升回归回归的R_squared值为:", r2_score(Y_test, gbr_y_predict))
有需要指导的请联系