I have two time series, of different length. A time series is GDP growth.

The gdp growth is the series I need, and it is also the longer series, but it has two gaps in two periods one after the other. The aggregate economic indicator is shorter, but it covers the period where I find the two gaps, and for the period in which both data are available, they are strictly correlated (r=0.94).

How could I fill these two gaps?

One possibility would be to use the autoregressive forecast. AR(1) describes quite well the series R²=0.91, and no significant autocorrelation in the residuals. But I do not think it is the optimal solution, because:

  1. I have two gaps, the second gap will be filled with the two step ahead forecast, which is less precise,
  2. I have data AFTER the point, and neglecting part of the information does not seem to be the best solution,
  3. I have also some external information (the correlated series), which I could also exploit.

Which method would be the most appropriate?

Thanks for the tips!


1 Answer 1


If I understood correctly the gap is in the middle of the data. In such cases you should not use forecasts that extrapolate the data, but some interpolation method.

If there is relatively large amount of variation in the data you would have best results using something like Catmull–Rom spline. Catmull–Rom spline has some nice properties (see here). The main advantage of the Catmull-Rom spline is that all real observations you have will become part of it and it allows you to estimate missing points in non-linear way.

If you work in R you can easily implement it with splineCR, if you work with Python you can have look at this github code. Nowadays you will find it also part of programs such as EViews or Stata.

  • $\begingroup$ Yes, the gap is in the middle. Your proposalseems clearly superior to the forecast solution, but... Is there any way to use the information coming from the correlated series to improve the interpolation? $\endgroup$
    – Khairon
    Sep 19, 2021 at 15:51
  • $\begingroup$ @Khairon the catmull-rom spline should do a decent job but if you want you can separately try to fit missing variables based on an auxiliary regression between variable of interest and that other highly correlated variable and see what gives you better results, although personally I think the solution above would be considered more elegant by people reviewing your work, replacing it by proxy * $\beta$ from the auxiliary regression would be crude because that is based on an average coeff. of the relationship over the whole sample rather than what the relationship was at the point of discont. $\endgroup$
    – 1muflon1
    Sep 19, 2021 at 15:57
  • $\begingroup$ (just a second, I am editing the comment) $\endgroup$
    – Khairon
    Sep 20, 2021 at 9:03
  • $\begingroup$ True, it is the average coefficient, but if the series move in the same direction should not it be a good approximation? If I don’t know the values of the gaps (and this is the problem in the first place) I cannot know which result is better. I found another series in which there is no gap, the data is not identical (I found the first release data, while the gaps are in the revised data), but is in general quite near. Is I assume that their difference is in average zero, then the method with the auxiliary regression was actually more performing, i.e. nearer to the first release data $\endgroup$
    – Khairon
    Sep 20, 2021 at 9:16
  • $\begingroup$ @Khairon well you can guess which one is better based on how fitted points behave, if you get flat line (like you would get with linear interpolation) but you see that your series has a lot of jumps then it is very likely the method was not appropriate. In any case you can use auxiliary reg if you think it works for you $\endgroup$
    – 1muflon1
    Sep 20, 2021 at 9:20

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.