Decomposition of time series

From HandWiki
Short description: Statistical task that deconstructs a time series into several components

The decomposition of time series is a statistical task that deconstructs a time series into several components, each representing one of the underlying categories of patterns.[1] There are two principal types of decomposition, which are outlined below.

Decomposition based on rates of change

This is an important technique for all types of time series analysis, especially for seasonal adjustment.[2] It seeks to construct, from an observed time series, a number of component series (that could be used to reconstruct the original by additions or multiplications) where each of these has a certain characteristic or type of behavior. For example, time series are usually decomposed into:

  • [math]\displaystyle{ T_t }[/math], the trend component at time t, which reflects the long-term progression of the series (secular variation). A trend exists when there is a persistent increasing or decreasing direction in the data. The trend component does not have to be linear.[1]
  • [math]\displaystyle{ C_t }[/math], the cyclical component at time t, which reflects repeated but non-periodic fluctuations. The duration of these fluctuations depend on the nature of the time series.
  • [math]\displaystyle{ S_t }[/math], the seasonal component at time t, reflecting seasonality (seasonal variation). A seasonal pattern exists when a time series is influenced by seasonal factors. Seasonality occurs over a fixed and known period (e.g., the quarter of the year, the month, or day of the week).[1]
  • [math]\displaystyle{ I_t }[/math], the irregular component (or "noise") at time t, which describes random, irregular influences. It represents the residuals or remainder of the time series after the other components have been removed.

Hence a time series using an additive model can be thought of as

[math]\displaystyle{ y_t = T_t + C_t + S_t + I_t, }[/math]

whereas a multiplicative model would be

[math]\displaystyle{ y_t = T_t \times C_t \times S_t \times I_t. \, }[/math]

An additive model would be used when the variations around the trend do not vary with the level of the time series whereas a multiplicative model would be appropriate if the trend is proportional to the level of the time series.[3]

Sometimes the trend and cyclical components are grouped into one, called the trend-cycle component. The trend-cycle component can just be referred to as the "trend" component, even though it may contain cyclical behavior.[3] For example, a seasonal decomposition of time series by Loess (STL)[4] plot decomposes a time series into seasonal, trend and irregular components using loess and plots the components separately, whereby the cyclical component (if present in the data) is included in the "trend" component plot.

Decomposition based on predictability

The theory of time series analysis makes use of the idea of decomposing a times series into deterministic and non-deterministic components (or predictable and unpredictable components).[2] See Wold's theorem and Wold decomposition.


Kendall shows an example of a decomposition into smooth, seasonal and irregular factors for a set of data containing values of the monthly aircraft miles flown by UK airlines.[5]

In policy analysis, forecasting future production of biofuels is key data for making better decisions, and statistical time series models have recently been developed to forecast renewable energy sources, and a multiplicative decomposition method was designed to forecast future production of biohydrogen. The optimum length of the moving average (seasonal length) and start point, where the averages are placed, were indicated based on the best coincidence between the present forecast and actual values.[6]

An example of using multiplicative decomposition in biohydrogen production forecast.[6]


An example of statistical software for this type of decomposition is the program BV4.1 that is based on the Berlin procedure. The R statistical software also includes many packages for time series decomposition, such as seasonal[7], stl, stlplus[8], and bfast. Bayesian methods are also available; one example is the BEAST method in the Rbeast R package.[9]

See also


Further reading