Ошибка в acorr_ljungbox из statsmodel

Поэтому я пытаюсь сделать тест box-ljung на resudual, но я получаю странную ошибку и не могу понять, почему.

x = diag.acorr_ljungbox(np.random.random(20))

Я попытался сделать то же самое со случайным массивом также, все та же ошибка:

ValueError: operands could not be broadcast together with shapes (19,) (40,)

1 ответ

  1. Это похоже на ошибку в настройке задержки по умолчанию, которая установлена в 40 независимо от длины данных.

    Как обходной путь и получить правильную статистику, lagsпотребности быть ограниченным, например используя 5 лагов ниже.

    >>> from statsmodels.stats import diagnostic as diag
    
    >>> diag.acorr_ljungbox(np.random.random(50))[0].shape
    (40,)
    
    >>> diag.acorr_ljungbox(np.random.random(20), lags=5)
    (array([ 0.36718151,  1.02009595,  1.23734092,  3.75338034,  4.35387236]),
    array([ 0.54454461,  0.60046677,  0.74406305,  0.44040973,  0.49966951]))