params <- list(EVAL = FALSE) ## ----glmmTMB, load_lib,echo=FALSE--------------------------------------------- library(glmmTMB) knitr::opts_chunk$set(eval = if (isTRUE(exists("params"))) params$EVAL else FALSE) ## ----eval = FALSE------------------------------------------------------------- # #' @rdname nbinom2 # #' @export # zo_truncated_poisson <- function(link="log") { # r <- list(family="zo_truncated_poisson", # variance=function(lambda) { # stop("haven't implemented variance function") # ## should figure this out ... # ## (lambda+lambda^2)/(1-exp(-lambda)) - lambda^2/((1-exp(-lambda))^2) # }) # return(make_family(r,link)) # } ## ----eval = FALSE------------------------------------------------------------- # .noDispersionFamilies <- c("binomial", "poisson", "truncated_poisson", # "zo_truncated_poisson") ## ----testzo, eval = FALSE----------------------------------------------------- # library(glmmTMB) # set.seed(101) # dd <- data.frame(y = rpois(500, exp(1))) # table(dd$y) # ## 0 1 2 3 4 5 6 7 8 9 # ## 34 91 117 116 68 45 17 7 3 2 # dd <- dd[dd$y>1,,drop=FALSE] # table(dd$y) # ## 2 3 4 5 6 7 8 9 # ## 117 116 68 45 17 7 3 2 # glmmTMB(y ~ 1, family = "zo_truncated_poisson", data = dd)