把RMSE改成R2应该怎么修改代码
时间: 2024-03-17 19:43:02 浏览: 18
您可以使用`sklearn.metrics`中的`r2_score`函数来计算R2分数。下面是修改后的示例代码:
```python
import numpy as np
from sklearn.multioutput import MultiOutputRegressor
from xgboost import XGBRegressor
from sklearn.metrics import r2_score
# 定义参数范围
n_estimators_range = [50, 100, 150]
# 训练并评估模型
for n_estimators in n_estimators_range:
# 定义模型
model = MultiOutputRegressor(XGBRegressor(objective='reg:squarederror', n_estimators=n_estimators, learning_rate=0.1, max_depth=100))
# 训练模型
model.fit(x_train, y_train)
# 预测
y_pred = model.predict(x_test)
# 计算R2分数
r2 = r2_score(y_test, y_pred)
# 打印性能结果
print("n_estimators = {} R2 = {}".format(n_estimators, r2))
```
在上面的代码中,我们使用`r2_score`函数计算R2分数,然后打印出每个模型的性能结果。