I am working on a time series that contains daily sales data. The aim of the project is to estimate the impact of marketing expenditure on the sales, while accounting for seasonality and trend.

I have subtracted a double seasonality (weekly and yearly) and a trend by using TBATS. Now I plan to regress the marketing expenditure on the residuals.

The problem is that sales are 0 (or almost) every Sunday and on Public Holidays. Sundays are taken into account by the weekly seasonality and for Holidays I added a dummy variable in the regression. However marketing expenditure is not 0 on those days and that could bias the regression.

I was considering the following options, which one would be recommended and/or are there any other suggestions?

  • Multiply marketing expenditure by a dummy that is 0 on Sundays and Holidays and 1 otherwise
  • Do the same for Holidays, but leave out Sundays altogether from the data

1 Answer 1


Your current piece-meal approach is (probably) flawed for a couple of reasons. See Simple method of forecasting number of guests given current and historical data for a similar example of daily data. Some of the factors that you are not currently considering considering are 1) a customized window of response around each holiday 2) the effect of changes in level (intercept changes) and or changes in trend over time 3) the effect of one time anomalies 4) the effect of particular days in the month and/or long-weekends 5) changes in day-of-the-week patterns 6) changes in error variance over time 7) the fact that you are not estimating all your model parameters simultaneously but in a sequential approach is flawed as your first stage presumes the absence of effects that you are estimating in the second phase.

Specifically to your question as to how to avoid a bias due to zero sales , I suggest that you simply change your marketing value to 0.0 when zero sales are observed.

If you wish to post a column oriented csv file , I may be able to help further. Specify the country and the starting date.

  • $\begingroup$ Thank you very much for your quick response! Unfortunately I am not allowed to share the data... What better approach would you recommend? I have heard great things about the AUTOBOX software, but as this is a one time project I don't think we can afford the licence. I am looking into auto.arima with fourier terms for the seasonalities. It doesn't solve all the issues you brought up, but at least the parameters are estimated simultaneously. My last option would be the state space model Unobserved Components in Python that also seems to estimate everything simultaneously. $\endgroup$ Dec 31, 2017 at 18:25

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.