如何在 r 中计算 rmse
均方根误差 (RMSE)是一种衡量指标,可以告诉我们在回归分析中预测值与观测值的平均差距有多大。计算方法如下:
RMSE = √[ Σ(P i – O i ) 2 / n ]
金子:
- Σ 是一个奇特的符号,意思是“和”
- P i是数据集中第 i 个观测值的预测值
- O i是数据集中第 i 个观测值的观测值
- n 是样本量
本教程介绍了两种可用于在 R 中计算 RMSE 的方法。
方法一:自己写函数
假设我们有一个数据集,其中一列包含实际数据值,一列包含预测数据值:
#create dataset data <- data.frame(actual=c(34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24), predicted=c(37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23)) #view dataset data actual predicted 1 34 37 2 37 40 3 44 46 4 47 44 5 48 46 6 48 50 7 46 45 8 43 44 9 32 34 10 27 30 11 26 22 12 24 23
为了计算 RMSE,我们可以使用以下函数:
#calculate RMSE
sqrt(mean((data$actual - data$predicted)^2))
[1] 2.43242
均方误差为2.43242 。
方法2:使用包
我们还可以使用Metrics包中的rmse()函数计算同一数据集的 RMSE,该函数使用以下语法:
rmse(实际,计划)
金子:
- 真实值:真实值
- 预测:预测值
这是我们在示例中使用的语法:
#load Metrics package library(Metrics) calculate RMSE rmse(data$actual, data$predicted) [1] 2.43242
均方误差为2.43242 ,这与我们之前使用我们自己的函数计算的结果相符。
如何解释 RMSE
RMSE 是查看回归模型对数据集拟合程度的有用方法。
RMSE 越大,预测值和观测值之间的差异越大,意味着回归模型对数据的拟合程度越差。相反,RMSE 越小,模型对数据的拟合效果越好。
比较两个不同模型的 RMSE 以了解哪个模型最适合数据尤其有用。