Skip to main content

SARIMA — Seasonal ARIMA

SARIMA extends ARIMA to handle seasonality — patterns that repeat over a fixed cycle (month, quarter). SARIMA adds seasonal AR/MA/differencing components alongside the non-seasonal ones.

When to use

Use SARIMA when the series has a clear seasonal cycle (e.g. monthly retail sales, quarterly tourism). ACF spikes at seasonal lags signal the need for SARIMA.


Model notation

SARIMA(p,d,q)(P,D,Q)s\text{SARIMA}(p,d,q)(P,D,Q)_s
  • (p,d,q)(p,d,q): the non-seasonal part (as in ARIMA).
  • (P,D,Q)(P,D,Q): the seasonal part with cycle ss (e.g. s=12s=12 for monthly, s=4s=4 for quarterly data).

Running in EcoLab

  1. Modeling module → Univariate time series family → SARIMA.
  2. Choose YY; declare (p,d,q)(P,D,Q)s(p,d,q)(P,D,Q)_s and the seasonal period ss (or auto).
  3. Run; view seasonal forecasts + diagnostics; export the replication code.

Replication code

* --- SARIMA(1,1,1)(1,1,1)_12 ---
tsset time

* Estimate SARIMA with seasonal component (s = 12)
arima y, arima(1,1,1) sarima(1,1,1,12)

* Residual diagnostics
predict resid, residuals
corrgram resid, lags(24)

* Forecast
tsappend, add(12)
predict yhat, dynamic(.)

Limitations

  • Many parameters ⇒ needs a long series spanning several seasonal cycles.
  • Assumes the seasonal pattern is stable over time.

Video tutorial

Video Tutorial: Running SARIMA in EcoLab

See also