Time Series • Statistics Background for Forecasting
Time Series / P3.02 Interpret the ACF

P3.02 Interpret the ACF

Practical 3 Statistics Background for Forecasting

Given ACF patterns, match them to: white noise, slow decay, and a strong seasonal lag at 12.

Practical / Solution

P3.02 Interpret the ACF

Problem Statement

Given ACF patterns, match them to: white noise, slow decay, and a strong seasonal lag at 12.

Learning Outcomes

  • Interpret slow decay as persistence.
  • Interpret a spike at lag 12 as possible monthly seasonality.

Theory

Slow ACF decay suggests nonstationarity or strong persistence. A spike at a seasonal lag suggests seasonality. Cutting off after a few lags can suggest a moving-average pattern, but interpretation should be cautious with small samples.

Dataset / Data Source

No external file. Students interpret plots produced in P3.01 and a seasonal constructed series.

Analysis / Program

import numpy as np import pandas as pd from statsmodels.tsa.stattools import acf rng = np.random.default_rng(3) n = 120 seasonal = pd.Series(np.sin(2 * np.pi * np.arange(n) / 12) + rng.normal(0, 0.2, n)) vals = acf(seasonal, nlags=15, fft=True) print("ACF lag 1:", round(vals[1], 3)) print("ACF lag 12:", round(vals[12], 3))

Expected Output

Printed ACF at lags 1 and 12 for this constructed seasonal series. Lag 12 should be relatively large compared with nearby non-seasonal lags.

Result / Interpretation

If lag 12 stands out, a seasonal term is worth considering later. Do not jump to a full SARIMA from one number.

Note

Read ACF together with a time plot, not in isolation.