r - 如何使用实际的 e 预测值计算 r 中的 MAPE?
问题描述
我正在尝试在 R 中计算 MAPE,但我有任何问题。我有一个从 2017 年到 2020 年的食品零售数据集,我将其分为训练集 e 和测试集。现在,以这种方式计算预测值之后:
tsData_train <- ts(t1[,3], start= 2017, end= 2019, frequency=12)
tsData_test <- ts(t2[,3], start=2019, end= 2020, frequency=12)
#choose best model with arima
a1 <-auto.arima(tsData_train, max.d = 1, D=1)
fitA <- arima(tsData_train, method="ML")
pred <- predict(fitA,n.ahead = 4)
futurVal <- forecast(a1 ,h=24)`
请告诉我代码是否正确。我想手动计算 MAPE,我的感想是:
abs((actual-predicted)/predicted)
但我不知道哪些是实际的和预测的。请帮帮我。
解决方案
MAPE 是平均绝对百分比误差,因此它缺乏平均值。而且 :
MAPE = mean(abs((Y - Yhat)/Y))
其中 Y 是实际值或观察值,Yhat 是预测值。
推荐阅读
- python - 我正在尝试使用虹膜数据训练我的网络,但出现以下错误。虽然我也改了类型,但还是弹出同样的错误
- python - TypeError:“元组”和“int”实例之间不支持“>”[python openpyxl]
- xml - xslt xsl:复制在屏蔽元素值时未按预期工作
- azure - 在 Azure DataFactory 中解析 JSON
- django - django 中没有名为“我的项目名称”的模块。context_processors
- vba - VBA重置工作表上一个或多个图形的标签
- excel - How to calculate the sum of the 5th to 10th non-zero values in a row?
- aem - AEM Live Copy 可以在 MSM 中具有不同的域吗?
- reactjs - 我的 clearInterval 函数在 React 中不起作用有什么原因吗?
- php - 使用 SOCKS5 代理的隧道