Seasonality in Time Series
Many series show seasonality, a pattern that repeats at fixed points in the year, such as retail sales peaking each December. Left unmodeled, seasonal swings can mask the relationship you care about. The standard fix is a set of seasonal dummy variables, one for each season minus the base category, added to the regression. Including them is equivalent to deseasonalizing the data, so the remaining coefficients describe the relationship after the regular calendar pattern has been removed. With monthly data you add eleven month dummies; with quarterly data, three quarter dummies.
Why it matters
Ice-cream sales jump every summer whether or not anything economic changes. If you ignore that, a regression confuses the summer bump with the effect of your variable of interest. Seasonal dummies give each season its own intercept shift, so the model already "knows" that December is high and February is low, leaving the slopes to capture the part that is not just the calendar.
Formulas
Worked examples
You model monthly housing starts and suspect strong seasonal effects across the calendar.
With `tsset date, monthly`, use factor-variable notation to generate month dummies automatically: `regress starts rate i.month, robust`. Stata omits one month as the base. The coefficient on `rate` is now the effect net of seasonality, and you can test joint seasonality with `testparm i.month`.
Common mistakes
- ✗You need one dummy for every season. You include dummies and leave one season as the base, otherwise you hit the dummy variable trap.
- ✗Seasonal dummies remove the trend as well. They handle the repeating calendar pattern only; a separate time trend is still needed for drift.
- ✗Already-seasonally-adjusted data still need seasonal dummies. If the series is already deseasonalized, adding dummies is unnecessary and can even distort results.
- ✗Seasonality is the same problem as serial correlation. Seasonality is a deterministic calendar pattern; serial correlation is dependence in the error term, and the two are handled differently.
Revision bullets
- •Seasonality is a repeating calendar pattern within the year
- •Model it with seasonal dummy variables
- •Use dummies with one season as the base
- •Including the dummies deseasonalizes the data
- •Stata’s `i.month` or `i.quarter` builds the dummies automatically
Quick check
To capture seasonality in quarterly data, how many seasonal dummy variables do you include?
Adding a full set of seasonal dummy variables to a regression is equivalent to:
Connected topics
Sources
- Wooldridge (2019), §10.5Wooldridge, Jeffrey M. Introductory Econometrics: A Modern Approach. 7th ed. Cengage, 2019.Introduces seasonality and the use of seasonal dummy variables to deseasonalize a regression.
- Hyndman, R.J., and G. Athanasopoulos. Forecasting: Principles and Practice. 3rd ed. OTexts, 2021.Accessible treatment of seasonal components and seasonal adjustment, complementing the regression-dummy approach.