格兰杰最大滞后

2024-06-12 19:39:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个开发人员,他创建了一个python脚本来确定几个数据集的格兰杰因果关系,这些数据集大约相当于3年的每日数据(每个时间序列大约1100个数据点)。脚本似乎运行良好,但我们不确定应该选择哪个MaxLag。我们的目标是确定可能的因果关系,并确定因果关系中的滞后时间(1天、2天、7天、14天等)。显然,当我们把maxlag数从1改为15时,我们得到的是非常不同的数。见下面我提到的代码部分

granger_test_result = grangercausalitytests(data[:, 1::-1], maxlag=12, verbose=False)

optimal_lag = -1
F_test = -1.0
for key in granger_test_result.keys():
    _F_test_ = granger_test_result[key][0]['params_ftest'][0]
    if _F_test_ > F_test:
        F_test = _F_test_
        optimal_lag = key
return optimal_lag

据我所知,最大滞后值越高,对时间序列进行的“分析”越多,这导致最大滞后值越高,从而提供更强的因果关系结果。这似乎非常有用,但前提是我们知道因果关系的实际“滞后”是什么


Tags: 数据keytest脚本目标开发人员时间序列