Hello, I am new to R and I am trying to estimate a discrete model with three choices. I am stuck at a point and cannot find a solution.
I have probability functions for occurrence of these choices, and then I build the likelihood functions associated to these choices and finally I build the general log-likelihood function. There are four parameters in the model, three of them are associated to three discrete choices I mentioned, and one of them is for a binary variable in the data (t). There are also latent variables but I didn't put them in this question because if I figure out how to do this, I will be able to add them as well. I am not familiar with the syntax I have to write in the likelihood functions, so I really doubt that they are true. Below I simplify the problem and provide the code I've written: # Probabilities for discrete choices for a=3, a=2 and a=1 respectively P3 <- function(b3,b,t) { P <- exp(b3+b*(t==1))/(1-exp(b3+b*(t==1))) return(P) } P2 <- function(b2,b,t) { P <- exp(b2+b*(t==1))/(1-exp(b2+b*(t==1))) return(P) } P1 <- function(b1,b,t) { P <- exp(b1+b*(t==1))/(1-exp(b1+b*(t==1))) return(P) } # Likelihood functions for discrete choices for a=3, a=2 and a=1 respectively L3 <- function(b1,b2,b3,b,t) { P11 <- P1(b1,b,t) P22 <- P2(b2,b,t) P33 <- P3(b3,b,t) L3l <- (P11=1)*(P22=1)*(P33=1) return(L3l) } L2 <- function(b1,b2,b3,b,t) { P11 <- P1(b1,b,t) P22 <- P2(b2,b,t) P33 <- P3(b3,b,t) L2l <- (P11=1)*(P22=1)*(P33=0) return(L2l) } L1 <- function(b1,b2,b,t) { P11 <- P1(b1,b,t) P22 <- P2(b2,b,t) L1l <- (P11=1)*(P22=0) return(L1l) } # Log-likelihood function llfn <- function(par,a,t) { b1 <- par[1] b2 <- par[2] b3 <- par[3] b <- par[4] lL1 <- log(L1(b1,b2,b,t)) lL2 <- log(L2(b1,b2,b3,b,t)) lL3 <- log(L3(b1,b2,b3,b,t)) llfn <- (a==1)*lL1+(a==2)*lL2+(a==3)*lL3 } est <- optim(par,llfn, method = c("CG"),control=list(trace=2,maxit=2000), hessian=TRUE) And when I run this code I get "cannot coerce type 'closure' to vector of type 'double'" error. I will really appreciate your help. Thanks, -- View this message in context: http://r.789695.n4.nabble.com/Discrete-choice-model-maximum-likelihood-estimation-tp4629877.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.