我正在开发一个预测模型,其中我有从2014年到当前月份(2018年3月)的月度数据。
我的一些数据包括两列:账单金额和报价金额,例如:
(对于格式不当我表示歉意)
年份 - 季度 - 月份 - 账单金额 - 报价金额
2014 - 2014Q1 - 201401 - 100 - 500
2014 - 2014Q1 - 201402 - 150 - 600
2014 - 2014Q1 - 201403 - 200 - 700
我正在使用这个模型来预测月销售额,并尝试使用每月的报价数量作为 xreg 变量。
我阅读了下面的文章,但是还没有找到实现我想要做的事情所需的东西:
ARIMA forecasting with auto.Arima() and xreg
问题:有人可以给出使用 xreg 进行样本外预测的示例吗?我知道要实现这个目标,需要将 xreg 变量的未来值进行预测,但是我不知道如何传递这些未来值。
我尝试在预测值后使用类似于futurevalues$mean的东西,但这并没有起作用。以下是我的代码:
sales = read.csv('sales.csv')
# Below, I'm creating a training set for the models through
# December 2017 (48 months).
train = sales[sales$TRX_MON<=201712,]
# I will also create a test set for our data from January 2018 (3 months)
test = sales[sales$TRX_MON>201712,]
dtstr2 <- ts(train2, start=2014, frequency=12)
dtste2 <- ts(test2, start=2018, frequency=12)
fit2 <- auto.arima(dtstr2[,"BILLINGS"], xreg=dtstr2[,"QUOTES"])
fcast2 <- forecast(fit2, xreg=dtste2[,"QUOTES"], h=24)
fcast2
上面的代码可以工作,但只能给我一个为期3个月的预测,例如:
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
Jan 2018 70 60 100 50 130
Feb 2018 80 70 110 60 140
Mar 2018 90 80 120 70 150
我已经查阅了许多博客和主题,寻找使用auto.arima进行xreg变量外部样本预测的示例,但没有找到任何这样的示例。
有人能帮忙吗?
非常感谢。