Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python statsmodels Granger因果关系测试返回空字典_Python_Time Series_Statsmodels - Fatal编程技术网

Python statsmodels Granger因果关系测试返回空字典

Python statsmodels Granger因果关系测试返回空字典,python,time-series,statsmodels,Python,Time Series,Statsmodels,我正在使用库statsmodels.tsa.stattools.grangercausalitytests来测试两个时间序列之间的相似性。我知道两个列表a和b都是合法的列表,没有任何None或nan值,并且它们的大小相同。我调用因果关系测试的数组也没有任何问题。我不明白为什么电话只返回一本空字典 grangercausalitytests([[a[i], b[i]] for i in range(0, len(a))], -1, verbose=True) 这里可能有什么问题?maxlag应该

我正在使用库
statsmodels.tsa.stattools.grangercausalitytests
来测试两个时间序列之间的相似性。我知道两个列表
a
b
都是合法的列表,没有任何
None
nan
值,并且它们的大小相同。我调用因果关系测试的数组也没有任何问题。我不明白为什么电话只返回一本空字典

grangercausalitytests([[a[i], b[i]] for i in range(0, len(a))], -1, verbose=True)

这里可能有什么问题?

maxlag应该是一个正整数,而不是-1

计算结果的循环永远不会被遍历。


我使用python statsmodel进行了检查。所以,对于因果关系测试,您不需要一次提供序列的单个元素。相反,您应该一次提供整个时间序列。因此,假设在“T”中有两个时间序列“a”,“b”,则可以使用以下时间序列:

grangercausalitytests(np.column_stack((T['a'][1:],T['b'][1:])), 10)

非常感谢你!我第一次尝试使用一个正整数,但不断得到错误
maxlag最多应该是-1
。我刚刚重新启动了服务器,现在可以正常工作了。顺便说一句:您可以使用
np.column\u堆栈((a,b))
代替列表循环。也许,在列和两行变量中有观测值,那么错误消息会说-1,因为它被解释为nobs=2,AFAICS。
grangercausalitytests(np.column_stack((T['a'][1:],T['b'][1:])), 10)