Seasonal subseries plot
|This article does not cite any sources. (April 2012)|
Seasonal subseries plots are a graphical tool to visualize and detect seasonality in a time series. Seasonal subseries plots involves the extraction of the seasons from a time series into a subseries based on a selected periodicity and are placed into mini time plots.
Seasonal subseries plots allows one to detect changes between different seasons , changes within a particular season over time as well as any underlying seasonal patterns. This plot is only useful if the period of the seasonality is already known. In many cases, this will in fact be known. For example, monthly data typically has a period of 12. If the period is not known, an autocorrelation plot or spectral plot can be used to determine it. If there is a large number of observations, then a box plot may be preferable.
Seasonal subseries plots are formed by
- Vertical axis: response variable
- Horizontal axis: seasons in chronological order. For example, with monthly data, all the January values are plotted (in chronological order), then all the February values, and so on.
The horizontal line displays the mean value for each month over the time series.
The analyst must specify the length of the seasonal pattern before generating this plot. In most cases, the analyst will know this from the context of the problem and data collection.
It is important to know when analyzing a time series if there is a significant seasonality effect. The seasonal subseries plot is an excellent tool for determining if there is a seasonal pattern. The seasonal subseries plot can provide answers to the following questions:
- Do the data exhibit a seasonal pattern?
- What is the nature of the seasonality?
- Is there a within-group pattern (e.g., do January and July exhibit similar patterns)?
- Are there any outliers once seasonality has been accounted for?
- Is the seasonality changing over time?
Seasonal subseries plots can be implemented in the R programming language using function monthplot().
The following R code results in the above seasonal deviation plot of antidiabetic drug sales;
> monthplot(a10, ylab= "$ million" , xlab= "Month", xaxt= "n", main= "Seasonal deviation plot: antidiabetic drug sales")
> axis(1, at=1:12, labels=month.abb, cex=0.8)
- Cleveland, William (1993). Visualizing Data. Hobart Press.
- Maindonald, Braun (2010). Data Analysis and Graphics Using R: An Example-Based Approach. 3rd ed. Cambridge, UK: Cambridge University Press.
Hyndman, R.J.; Koehler, A.B. "Another look at measures of forecast accuracy". International Journal of Forecasting (2006) 22 (4): 679–688.