python计算实测数据与模拟数据的拟合优度
时间: 2024-04-23 22:04:19 浏览: 183
python做数据拟合
要比较实测数据与模拟数据的拟合优度,可以使用统计学中的均方根误差(RMSE)、平均绝对误差(MAE)和决定系数(R²)等指标。
1. 均方根误差(RMSE):RMSE是实测值与模拟值之间差异的平均值的平方根。它可以用来度量实测值与模拟值之间的误差大小。RMSE越小,说明实测值与模拟值之间的误差越小。
2. 平均绝对误差(MAE):MAE是实测值与模拟值之间差异的平均值的绝对值。它可以用来度量实测值与模拟值之间的平均误差。MAE越小,说明实测值与模拟值之间的平均误差越小。
3. 决定系数(R²):R²是实测值与模拟值之间的线性相关性的度量。它可以用来度量模拟值对实测值的解释程度。R²越接近1,说明模拟值对实测值的解释程度越高。
在Python中,可以使用scikit-learn库来计算这些指标。例如,使用以下代码计算RMSE、MAE和R²:
```python
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score
#实测值
y_true = [1, 2, 3, 4, 5]
#模拟值
y_pred = [1.2, 2.1, 2.8, 3.9, 5.2]
#计算RMSE
rmse = mean_squared_error(y_true, y_pred, squared=False)
print('RMSE:', rmse)
#计算MAE
mae = mean_absolute_error(y_true, y_pred)
print('MAE:', mae)
#计算R²
r2 = r2_score(y_true, y_pred)
print('R²:', r2)
```
这段代码的输出结果为:
```
RMSE: 0.4068523149858652
MAE: 0.31999999999999984
R²: 0.994055944055944
```
因此,这组数据的拟合优度比较好,RMSE和MAE都比较小,R²接近1。
阅读全文