首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python-什么会产生与autocorrelation_plot()相同的情节?

Python-什么会产生与autocorrelation_plot()相同的情节?
EN

Stack Overflow用户
提问于 2018-08-01 10:27:08
回答 1查看 818关注 0票数 0

我需要来自autocorrelation_plot()的自相关系数的值。问题是来自这个函数的输出是不可访问的,所以我需要另一个函数来获得这样的值。这就是为什么我使用来自statsmodelsstatsmodels,但它没有得到与autocorrelation_plot()相同的情节。这是我的代码:

代码语言:javascript
复制
from statsmodels.tsa.stattools import acf
from pandas.plotting import autocorrelation_plot
import matplotlib.pyplot as plt
import numpy as np

y = np.sin(np.arange(1,6*np.pi,0.1))
plt.plot(acf(y))
plt.show()

因此,结果与此不一样:

代码语言:javascript
复制
autocorrelation_plot(y)
plt.show()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-01 11:33:27

这似乎与acfacf参数有关。

int,返回自相关的可选延迟数。

我不知道这到底做了什么,但是在来源 of acf中有一个切片可以缩短数组:

代码语言:javascript
复制
avf = acovf(x, unbiased=unbiased, demean=True, fft=fft, missing=missing)
acf = avf[:nlags + 1] / avf[0]

如果直接使用statsmodels.tsa.stattools.acovf,结果与autocorrelation_plot相同

代码语言:javascript
复制
avf = acovf(x, unbiased=unbiased, demean=True, fft=fft, missing=missing)

所以你可以把它叫做

代码语言:javascript
复制
plt.plot(acf(y, nlags=len(y)))

让它发挥作用。

关于滞后的解释:https://math.stackexchange.com/questions/2548314/what-is-lag-in-a-time-series/2548350

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51631021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档