问题标签 [vector-auto-regression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
328 浏览

python - 修改 statsmodels 图

我在这里关注 statsmodels 文档: https ://www.statsmodels.org/stable/vector_ar.html

我到达页面中间的部分,上面写着: irf.plot(orth=False)

它为我的数据生成以下图表: 在此处输入图像描述

我需要修改图表的元素。例如,我需要应用tight_layout 并减小y-tick 大小,这样它们就不会进入到左边的图表中。

该文档讨论了将“子图绘图功能”传递给subplotirf.plot() 的参数。但是当我尝试类似的事情时:

只有fontsize参数有效。我也尝试将这些参数传递给“plot_params”参数,但无济于事。

所以,我的问题是如何访问这个 irf.plot 的其他参数,尤其是 figsize 和 ytick 大小?我还需要强制它打印一个网格,以及 x 轴上的所有值(1、2、3、4、...、10)

有什么方法可以使用该fig, ax = plt.subplots()方法创建一个空白图,然后在该图上创建 irf.plot ?

0 投票
0 回答
49 浏览

r - 样本外 VAR(1) 滚动窗口,平均绝对误差

请帮忙,任何建议都很重要,谢谢!

我正在尝试计算 VAR(1) 滚动窗口的 MAE(平均绝对误差),但无法解决该错误。代码:

错误信息是:

y[i + h] 中的错误 - predict.h1:二元运算符的非数字参数

试过:

0 投票
1 回答
275 浏览

r - R中的面板向量自回归(pVAR)后如何进行格兰杰因果检验?

在 R 中运行面板向量自回归后如何进行格兰杰因果检验(使用 panelvar 包)?

为了运行面板 VAR,可以执行以下操作:

然后我的问题是如何执行格兰杰因果关系测试(panelvar 不提供此功能)。似乎需要使用包中的pgrangertest功能plm。但是,我不确定“公式”是什么,因为 pVAR 模型不同于简单的线性模型。此外,“顺序”是否应该是在使用多个滞后选项运行我们的 pVAR 然后选择提供最佳模型拟合的一个(基于 Andrews_Lu_MMSC 函数提供的 BIC、AIC 等)后发现的最佳滞后数?

换句话说,我需要将“inv ~ value”替换为其他内容,我不清楚该怎么做。

鉴于我对 y、x 和 z 之间的相互关系感兴趣,我应该运行 pgrangertest 六次吗?以下内容有意义吗?

我知道pgrangertest一次只允许两个变量,但我不应该控制第三个变量吗?

0 投票
0 回答
89 浏览

r - 在 R 中使用 predict_rolling 进行 n 步提前预测

我目前正在尝试使用 R 包 tsDyn 中的 predict_rolling 进行滚动预测。

具体来说,例如,我想做一个提前两步的滚动预测,并希望在每一步都重新估计 VAR。我已经有一个功能代码,它为我做,但我想避免 for 循环。

当我尝试使用 n.ahead = 1 的 predict_rolling 复制代码时,我得到了正确的结果,但是它们在 n.ahead > 1 时有所不同。我不太确定当我增加视野时该函数在做什么。有人能帮我吗?

非常感谢!

0 投票
0 回答
66 浏览

r - 绘制从 SVAR 中选择的脉冲响应函数

我一直在运行一个 SVAR 模型,我想为其绘制单个变量的脉冲响应,我称之为 USW1。我一直在使用的代码是:

我已经手动绘制了 7 个 IRF,我想将它们组合成一个图表。我该怎么做?如果我使用grid.arrange:

我得到错误:

任何帮助将不胜感激

0 投票
1 回答
39 浏览

python - 是否可以使用 python 做一个受限的 VAR-X 模型?

我见过一些类似的问题,但它们不适用于我的情况。这是我正在尝试实现的模型。 VAR模型

我想我需要能够在计算 Stock 时将 stockxSign 的系数更改为 0 ,而在计算 CDS 时将 CDSxSign 的系数更改为 0

有人知道我该怎么做吗?

0 投票
0 回答
41 浏览

r - 在 r 中测试三个或更多时间序列的协整?

我正在估计一个具有三个变量的 VAR 模型。现在我知道 coint.test() 可用于测试两个时间序列的协整,但不能测试三个或更多(据我所知)。

这个对吗?如果是,是否有任何包/函数可用于同时测试三个或更多变量以进行协整?

提前致谢。

0 投票
0 回答
112 浏览

python - 具有不同滞后算子的向量自回归 (VAR) 模型拟合

我是计算神经科学的硕士 2 学生。我的分析快要结束了,我在应用 VAR 模型(向量自回归模型)时遇到了问题。这是一个相当复杂的问题,它涉及不同滞后算子对数据的测试。对我来说,当我尝试在带有负数的协方差矩阵上计算 cholesky 分解时,问题就来了。:

我可能已经找到了一个解决方案,但我无法将它包含在部署模型(“VAR”)的 python 函数中。如果有人有十分钟时间帮助我,请给我写信。感谢您的关注 :)

