R 未能用结果填充矩阵
我想基于滚动数据集[1:2567]、[2:2568]…使用GMM估计参数“r”。。。等等最后,将结果填入矩阵中。 我已经对核心代码进行了如下测试,得到了有效的答案R 未能用结果填充矩阵,r,loops,matrix,scalar,gmm,R,Loops,Matrix,Scalar,Gmm,我想基于滚动数据集[1:2567]、[2:2568]…使用GMM估计参数“r”。。。等等最后,将结果填入矩阵中。 我已经对核心代码进行了如下测试,得到了有效的答案 x<-Source[1 : 2567,"AAA"] z<-as.matrix(x) e<-function(r,x){ + m<-exp(-x/r)-1 + return(m) + } coef(gmm(e,z,t0=1,metho
x<-Source[1 : 2567,"AAA"]
z<-as.matrix(x)
e<-function(r,x){
+ m<-exp(-x/r)-1
+ return(m)
+ }
coef(gmm(e,z,t0=1,method="BFGS",control=1e-12))
Theta[1]
1.096466
x<-Source[2 : 2568,"AAA"]
z<-as.matrix(x)
e<-function(r,x){
+ m<-exp(-x/r)-1
+ return(m)
+ }
coef(gmm(e,z,t0=1,method="BFGS",control=1e-12))
Theta[1]
1.102329
x您的错误来自错误的语法。我添加了变量j,因为您的示例不可复制<代码>x
n <- 2
result <- matrix(rep(0, n), nrow = n)
for(i in c(1 :n)){
+ x<-Source[i : i + 2566,"AAA"]
+ z<-as.matrix(x)
+ e<-function(r,x){
+ m<-exp(-x/r)-1
+ return(m)
+ }
+
+ result[i,1] <- coef(gmm(e,z,t0=1,method="BFGS",control=1e-12))
+ }
Source <- read.csv(file="source_data.csv", header=TRUE, sep=",") #read csv
n <- 2
result <- matrix(rep(0, n), nrow = n)
for(i in c(1:n)){
j <- i + 2566
x<-Source[i:j,"AAA"]
z<-as.matrix(x)
e<-function(r,x){
m<-exp(-x/r)-1
return(m)
}
result[i,1] <- coef(gmm(e,z,t0=1,method="BFGS",control=1e-12))
}
result
[,1]
[1,] 1.096466
[2,] 1.102329