Say I have 1,000,000 records of customer sales over the last year, recorded at the millisecond level as

mm/dd/yyyy HH:MM:SS.SSS  

My goal is to predict customer sales for the next 3 months. Is there a best practice for what level of aggregation I should use for the prediction? Should I aggregate my last year to 12 months, or leave it at the millisecond level?


If you're trying to forecast the total amount of sales over the next three months in order to have inventory ready, then something like a daily aggregation might be useful. You could also consider experimenting with different levels of aggregation (weekly or half daily) to be more-or-less reactive. Your model would need to take into account seasonality.

That being said, I could imagine a situation where you would want to use the higher frequency data. For instance, if you wanted to get a handle on what is the most customer orders you would get at certain times of the day so that you could have the right numbers of servers or sales clerks or something.

  • $\begingroup$ Thanks for the response John, I found this post very similar, but it lead me on a rabbit hole of complexity. Perhaps this is an unsolved problem? stats.stackexchange.com/questions/7292/… $\endgroup$
    – barker
    Apr 17 '17 at 21:35
  • $\begingroup$ @barker I wouldn't say it's unsolved, but it can get complex. It depends on what questions you're asking and how good enough you want the answer to be. Some people might just get some evaluation of fit (like AIC) and just choose the best model. You can apply the same reasoning to frequency. $\endgroup$
    – John
    Apr 18 '17 at 0:19

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.