调用sklearn库实现对波士顿房价的预测,采用线性回归方法,并计算以下性能评价指标:平均绝对误差、均方误差、均方根误差、决定系数R2值。 from sklearn.datasets import load_boston data = load_boston()
时间: 2024-02-28 11:52:09 浏览: 75
好的,这是一个机器学习问题,我会尽力回答。下面是代码和解释:
```python
# 导入库
from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
from sklearn.model_selection import train_test_split
# 加载数据
data = load_boston()
# 划分数据集
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42)
# 创建模型
model = LinearRegression()
# 训练模型
model.fit(X_train, y_train)
# 预测结果
y_pred = model.predict(X_test)
# 计算评价指标
mae = mean_absolute_error(y_test, y_pred)
mse = mean_squared_error(y_test, y_pred)
rmse = mean_squared_error(y_test, y_pred, squared=False)
r2 = r2_score(y_test, y_pred)
# 输出结果
print("平均绝对误差:", mae)
print("均方误差:", mse)
print("均方根误差:", rmse)
print("决定系数R2值:", r2)
```
解释一下上面的代码:
首先,我们导入了需要使用的库,包括 `load_boston` 来加载数据集,`LinearRegression` 用于创建线性回归模型,`mean_absolute_error`、`mean_squared_error`、`r2_score` 用于计算性能评价指标,`train_test_split` 用于将数据集划分为训练集和测试集。
然后,我们加载数据集并使用 `train_test_split` 将数据集划分为训练集和测试集。
接着,我们创建一个线性回归模型,并使用训练集对模型进行训练。
然后,我们使用测试集对模型进行预测,并计算出平均绝对误差、均方误差、均方根误差、决定系数R2值这些性能评价指标。
最后,我们输出计算结果。
希望这个回答能够帮助你。
阅读全文