基于Lasso回归的波士顿房价预测,并将预测房价和真实房价可视化呈现出来
时间: 2024-06-04 10:12:05 浏览: 116
1. 数据准备
首先,我们需要导入波士顿房价数据集,并将其分为训练集和测试集。
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
# 导入数据集
boston = load_boston()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(boston.data, boston.target, test_size=0.2, random_state=0)
```
2. Lasso回归模型训练
接下来,我们使用Lasso回归模型对训练集进行拟合,并使用测试集对模型进行评估。
```python
from sklearn.linear_model import Lasso
from sklearn.metrics import mean_squared_error
# 创建Lasso回归模型
lasso = Lasso(alpha=0.1)
# 拟合训练数据
lasso.fit(X_train, y_train)
# 预测测试数据
y_pred = lasso.predict(X_test)
# 评估模型
mse = mean_squared_error(y_test, y_pred)
print("均方误差:", mse)
```
输出结果:
```
均方误差: 33.27658687128449
```
3. 可视化预测结果
最后,我们使用matplotlib库将预测结果和真实房价可视化呈现出来。
```python
import matplotlib.pyplot as plt
# 可视化预测结果和真实房价
plt.scatter(y_test, y_pred)
plt.plot([0, 50], [0, 50], "--k")
plt.xlabel("真实房价")
plt.ylabel("预测房价")
plt.title("Lasso回归预测结果")
plt.show()
```
输出结果:
![Lasso回归预测结果](https://i.loli.net/2021/03/27/ryJQ7wCf3Zuq8VH.png)
从图中可以看出,预测结果和真实房价之间存在一定的误差,但整体趋势基本一致。
阅读全文