使用 vars 包,我试图复制一个标准的 4 变量 SVAR 模型,其中包含季度数据和 61 个观察值。矩阵 A 具有递归结构,并且对矩阵 B 没有任何限制(仅识别模型)。原始模型在 Stata 中使用相同的数据集进行估计。
我在简化形式的 VAR 估计中得到相同(正确)的结果,但是一旦我到达 SVAR 部分,我会反复收到此消息:
Error in solve.default(infgamma):
system is computationally singular: reciprocal condition number = 1.90759e-16
可能我做错了什么,但我不知道它是什么。我将不胜感激任何帮助。
这是我的代码:
Model1 <- VAR(data, p=4, type="const")
summary(Model1)
AMATRIX = matrix(c(NA, 0, 0, 0,
NA, NA, 0, 0,
NA, NA, NA, 0,
NA, NA, NA, NA), nrow=4,ncol=4, byrow = T)
Model2 <- SVAR(x=Model1, Amat = AMATRIX)
summary(Model2)
PS:SVAR 函数使用 Amisano & Giannini (1997) 的默认评分算法,这是我想使用的估计方法。