2.调用sklearn库中波士顿房价数据集,并了解数据含义; 3.将波士顿房价数据集划分为训练集和测试集; 4.利用ridge回归预测测试集房价,将预测结果四舍五入保留2位浮点数。 5.以点的顺序为横坐标,画出预测值与真实值的对比图。
时间: 2024-02-25 12:54:21 浏览: 53
下面是实现代码及解释:
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import Ridge
import numpy as np
import matplotlib.pyplot as plt
# 载入波士顿房价数据集
boston = load_boston()
# 查看数据集的含义
print(boston.DESCR)
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(boston.data, boston.target, test_size=0.2, random_state=42)
# 建立ridge模型
ridge = Ridge(alpha=1.0)
# 训练模型
ridge.fit(X_train, y_train)
# 预测测试集房价
y_pred = ridge.predict(X_test)
# 将预测结果四舍五入保留2位浮点数
y_pred_round = np.round(y_pred, 2)
# 以点的顺序为横坐标,画出预测值与真实值的对比图
plt.scatter(range(len(y_test)), y_test, label='True')
plt.scatter(range(len(y_pred_round)), y_pred_round, label='Predict')
plt.legend()
plt.show()
```
其中,步骤2中的数据集含义如下:
- CRIM:城镇人均犯罪率
- ZN:住宅用地所占比例
- INDUS:城镇非零售商业用地所占比例
- CHAS:是否临近查尔斯河,1表示是,0表示否
- NOX:一氧化氮浓度
- RM:每栋住宅的平均房间数
- AGE:1940年以前建成的自用房屋所占比例
- DIS:距离5个波士顿就业中心的加权距离
- RAD:距离绿线高速公路的便利指数
- TAX:每10,000美元的全值财产税率
- PTRATIO:城镇师生比例
- B:黑人所占比例
- LSTAT:低收入人群所占比例
- MEDV:自住房屋房价的中位数
步骤4中使用Numpy中的round函数将预测结果四舍五入保留2位浮点数。
步骤5中使用Matplotlib中的scatter函数以点的顺序为横坐标,画出预测值与真实值的对比图。
阅读全文