使用k近邻回归算法,对波士顿房价数据进行预测,并画出真实值与预测值的图像对比图
时间: 2024-02-24 13:59:31 浏览: 65
好的,我来解答你的问题。
首先,我们需要载入波士顿房价数据集,并将其分为训练集和测试集。以下是代码:
```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=42)
```
接着,我们使用k近邻回归算法进行训练和预测。以下是代码:
```python
from sklearn.neighbors import KNeighborsRegressor
# 创建k近邻回归模型
knn = KNeighborsRegressor()
# 训练模型
knn.fit(X_train, y_train)
# 预测测试集结果
y_pred = knn.predict(X_test)
```
最后,我们可以使用matplotlib库画出真实值与预测值的对比图。以下是代码:
```python
import matplotlib.pyplot as plt
# 画出真实值与预测值的对比图
plt.plot(y_test, label='true')
plt.plot(y_pred, label='predicted')
plt.legend()
plt.show()
```
完整代码如下:
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsRegressor
import matplotlib.pyplot as plt
# 载入数据集
boston = load_boston()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(boston.data, boston.target, test_size=0.2, random_state=42)
# 创建k近邻回归模型
knn = KNeighborsRegressor()
# 训练模型
knn.fit(X_train, y_train)
# 预测测试集结果
y_pred = knn.predict(X_test)
# 画出真实值与预测值的对比图
plt.plot(y_test, label='true')
plt.plot(y_pred, label='predicted')
plt.legend()
plt.show()
```
运行完毕后,你就会看到真实值与预测值的对比图了。希望能对你有所帮助!
阅读全文