Dear R guru, I am Saikat Sarkar working as a researcher of Economics in Tampere University, Finland. I am trying to estimate some Garch related tests with Bayesian analysis by R programme.
I am not good in R but trying to survive. Anyway I have the coding but not working properly. I have tried to find the problem but failed. I am writing to all R gurus to help me out. Could you please look at the problem and help me if you can. Thanking you saikat Could you please look at the problem below: R message is like below: ------- Error in garch.gjr.d0(param, y, X, Z, iterate = FALSE)$res : $ operator is invalid for atomic vectors plot(Ch.mic,Ch.mic.rep,xlim=c(0,6),ylim=c(0,6)) ----------------------- Coding -------- res<-garch.gjr.d0(a$estimate,y,X,X,iterate=FALSE)$res sig2<-garch.gjr.d0(a$estimate,y,X,X,iterate=FALSE)$sig2 test.mic <- function(param,y,X,Z) { n <- length(y) res <- garch.gjr.d0(param,y,X,Z,iterate=FALSE)$res s2 <- garch.gjr.d0(param,y,X,Z,iterate=FALSE)$sig2 s<-sqrt(s2) r <- res u <- r[-1] r2<- (r[-n]^2*s2[-n])/s[-1] r3<- (r[-n]^3*s2[-n]*s[-n])/s[-1] U <- cbind(r[-n],r2,r3) U <- cbind(1,U) U <- U/matrix(s[-1],nr=nrow(U),nc=ncol(U)) Fstat<-summary(lm(u~U-1))$fstatistic[1] Fstat } sim.gjr <- function(par,y,X=0,Z=0) { n <- length(y) e<-numeric(n) yrep<-numeric(n) yrep[1] <- y[1] n.dummies.mean <- dim(X)[2] if(is.matrix(X)) e[1] <- e[1]-sum(X[1,]*par[9:(8+n.dummies.mean)]) delta <- par[-(1:(8+n.dummies.mean))] s2 <- var(y) for(i in 2:n){ s2 <- par[5]+par[6]*e[i-1]^2+par[7]*ifelse(e[i-1]<0,1,0)*e[i-1]^2+par[8]*s2+sum(X[i,]*delta) e[i] <- rnorm(1,0,sqrt(s2)) yrep[i]<-par[1]+par[2]*yrep[i-1]+par[3]*s2+par[4]*yrep[i-1]*s2+e[i] } if(is.matrix(X)) yrep <- yrep + X%*%par[9:(8+n.dummies.mean)] yrep } yrep <- sim.gjr(a$estimate,y,X,Z) n.test <- 500 Ch.mic <- Ch.mic.rep <- numeric(n.test) for(i in 1:n.test){ simulation <- sample(1:10000,1) par <- sims.matrix[simulation,] Ch.mic[i] <- test.mic(par,y,X,X) yrep <- sim.gjr(par,y,X,X) Ch.mic.rep[i] <- test.mic(par,yrep,X,X) } plot(Ch.mic,Ch.mic.rep,xlim=c(0,6),ylim=c(0,6)) lines(c(0,6),c(0,6)) -- View this message in context: http://www.nabble.com/Need-some-help-in-R-programming-code-tp20634187p20634187.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.