在估计具有多个自变量的 GMM 时,代码为
do_gmm <- function(X)
{
DE <- X[, "DE"]
rmrf_local <- X[, "rmrf_local"]
SMB_L <- X[,"SMB_L"]
h <- cbind(as.numeric(DE,rmrf_local,SMB_L))
coef(gmm(DE ~ rmrf_local,~SMB_L, x = h))
}
r <- rollapplyr(ALLX0, 24, do_gmm, by.column = FALSE, fill = NA)
代码有效,但在输出中,我只有第一个变量,如下所示
> r
(Intercept) rmrf_local
[1,] 0.21 -0.32
[2,] 0.32 -0.04
[3,] -0.43 -0.03
[4,] -0.42 -0.23
我需要一些东西
> r
(Intercept) rmrf_local SMB_L
[1,] 0.21 -0.32 0.34
[2,] 0.32 -0.04 0.01
[3,] -0.43 -0.03 0.21
[4,] -0.42 -0.23 0.12
我不知道为什么,输出中缺少第二个变量。请问有什么想法吗?