现有随机森林回归模型,X为特征值,y为标签值,x_train, x_test, y_train, y_test为划分训练集和测试集之后的数据,需要画出随机森林回归模型的拟合优度的图,请写出代码
时间: 2024-03-27 21:41:36 浏览: 59
python 线性回归分析模型检验标准–拟合优度详解
5星 · 资源好评率100%
好的,以下是代码实现:
```python
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import r2_score
import matplotlib.pyplot as plt
# 定义随机森林回归模型,并训练模型
rf = RandomForestRegressor(n_estimators=100, random_state=42)
rf.fit(x_train, y_train)
# 预测测试集的标签值
y_pred = rf.predict(x_test)
# 计算拟合优度
r2 = r2_score(y_test, y_pred)
print('R^2:', r2)
# 画出拟合优度的图
plt.scatter(y_test, y_pred)
plt.plot([y_test.min(), y_test.max()], [y_test.min(), y_test.max()], 'k--', lw=2)
plt.xlabel('Measured')
plt.ylabel('Predicted')
plt.show()
```
解释一下,首先我们导入随机森林回归模型和计算拟合优度的函数 `r2_score`,以及用于画图的库 `matplotlib.pyplot`。然后我们定义一个随机森林回归模型,设置树的数量为100,随机种子为42,训练模型并预测测试集的标签值。接着我们计算拟合优度 `r2`,并将测试集的真实标签值和预测标签值用散点图展示出来,同时画出一条 y=x 的直线作为参考。最后调用 `show` 函数展示图像。
阅读全文