
Olá amigos, Estou criando uma rotina (ainda em teste) para usar nos meus dados originais...Será que poderiam me ajudar pq desse erro: teste<-c(0,2,0,1,0,1,3,0,0,0,4) x <-c(0,2,1,5,3,1,0,1,5,7,2) info1<-c() info2<-c() dzip1= function(y,x,p,beta){ for (i in 1:length(y)) { beta0 = beta[1] beta1 = beta[2] lambda=exp(beta0+beta1*x[i]) if (y[i]==0) {info1[i]<-p+((1-p)*exp(-lambda))} if (y[i]>0) {info2[i]<-((1-p)*exp(-lambda)*(lambda^y[i]))/factorial(y[i])} } return(na.exclude(c(info1,info2))) } dzip1(teste,x,0.3,c(0.5,2.5)) MV1 <- function(p,beta) { D = dzip1(teste,x,p,beta) -sum(log(D)) } library(stats4) mle(MV1, start = list(p=0.5, beta=c(0.5,1)),method="L-BFGS-B")
mle(MV1, start=list(p=0.5, beta=c(0.5,1)),method="L-BFGS-B") Erro em optim(start, f, method = method, hessian = TRUE, ...) : objeto (list) não é coercível para tipo 'double'
O mesmo programa funcionou mto bem, sem usar a função de ligação. O problema começou qdo coloquei os betas. Como não conheço mto a função mle, talvez vcs possam me ajudar.... Abçs, -- ------------------------------------------------------------------------------------------ Vanessa Felix do Nascimento Sergio Graduada em Estatística - ICE/UFJF Mestranda em Saúde Coletiva - IMS/UERJ Assistente de pesquisa I - Instituto de Pesquisa Econômica Aplicada – IPEA (32) 9142-8428 (21) 97557-3956 -------------------------------------------------------------------------------------------