Почему statsmodels plot_acf имеет параметр «беспристрастный»? - PullRequest
0 голосов
/ 04 марта 2020

В statsmodels plot_acf есть параметр, который называется «беспристрастный»: «unbiased: bool, если True, то знаменателями для автоковариации являются nk, в противном случае n.»

Почему существует параметр «беспристрастный»? Почему нужно, чтобы знаменатель был n - k, а не n? В приведенном ниже коде показана разница между отображаемым acf с unbiased = True и unbiased = False.

import numpy as np, pandas as pd, matplotlib.pyplot as plt, statsmodels.api as sm

dta = sm.datasets.sunspots.load_pandas().data
dta.index = pd.Index(sm.tsa.datetools.dates_from_range('1700', '2008'))
del dta["YEAR"]

Вот значение для l oop для вычисления acf (насколько я понимаю):

c = []

for i in range(1, 201):

    c.append(np.corrcoef(dta['SUNACTIVITY'][i:], dta['SUNACTIVITY'][:-i])[0, 1])

Постройте акф с беспристрастным = True:

sm.graphics.tsa.plot_acf(dta.values.squeeze(), lags = 200, unbiased = True, zero = False)
plt.plot([0] + c)
plt.show()

Постройте акф с беспристрастным = False:

sm.graphics.tsa.plot_acf(dta.values.squeeze(), lags = 200, unbiased = False, zero = False)
plt.plot([0] + c)
plt.show()

Спасибо!

...