data(databu)
## fit BZIP and BP models
m00 <- svabu(Y ~ x1 + x5 | x2 + x5, databu[1:200,])
## print method
m00
## summary: CMLE
summary(m00)
## coef
coef(m00)
coef(m00, model="sta") ## state (abundance)
coef(m00, model="det") ## detection
coef(m00, model="zif") ## zero inflation (this is part of the 'true state'!)
## Not run:
# ## Diagnostics and model comparison
#
# m01 <- svabu(Y ~ x1 + x5 | x2 + x5, databu[1:200,], zeroinfl=FALSE)
# ## compare estimates (note, zero inflation is on the logit scale!)
# cbind(truth=c(2,-0.8,0.5, 1,2,-0.5, plogis(0.3)),
# "B-ZIP"=coef(m00), "B-P"=c(coef(m01), NA))
#
# ## fitted
# plot(fitted(m00), fitted(m01))
# abline(0,1)
#
# ## compare models
# AIC(m00, m01)
# BIC(m00, m01)
# logLik(m00)
# logLik(m01)
# ## diagnostic plot
# plot(m00)
# plot(m01)
#
# ## Bootstrap
#
# ## non parametric bootstrap
# ## - initial values are the estimates
# m02 <- bootstrap(m00, B=25)
# attr(m02, "bootstrap")
# extractBOOT(m02)
# summary(m02)
# summary(m02, type="cmle")
# summary(m02, type="boot")
# ## vcov
# vcov(m02, type="cmle")
# vcov(m02, type="boot")
# vcov(m02, model="sta")
# vcov(m02, model="det")
# ## confint
# confint(m02, type="cmle") ## Wald-type
# confint(m02, type="boot") ## quantile based
# ## parametric bootstrap
# simulate(m00, 5)
# m03 <- bootstrap(m00, B=5, type="param")
# extractBOOT(m03)
# summary(m03)
#
# ## Model selection
#
# m04 <- svabu(Y ~ x1 + x5 | x2 + x5 + x3, databu[1:200,], phi.boot=0)
# m05 <- drop1(m04, model="det")
# m05
# m06 <- svabu.step(m04, model="det")
# summary(m06)
# m07 <- update(m04, . ~ . | . - x3)
# m07
#
# ## Controls
#
# m00$control
# getOption("detect.optim.control")
# getOption("detect.optim.method")
# options("detect.optim.method"="BFGS")
# m08 <- svabu(Y ~ x1 + x5 | x2 + x5, databu[1:100,])
# m08$control ## but original optim method is retained during model selection and bootstrap
# ## fitted models can be used to provide initial values
# options("detect.optim.method"="Nelder-Mead")
# m09 <- svabu(Y ~ x1 + x5 | x2 + x5, databu[1:100,], inits=coef(m08))
#
# ## Ovenbirds dataset
#
# data(oven)
# ovenc <- oven
# ovenc[, c(4:8,10:11)][] <- lapply(ovenc[, c(4:8,10:11)], scale)
# moven <- svabu(count ~ pforest | observ + pforest + julian + timeday, ovenc)
# summary(moven)
# drop1(moven, model="det")
# moven2 <- update(moven, . ~ . | . - timeday)
# summary(moven2)
# moven3 <- update(moven2, . ~ . | ., zeroinfl=FALSE)
# summary(moven3)
# BIC(moven, moven2, moven3)
# ## End(Not run)
Run the code above in your browser using DataLab