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
-------------------------------------------------------------------------------------------