Please also consider the code below. My attempt to loop through the rows of R_j so that I do not force if() to work on a vector.
> llik <- function(par, R_j, R_m) { + al_j <- par[1] + au_j <- par[2] + sigma_j <- par[3] + b_j <- par[4] + + n=2 + runs=5 + est1=matrix(0,nrow=runs) + start.par=c(al_j=0,au_j=0,sigma_j=0.01,b_j=1) + out1=optim(par=start.par,llik, R_j=R_j, R_m=R_m) + for (i in 1: runs) + { + index_start=2*(i-1)+1 + index_end= 2*i + if(R_j[i]< 0) { + sum(log(1/(2*pi*(sigma_j^2)))-(1/(2*(sigma_j^2))*(R_j+al_j-b_j*R_m))^2) + } else if(R_j[i]>0) { + sum(log(1/(2*pi*(sigma_j^2)))-(1/(2*(sigma_j^2))*(R_j+au_j-b_j*R_m))^2) + } else if(R_j[i]==0) { + sum(log(pnorm(au_j,mean=b_j*R_m,sd=sigma_j)-pnorm(al_j,mean=b_j*R_m,sd=sigma_j))) + } + est1[i] <- out1[index_start:index_end] + } + } > est1 Error: object 'est1' not found Thank you in advance -- View this message in context: http://r.789695.n4.nabble.com/Hint-improve-my-code-tp3641354p3642707.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.