在Python中,计算均方根误差(RMSE)通常涉及以下步骤:
1. 导入必要的库,如`numpy`和`sklearn.metrics`。
2. 准备真实值(`y_true`)和预测值(`y_pred`)的数据集。
3. 计算预测值和真实值之间的差值,并将这些差值平方。
4. 计算平方差值的平均值。
5. 对平均平方差值开平方根,得到RMSE。
import numpy as np
from sklearn.metrics import mean_squared_error
真实值和预测值
y_true = np.array([1.5, 2.1, 3.3, -4.7, -2.3, 0.75])
y_pred = np.array([0.5, 1.5, 2.1, -2.2, 0.1, -0.5])
计算MSE
mse = mean_squared_error(y_true, y_pred)
计算RMSE
rmse = np.sqrt(mse)
print("RMSE:", rmse)
如果你使用的是Pandas数据框,可以使用`DataFrame.eval`方法计算RMSE:
import pandas as pd
from sklearn.metrics import mean_squared_error
创建一个包含真实值和预测值的Pandas数据框
data = {'y_true': [1.5, 2.1, 3.3, -4.7, -2.3, 0.75], 'y_pred': [0.5, 1.5, 2.1, -2.2, 0.1, -0.5]}
df = pd.DataFrame(data)
计算MSE
mse = df.eval("y_true - y_pred").pow(2).mean()
计算RMSE
rmse = np.sqrt(mse)
print("RMSE:", rmse)
请注意,这些示例使用的是硬编码的数据。在实际应用中,你可能需要从文件、数据库或其他数据源读取真实值和预测值。
如果你需要计算Excel中多个工作表的RMSE,可以使用`pandas`读取Excel文件,并对每个工作表分别计算RMSE。