This example shows how to specify a seasonal ARIMA model using `arima`

. The time series is monthly international airline passenger numbers from 1949 to 1960.

Load the airline data set, and then plot the natural log of the monthly passenger totals.

load(fullfile(matlabroot,'examples','econ','Data_Airline.mat')) y = log(Data); T = length(y); figure plot(dates,y) xlim([1,T]) datetick('x','mmmyy') axis tight title('Log Airline Passengers') ylabel('(thousands)')

The data look nonstationary, with a linear trend and seasonal periodicity.

Calculate the differenced series, , where is the original log-transformed data. Plot the differenced series.

A1 = LagOp({1,-1},'Lags',[0,1]); A12 = LagOp({1,-1},'Lags',[0,12]); dY = filter(A1*A12,y); figure plot(dY) title('Differenced Log Airline Passengers')

The differenced series appears stationary.

figure autocorr(dY,50)

The sample ACF of the differenced series shows significant autocorrelation at lags that are multiples of 12. There is also potentially significant autocorrelation at smaller lags.

Box, Jenkins, and Reinsel suggest the multiplicative seasonal model,

for this data set (Box et al., 1994).

Specify this model.

Mdl = arima('Constant',0,'D',1,'Seasonality',12,... 'MALags',1,'SMALags',12)

Mdl = ARIMA(0,1,1) Model Seasonally Integrated with Seasonal MA(12): --------------------------------------------------------------- Distribution: Name = 'Gaussian' P: 13 D: 1 Q: 13 Constant: 0 AR: {} SAR: {} MA: {NaN} at Lags [1] SMA: {NaN} at Lags [12] Seasonality: 12 Variance: NaN

The property `P`

is equal to `13`

, corresponding to the sum of the nonseasonal and seasonal differencing degrees (1 + 12). The property `Q`

is also equal to `13`

, corresponding to the sum of the degrees of the nonseasonal and seasonal MA polynomials (1 + 12). Parameters that need to be estimated have value `NaN`

.

References:

Box, G. E. P., G. M. Jenkins, and G. C. Reinsel. *Time Series Analysis: Forecasting and Control*. 3rd ed. Englewood Cliffs, NJ: Prentice Hall, 1994.

`arima`

| `autocorr`

| `filter`

| `LagOp`

- Estimate Multiplicative ARIMA Model
- Simulate Multiplicative ARIMA Models
- Forecast Multiplicative ARIMA Model
- Check Fit of Multiplicative ARIMA Model
- Model Seasonal Lag Effects Using Indicator Variables

Was this topic helpful?