Alexandre, segue CMR.
#------------------------------------------------------------------
# Definições da sessão.
rm(list=ls())
require(pscl)
require(multcomp)
require(lattice)
require(latticeExtra)
#------------------------------------------------------------------
## Para ter curvas você precisa que tempo seja númerico com mais
## de 3 níveis, caso contrário não faz sentido.
#------------------------------------------------------------------
# Dados artificiais.
da <- expand.grid(trat=gl(2,1), tempo=1:10)
X <- model.matrix(~trat+tempo, da); ncol(X)
betas <- c(0.1,0.1,0.3)
eta <- X%*%betas
y1 <- rpois(da$trat, lambda=exp(eta))
y2 <- rbinom(y1, size=1, prob=0.7)
da$y <- y1*y2
str(da)
xyplot(y~tempo|trat, data=da, jitter.x=TRUE)
#------------------------------------------------------------------
# Ajuste do modelo.
m0 <- zeroinfl(y~trat+tempo|trat, data=da)
summary(m0)
#------------------------------------------------------------------
# Predição do modelo considerando as duas porções.
X <- model.matrix(~trat+tempo, da)
i <- grep("^count\\_", names(coef(m0)))
eta <- X%*%coef(m0)[i]
da$y.pois <- exp(eta)
X <- model.matrix(~trat, da)
i <- grep("^zero\\_", names(coef(m0)))
eta <- X%*%coef(m0)[i]
da$y.zero <- exp(eta)/(1+exp(eta))
xyplot(y~tempo|trat, data=da, jitter.x=TRUE)+
as.layer(xyplot(y.pois~tempo|trat, data=da, type="l"))+
as.layer(xyplot(y.zero~tempo|trat, data=da,
type="l", lty=2, lwd=2))+
layer(panel.abline(h=1, lty=2))
# contínua: média da contagem ~ Poisson.
# tracejada: probabilidade de um zero não Poisson.
# abline: linha no 1, referência.
#------------------------------------------------------------------
À disposição.
Walmes.