什么意思print('trace statistic: ', jres.lr1) print('max eigenvalue statistic: ', jres.lr2) # 进行Johansen检验 # 输出结果 print('Eigenvalues: ', jres.eig) print('Critical values (90%, 95%, 99%) of trace statistic: ', jres.trace_stat_crit_vals) print('Critical values (90%, 95%, 99%) of max eigenvalue statistic: ', jres.max_eig_stat_crit_vals) trace statistic: [nan -0.] max eigenvalue statistic: [nan -0.] Eigenvalues: [1.5 0. ] Critical values (90%, 95%, 99%) of trace statistic: [[10.4741 12.3212 16.364 ] [ 2.9762 4.1296 6.9406]] Critical values (90%, 95%, 99%) of max eigenvalue statistic: [[ 9.4748 11.2246 15.0923] [ 2.9762 4.1296 6.9406]]
时间: 2024-01-24 12:19:03 浏览: 129
这段代码是进行 Johansen 检验,用于检验是否存在协整关系。在这个例子中,输出结果显示 trace statistic 和 max eigenvalue statistic 的值都为 nan,这意味着无法进行 Johansen 检验,可能是因为数据不足或者数据质量不好导致的。Eigenvalues 的值为 [1.5 0.],意味着存在一个特征根,但是没有协整关系。同时,Critical values 显示在 90%、95% 和 99% 的置信水平下的阈值。
相关问题
print('trace statistic: ', jres.lr1) print('max eigenvalue statistic: ', jres.lr2) # 进行Johansen检验 # 输出结果 print('Eigenvalues: ', jres.eig) print('Critical values (90%, 95%, 99%) of trace statistic: ', jres.trace_stat_crit_vals) print('Critical values (90%, 95%, 99%) of max eigenvalue statistic: ', jres.max_eig_stat_crit_vals) trace statistic: [40.01598228 4.74157044] max eigenvalue statistic: [35.27441184 4.74157044] Eigenvalues: [0.98783633 0.44716534] Critical values (90%, 95%, 99%) of trace statistic: [[10.4741 12.3212 16.364 ] [ 2.9762 4.1296 6.9406]] Critical values (90%, 95%, 99%) of max eigenvalue statistic: [[ 9.4748 11.2246 15.0923] [ 2.9762 4.1296 6.9406]]数字啥意思
这段代码是进行 Johansen 检验,用于检测多个时间序列之间是否存在协整关系。检验结果包括:
- trace statistic: 检验统计量的值,其中第一个值是用于检验一阶协整关系的统计量,第二个值是用于检验二阶协整关系的统计量。
- max eigenvalue statistic: 检验统计量的值,其中第一个值是用于检验一阶协整关系的统计量,第二个值是用于检验二阶协整关系的统计量。
- Eigenvalues: 特征值,表示序列中协整关系的数量。
- Critical values (90%, 95%, 99%) of trace statistic: 检验统计量的临界值,用于比较检验统计量的大小,判断是否存在协整关系。其中第一个数组是用于一阶协整检验的临界值,第二个数组是用于二阶协整检验的临界值。
- Critical values (90%, 95%, 99%) of max eigenvalue statistic: 同上,用于比较检验统计量的大小,判断是否存在协整关系。
# 进行Johansen检验 jres = coint_johansen(df, 0, 1) # 输出结果 print('Eigenvalues: ', jres.eig) print('Critical values (90%, 95%, 99%) of trace statistic: ', jres.trace_stat_crit_vals) print('Critical values (90%, 95%, 99%) of max eigenvalue statistic: ', jres.max_eig_stat_crit_vals)
这段代码使用 Johansen 检验来测试多个时间序列之间是否存在协整关系。具体来说,该检验可以帮助我们确定是否存在一个线性组合,可以将所有的时间序列转化为一个共同的趋势。如果存在这样的线性组合,则这些时间序列就被认为是协整的。
在这段代码中,`df` 是一个包含多个时间序列数据的 Pandas DataFrame 对象。`coint_johansen()` 函数的第二个参数 `0` 表示我们要对一阶差分后的数据进行检验。第三个参数 `1` 表示我们要对一阶差分后的数据进行一次 Johansen 检验。
`jres` 是返回的检验结果对象,其中 `jres.eig` 属性包含了 Johansen 检验的特征值。如果某个特征值接近于 0,则说明这个时间序列对共同趋势的贡献较小,可以被认为是非协整的。如果特征值大于 0,则说明这个时间序列对共同趋势的贡献较大,可以被认为是协整的。
`jres.trace_stat_crit_vals` 和 `jres.max_eig_stat_crit_vals` 属性分别包含了迹统计量和最大特征值统计量的临界值。我们可以将这些值与实际的统计量进行比较,以确定是否存在协整关系。
阅读全文