I'm quite new to statistics and forecasting, and I have to build a model to forecast monthly sales of different related products in a bunch of cities.

Seasonal ARIMA seams to be a good model for that, but that implies creating a model for each of the products in each cities (I have about 300 series). I don't think there is anything wrong with that, but I wonder if there is a model that can take all the series into account at the same time to improve the forecast.


3 Answers 3


You could use generalized regression model for producing hierarchical forecasts from the individual forecasts.

Here is a link:


  • 2
    $\begingroup$ +1. This approach has been found to improve forecast accuracy across the hierarchy, see here and here. $\endgroup$ Jan 14, 2015 at 7:31
  • $\begingroup$ This is not exactly what I was looking for, but it is still pretty neat and it will certainly be useful. Do you know an implementation in Python? $\endgroup$
    – Pafnouti
    Jan 14, 2015 at 10:05
  • $\begingroup$ @Pafnouti No, I do not know but perhaps you can write these equations down by using linear algebra libraries in Python? $\endgroup$
    – Analyst
    Jan 14, 2015 at 13:17
  • $\begingroup$ @StephanKolassa It seems that Prof Hyndman is working quite heavily in this field also... :) $\endgroup$
    – Analyst
    Jan 14, 2015 at 13:19
  • $\begingroup$ He is. He co-authored both the open source textbook you linked to and the hierarchical time series approach, and he created the hts package for R for hierarchical time series - no python implementation, though - and he's editor-in-chief of the IJF and he posts here frequently. Take him seriously. $\endgroup$ Jan 14, 2015 at 14:03

There is an article on the inside-R website which uses signal decomposition for training and testing and then forecasting with a neural net and which might be a useful alternative to generalized regression models. R code is supplied.

link here


Try finding the common factors, and model these factors. For instance, you could run PCA, and see if there's a few factors that explain the variance of your 300 series. It is possible that you may find a handful of principal components explain a huge chunk of the variance of all 300 series. In this case you'll model these few factors only. Then you can recover the original series from factors.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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