问题标签 [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.
python - 修改 statsmodels 图
我在这里关注 statsmodels 文档: https ://www.statsmodels.org/stable/vector_ar.html
我到达页面中间的部分,上面写着:
irf.plot(orth=False)
我需要修改图表的元素。例如,我需要应用tight_layout 并减小y-tick 大小,这样它们就不会进入到左边的图表中。
该文档讨论了将“子图绘图功能”传递给subplot
irf.plot() 的参数。但是当我尝试类似的事情时:
只有fontsize
参数有效。我也尝试将这些参数传递给“plot_params”参数,但无济于事。
所以,我的问题是如何访问这个 irf.plot 的其他参数,尤其是 figsize 和 ytick 大小?我还需要强制它打印一个网格,以及 x 轴上的所有值(1、2、3、4、...、10)
有什么方法可以使用该fig, ax = plt.subplots()
方法创建一个空白图,然后在该图上创建 irf.plot ?
r - 样本外 VAR(1) 滚动窗口,平均绝对误差
请帮忙,任何建议都很重要,谢谢!
我正在尝试计算 VAR(1) 滚动窗口的 MAE(平均绝对误差),但无法解决该错误。代码:
错误信息是:
y[i + h] 中的错误 - predict.h1:二元运算符的非数字参数
试过:
r - R中的面板向量自回归(pVAR)后如何进行格兰杰因果检验?
在 R 中运行面板向量自回归后如何进行格兰杰因果检验(使用 panelvar 包)?
为了运行面板 VAR,可以执行以下操作:
然后我的问题是如何执行格兰杰因果关系测试(panelvar 不提供此功能)。似乎需要使用包中的pgrangertest
功能plm
。但是,我不确定“公式”是什么,因为 pVAR 模型不同于简单的线性模型。此外,“顺序”是否应该是在使用多个滞后选项运行我们的 pVAR 然后选择提供最佳模型拟合的一个(基于 Andrews_Lu_MMSC 函数提供的 BIC、AIC 等)后发现的最佳滞后数?
换句话说,我需要将“inv ~ value”替换为其他内容,我不清楚该怎么做。
鉴于我对 y、x 和 z 之间的相互关系感兴趣,我应该运行 pgrangertest 六次吗?以下内容有意义吗?
我知道pgrangertest
一次只允许两个变量,但我不应该控制第三个变量吗?
r - 在 R 中使用 predict_rolling 进行 n 步提前预测
我目前正在尝试使用 R 包 tsDyn 中的 predict_rolling 进行滚动预测。
具体来说,例如,我想做一个提前两步的滚动预测,并希望在每一步都重新估计 VAR。我已经有一个功能代码,它为我做,但我想避免 for 循环。
当我尝试使用 n.ahead = 1 的 predict_rolling 复制代码时,我得到了正确的结果,但是它们在 n.ahead > 1 时有所不同。我不太确定当我增加视野时该函数在做什么。有人能帮我吗?
非常感谢!
r - 绘制从 SVAR 中选择的脉冲响应函数
我一直在运行一个 SVAR 模型,我想为其绘制单个变量的脉冲响应,我称之为 USW1。我一直在使用的代码是:
我已经手动绘制了 7 个 IRF,我想将它们组合成一个图表。我该怎么做?如果我使用grid.arrange:
我得到错误:
任何帮助将不胜感激
python - 是否可以使用 python 做一个受限的 VAR-X 模型?
我见过一些类似的问题,但它们不适用于我的情况。这是我正在尝试实现的模型。 VAR模型
我想我需要能够在计算 Stock 时将 stockxSign 的系数更改为 0 ,而在计算 CDS 时将 CDSxSign 的系数更改为 0
有人知道我该怎么做吗?
r - 在 r 中测试三个或更多时间序列的协整?
我正在估计一个具有三个变量的 VAR 模型。现在我知道 coint.test() 可用于测试两个时间序列的协整,但不能测试三个或更多(据我所知)。
这个对吗?如果是,是否有任何包/函数可用于同时测试三个或更多变量以进行协整?
提前致谢。
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 个主要次要不是正定的
python - 如何创建用于模拟 VAR(1) 时间序列的系数矩阵(A 矩阵)?
我想模拟一个 20X100 VAR(1) 时间序列。为此,我首先需要创建一个 20X20 系数矩阵(A 矩阵)。但是这个系数矩阵应该满足某些条件才能使 VAR 系列稳定。从我读到的条件是 A 的所有特征值的绝对值都应该小于 1。
我的问题是是否还有其他条件?以及如何通过蛮力或使用某些库来创建满足这些条件的 A 矩阵?
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:仅支持一维和二维数据。
完整的代码如下所示 - 原始演练在这里