我正在完成“使用R预测”DataCamp课程。我完成了整个事情,除了一个特定练习的最后一部分(链接here,如果你有一个帐户),我完全迷失了。错误帮助它给我的帮助也没有帮助。我将使用我用来解决它们的代码来完成任务的各个部分:
通过facetting生成仅日常需求和最高温度的时间图。
autoplot(elec[, c("Demand", "Temperature")], facets = TRUE)
索引elec
相应地设置回归量矩阵以包含MaxTemp
表示最高温度,MaxTempSq
表示最高温度的平方值,Workday
,按顺序。
xreg <- cbind(MaxTemp = elec[, "Temperature"],
MaxTempSq = elec[, "Temperature"] ^2,
Workday = elec[,"Workday"])
使用ARIMA错误拟合需求列的动态回归模型,并调用此fit
。
fit <- auto.arima(elec[,"Demand"], xreg = xreg)
如果第二天是工作日(指标为1),最高温度预测为20°C,那么预测需求是多少?在cbind()
中为xreg
中的forecast()
参数填写适当的值。
这就是我被困住的地方。他们提供的示例代码如下所示:
forecast(___, xreg = cbind(___, ___, ___))
我设法得出第一个空白是fit
,所以我正在尝试这样的代码:
forecast(fit, xreg = cbind(elec[,"Workday"]==1, elec[, "Temperature"]==20, elec[,"Demand"]))
但是这给了我错误提示“确保第二天使用说明中给出的输入进行预测。”哪...不告诉我任何有用的东西。有什么想法,我应该做什么呢?
答案 0 :(得分:1)
如果提前预测,则使用elec
中未包含的新数据(这是您用来模拟模型的数据集)。新问题是在问题中给出的(温度20℃和工作日1)。因此,您elec
来电时不需要forecast
。只需使用新数据进行预测:
forecast(fit, xreg = cbind(20, 20^2, 1))