嘿伙计们,经过时间序列的预测过程,我获得了这样的数据框(df)(数字只是示例):
fcast_mean | actual_values
12,5 | 12,3
1,1 | 0
24,3 | 22,7
29,6 | 30,4
... | ...
Run Code Online (Sandbox Code Playgroud)
我知道如果 actual_value 为零,则 MAPE 是无限的,这就是我的情况!我的问题是:是否有数学错把0,而不是天道酬勤行中(在这种情况下,第2行),其中abs(actual_values - fcast$mean)/abs(actual_values)等于Inf?这种变化对MAPE的计算有什么影响?它不再是预测准确性的可靠指标?
我为 MAPE 编写的 R 代码部分是:
x <- abs(df$actual_values-df$fcast_mean)/abs(df$actual_values)
x[is.infinite(x)] <- 0
MAPE <- (1/nrow(df$actual_values))*(sum(x))*100
Run Code Online (Sandbox Code Playgroud)