ETSResults.test_serial_correlation(method, lags=None)

Ljung-Box test for no serial correlation of standardized residuals

Null hypothesis is no serial correlation.

method{‘ljungbox’,’boxpierece’, None}

The statistical test for serial correlation. If None, an attempt is made to select an appropriate test.

lagsNone, int or array_like

If lags is an integer then this is taken to be the largest lag that is included, the test result is reported for all smaller lag length. If lags is a list or array, then all lags are included up to the largest lag in the list, however only the tests for the lags in the list are reported. If lags is None, then the default maxlag is min(10, nobs//5) for non-seasonal time series and min (2*m, nobs//5) for seasonal time series.


An array with (test_statistic, pvalue) for each endogenous variable and each lag. The array is then sized (k_endog, 2, lags). If the method is called as ljungbox = res.test_serial_correlation(), then ljungbox[i] holds the results of the Ljung-Box test (as would be returned by statsmodels.stats.diagnostic.acorr_ljungbox) for the i th endogenous variable.

See also


Ljung-Box test for serial correlation.


For statespace models: let d = max(loglikelihood_burn, nobs_diffuse); this test is calculated ignoring the first d residuals.

Output is nan for any endogenous variable which has missing values.

Last update: Dec 14, 2023