library(glmmTMB)

Beta dispersion model

set.seed(1001)
N <- 1000
mean_pars <- c(1,2)
disp_pars <- c(1,2)
dd <- data.frame(x=rnorm(N))
m <- plogis(mean_pars[1]+mean_pars[2]*dd$x)
d <- exp(disp_pars[1]+disp_pars[2]*dd$x)
dd$y <- rbeta(N,shape1=m*d,shape2=(1-m)*d)

Fit models:

## location only
m1 <- glmmTMB(y~x,
              family=beta_family(),
              data=dd)
## add model for dispersion
m2 <- update(m1,dispformula=~x)

Fixed effects look close to theoretical values:

fixef(m2)

AIC is insanely much better for the model with dispersion varying:

bbmle::AICtab(m1,m2)


Try the glmmTMB package in your browser

Any scripts or data that you put into this service are public.

glmmTMB documentation built on Oct. 7, 2023, 5:07 p.m.