I am working on a Time Series model, and the series appeared to be non stationary (presence of trend & seasonality), as I was using ARIMA to predict for my time Series , I performed first order differencing.
My question is now if I am predicting future values, are the predictions going to be differenced? Do I need to undo the differencing in any manner before forecasting?
On a side note, can I use an ARIMA (p,d,q) (P,D,Q) model instead of differencing to account for seasonality ?
The answer is yes, the predictions will be transformed and, if you try to do this manually, you will need to back-transform your model to get the correct forecasted values. The good news is that this process is fully automated in most statistical software so you won't have to do it manually. An example using Hyndman's 'forecast' package would be:
# Without integrated term: plot( forecast(Arima(y = WWWusage, order = c(1,0,1))) ) # With integrated term: plot( forecast(Arima(y = WWWusage, order = c(1,1,1))) )
As you can see, in both cases the output forecast value in the back-transformed units, as opposed to:
# With manual differencing (non-automated way): plot( forecast(Arima(y = diff(WWWusage), order = c(1,0,1))) )
which forecasts unintelligible values.
If you want to use a seasonal ARIMA(p,d,q)(P,D,Q) model you should do so on grounds of some model validation metric and not because you're trying to sidestep the integrated terms (which you probably won't anyway). The best thing to do would be to let function auto.arima select a model for you.