如何计算 r 中的平均绝对误差
在统计学中,平均绝对误差(MAE) 是衡量给定模型准确性的一种方法。计算方法如下:
MAE = (1/n) * Σ|y i – x i |
金子:
- Σ:希腊符号,意思是“和”
- y i :第 i 个观测值的观测值
- x i :第 i 个观测值的预测值
- n:观察总数
我们可以使用Metrics包中的mae(实际、预测)函数计算 R 中的平均绝对误差。
本教程提供了两个示例来说明如何在实践中使用此功能。
示例 1:计算两个向量之间的平均绝对误差
下面的代码展示了如何计算观测值向量和预测值向量之间的平均绝对误差:
library (Metrics) #define observed and predicted values observed <- c(12, 13, 14, 15, 15, 22, 27, 29, 29, 30, 32) predicted <- c(11, 13, 14, 14, 16, 19, 24, 30, 32, 36, 30) #calculate mean absolute error between vectors mae(observed, predicted) [1] 1.909091
平均绝对误差 (MAE) 结果为1.909 。
这告诉我们观测值和预测值之间的平均绝对差为 1.909。
示例 2:计算回归模型的平均绝对误差
以下代码显示如何在 R 中拟合回归模型,然后计算模型做出的预测与实际观察到的响应值之间的平均绝对误差:
library (Metrics) #create data df <- data. frame (x1=c(1, 3, 3, 4, 4, 6, 6, 8, 9, 3), x2=c(7, 7, 4, 10, 13, 12, 17, 19, 20, 34), y=c(17, 18, 19, 20, 24, 28, 25, 29, 30, 32)) #view first six rows of data head(df) x1 x2 y 1 1 7 17 2 3 7 18 3 3 4 19 4 4 10 20 5 4 13 24 6 6 12 28 #fit regression model model <- lm(y~x1+x2, data=df) #calculate MAE between predicted values and observed values mae(df$y, predict(model)) [1] 1.238241
平均绝对误差 (MAE) 结果为1.238 。
这告诉我们观测值和预测值之间的平均绝对差为 1.238。
一般来说,MAE 值越低,模型越能拟合数据集。当我们比较两个不同的模型时,我们可以比较每个模型的 MAE,以找出哪个模型最适合数据集。