I'm working with ARIMA models and was wondering about the necessity of BoxCox Transformation. When applying BoxCox on my training-set BoxCox.lambda(train) it results in an optimal lambda of -0.33. When working with ARIMA models I am not sure whether or not to use Box Cox Transformation, because the performance using BoxCox is worse than not using it.

Firstly, I ignored BoxCox and tried this: autoarima <- auto.arima(train, trace = TRUE, ic = c("aicc"), approximation = FALSE, stepwise = FALSE) which results in a ARIMA(3,0,0)(2,1,0)[12] with drift with AICc of 1559.92. The MAPE on the training set of 4.29 % and 6.89 % on the test set when doing a point forecast.

When using autoarimabc <- auto.arima(train,trace = TRUE, ic = c("aicc"), approximation = FALSE, stepwise = FALSE, lambda = "auto", biasadj = TRUE ), I get the following model: ARIMA(3,0,0)(0,1,1)[12] with drift and a AICc of -698.94. The MAPE on training is 8.35 % and 10.6 % on the test set.

Unfortunately I cannot provide the data. But can anyone tell me why the performance is worse with Box Cox?

  • $\begingroup$ If you are forecasting I would chose what works and not worry about anything else. It could be the data you are using in the training set has a distribution different than the hold out data set which is why you are getting the results you are. But that is a true guess. $\endgroup$ – user54285 Sep 17 '20 at 22:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.