波士顿房价预测使用最小二乘法进行拟合绘制拟合曲线,并求其均方根误差代码
时间: 2024-09-26 07:06:07 浏览: 41
波士顿房价预测是一个常见的机器学习示例,通常会使用线性回归作为基础模型,其中最小二乘法是一种常用的优化方法来拟合数据。下面是一个简单的Python代码片段,使用scikit-learn库来进行这个任务:
```python
import pandas as pd
import numpy as np
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
# 加载波士顿房价数据集
boston = load_boston()
X = boston.data
y = boston.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 创建并训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)
# 预测测试集房价
y_pred = model.predict(X_test)
# 计算均方根误差 (RMSE)
rmse = np.sqrt(mean_squared_error(y_test, y_pred))
print("均方根误差:", rmse)
# 绘制拟合曲线
import matplotlib.pyplot as plt
plt.scatter(y_test, y_pred)
plt.xlabel('实际房价')
plt.ylabel('预测房价')
plt.title(f"波士顿房价预测 - RMSE: {rmse}")
plt.show()
```
在这个代码里,我们首先导入所需的库,加载波士顿房价数据,然后通过最小二乘法训练一个线性回归模型。最后,我们计算预测结果与真实值之间的均方根误差,并可视化了预测结果和真实值的分布。
阅读全文