# How to model time series with unevenly spaced observations?

I have three time series of the following form:

$$T = T_{2000}, T_{2004}, T_{2008}, …$$

$$U = U_{1998}, U_{1999}, U_{2000}, U_{2001}, U_{2002}, U_{2003}, …$$

$$V = V_{1998}, V_{1999}, V_{2000}, V_{2001}, V_{2002}, V_{2003}, …$$

I would like to predict $$T$$ from $$U + V$$, but since the time series have unequal numbers of observations ($$T$$ has four times less data points: the series 'coincide' only every four years), I am unsure of how to go with it.

Any help (and software recommendations, preferably with R) would be very much appreciated!

The biggest mistake that people make with time series forecasting problems is look-ahead bias.

To avoid this bias, it's vital to make explicit a) the date at which we make predictions and b) the date for which we make predictions.

Our model should be capable of incorporating all information available at (or before) the date at which we make predictions.

So you want to make predictions for $$T$$ which occurs at 4 year intervals. But when do you want to make the predictions?

1. Do you make a prediction each time a new value of $$U$$ or $$V$$ comes in? So, in 2000 you make a 4 year ahead prediction, in 2001 you make a 3 year ahead prediction and so on?
2. Or do you just want to make predictions every 4 years? In which case your problem is about how to bake the historical values of $$U$$ and $$V$$ in to your features.
3. Or maybe you don't want to forecast the future at all and instead want to try and generate a same time 'nowcast' of $$T$$.

I suspect from your phrasing that you are looking at option 2.

In this case we can engineer features from $$U$$ and $$V$$ that include some history. As a few examples:

• Exponentially weighted moving average
• Rolling Average
• Rolling Z-score
• Rolling Standard Deviation
• Min/Max values from window

The python package tsfresh has good documentation on feature engineering transforms.

If you want to use U & V as features what you can do is have rows equal to the number of T observations and since T has a frequency of 4 years hence have 8 features equal to the last 4 years (compared to the year you are predicting) observation of U & V each.

As an example to predict T(2004) use U(2000-2003) & V(2000-2003) as features.

This is just one such way. It might also be that your prediction of U(2008) is dependant on V(1998 ~ 2007). In such case, you might want to model using the past value of T as well since it might capture well the previous values of U & V ( for years >4 )

• So I should just use lags of (T, U, V)? What kind of model is that? AR(x)? Commented Mar 26, 2019 at 8:53
• You will have to check which model works, but Arima etc should work nicely. But I was talking about creating a dataset/features. It makes sense that to predict T(2004) you can only use U < 2004 & V < 2004. Commented Mar 26, 2019 at 8:57
• Alright. I'll wait a bit for additional suggestions, but will start looking into ARIMA straight away. Commented Mar 26, 2019 at 9:14