bbmle
패키지에 mle2
명령을 사용하려고합니다. Bolker는 "bbmle
패키지로 최대 가능성 추정 및 분석"의 p2를보고 있습니다. 어떻게 든 올바른 시작 값을 입력하지 못했습니다. 여기에 재현 코드입니다 :R : mle2의 프로필 신뢰 구간
l.lik.probit <-function(par, ivs, dv){
Y <- as.matrix(dv)
X <- as.matrix(ivs)
K <-ncol(X)
b <- as.matrix(par[1:K])
phi <- pnorm(X %*% b)
sum(Y * log(phi) + (1 - Y) * log(1 - phi))
}
n=200
set.seed(1000)
x1 <- rnorm(n)
x2 <- rnorm(n)
x3 <- rnorm(n)
x4 <- rnorm(n)
latentz<- 1 + 2.0 * x1 + 3.0 * x2 + 5.0 * x3 + 8.0 * x4 + rnorm(n,0,5)
y <- latentz
y[latentz < 1] <- 0
y[latentz >=1] <- 1
x <- cbind(1,x1,x2,x3,x4)
values.start <-c(1,1,1,1,1)
foo2<-mle2(l.lik.probit, start=list(dv=0,ivs=values.start),method="BFGS",optimizer="optim", data=list(Y=y,X=x))
는 그리고이 오류가 나는 얻을 수있다 :
Error in mle2(l.lik.probit, start = list(Y = 0, X = values.start), method = "BFGS", :
some named arguments in 'start' are not arguments to the specified log-likelihood function
어떤 생각을 왜? 당신의 도움을 주셔서 감사합니다!
'values.start'가 지정되지 않았습니다. 당신은 그것을 정의해야합니다. 'foo2 << -'에 오타가 있습니다. –
빠른 답변을 보내 주셔서 감사합니다. 내가 변경 한 내용 (시작 값은 values.start <-c (1,1,1,1,1))이지만 여전히 동일한 오류 메시지가 표시됩니다. mle2 명령과 내가 지정한 함수 사이에 약간의 부조화가 있다고 생각되지만, 나는 내 인생을 위해 그것을 이해할 수 없다! – EOM
[probit regression] (http://www.ats.ucla.edu/stat/R/dae/probit.htm)을 구현하고 있습니까? –