I'm doing a time series analysis of some groundwater wells and as such the data set has a strong yearly seasonality. The data is daily and I am using a Fourier term to account for the seasonality in my ARIMA model. To determine the k value for the Fourier term(s) to be used I wanted to pick a model with a minimized AICc. I'm confused about the results of the model and am now uncertain about my understanding of the concept of Fourier terms and of the code I'm using.
The data for PS1302 is available here https://www.dropbox.com/sh/563nu3daeid0agb/AAB6NSddVUKgBCCbQtuqXPsZa?dl=0 and my code is shown below.
#Daily Piezometric Data from PS13-02
PS1302 = read.csv("PS13-02.csv",TRUE,",")
#impute missing data from data set
PS1302 = imputeTS::na_interpolation(PS1302)
#Create Time Series
PS1302 = ts(PS1302[,2],frequency = (365.25),start = c(2013,116))
#PS1302
plots1 = list()
for (i in seq (10)) {
fit1 = auto.arima(PS1302, xreg = fourier(PS1302, K = i), seasonal = FALSE)
plots1[[i]] = autoplot(forecast(fit1, xreg = fourier(PS1302, K = i, h=10))) +
xlab(paste("K=",i,"AICC=",round(fit1[["aicc"]],2))) + ylab("")
}
gridExtra::grid.arrange(plots1[[1]],plots1[[2]],plots1[[3]],plots1[[4]],plots1[[5]],
plots1[[6]],plots1[[7]],plots1[[8]],plots1[[9]],plots1[[10]],
nrow=5)
The results of the plots loop are:
I'm confused about the output of 8 Fourier terms resulting in the lowest AICc. It doesn't make sense to me that there would be 8 different seasonal factors affecting the groundwater wells, I would have expected 1 Fourier term. Additionally when running mstl(PS1302)
the decomposition is only of one seasonality of 365.25.