对于 [1,2,3,4,6,8,9,10,12,13,14,15,16,17,18,19,20] 中的 i:打印(i)

排列列的名称

1 滞后阶 = 0 AIC:-59.6358271069015 BIC:-59.61188298346849 FPE:1.260344786813777e-26 HQIC:-59.626460351200464

滞后顺序 = 1 /opt/anaconda3/lib/python3.8/site-packages/statsmodels/tsa/base/tsa_model.py:578:ValueWarning:提供了不受支持的索引,在预测时将被忽略。warnings.warn('提供了一个不受支持的索引,将是' Traceback (最近一次调用最后一次):

文件“”,第 139 行,在 print('AIC : ', result.aic)

文件“/opt/anaconda3/lib/python3.8/site-packages/statsmodels/base/wrapper.py”,第 34 行,在getattribute obj = getattr(results, attr)

文件“/opt/anaconda3/lib/python3.8/site-packages/statsmodels/tsa/vector_ar/var_model.py”,第 2139 行,在 aic 返回 self.info_criteria['aic']

pandas._libs.properties.CachedProperty 中的文件“pandas/_libs/properties.pyx”,第 33 行。得到

文件“/opt/anaconda3/lib/python3.8/site-packages/statsmodels/tsa/vector_ar/var_model.py”,第 2120 行,在 info_criteria ld = logdet_symm(self.sigma_u_mle)

文件“/opt/anaconda3/lib/python3.8/site-packages/statsmodels/tools/linalg.py”,第 28 行,在 logdet_symm c 中,_ = linalg.cho_factor(m, lower=True)

文件“/opt/anaconda3/lib/python3.8/site-packages/scipy/linalg/decomp_cholesky.py”,第 152 行,在 cho_factor c,lower = _cholesky(a, lower=lower, overwrite_a=overwrite_a, clean=False ,

文件“/opt/anaconda3/lib/python3.8/site-packages/scipy/linalg/decomp_cholesky.py”,第 37 行,在 _cholesky 中引发 LinAlgError(“数组的第 %d 个前导次要不是正数”

LinAlgError:数组的第 3 个主要次要不是正定的

0 投票
0 回答
20 浏览

python - 如何创建用于模拟 VAR(1) 时间序列的系数矩阵(A 矩阵)?

我想模拟一个 20X100 VAR(1) 时间序列。为此,我首先需要创建一个 20X20 系数矩阵(A 矩阵)。但是这个系数矩阵应该满足某些条件才能使 VAR 系列稳定。从我读到的条件是 A 的所有特征值的绝对值都应该小于 1。

我的问题是是否还有其他条件?以及如何通过蛮力或使用某些库来创建满足这些条件的 A 矩阵?

0 投票
0 回答
102 浏览

time-series - Granger 因果检验/VAR 示例中的错误(Python 3.8)-

我正在尝试/未能重现 Python 中 VAR 模型构建的“流行”示例,但在 Granger 因果关系测试中遇到了困难。我使用提供的数据集和代码,但收到以下错误。感谢您让我知道您是否认为您了解这里发生的事情!最好的

文件“/Applications/anaconda3/lib/python3.8/site-packages/statsmodels/tsa/tsatools.py”,第 524 行,在 lagmat2ds 中引发 ValueError('仅支持 1 维和 2 维数据。') ValueError:仅支持一维和二维数据。

完整的代码如下所示 - 原始演练在这里