Welcome to ClientVPS Mirrors

Miscellaneous examples

Miscellaneous examples

2026-01-14

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)
## 
## Conditional model:
## (Intercept)            x  
##       1.005        2.013  
## 
## Dispersion model:
## (Intercept)            x  
##       1.064        1.962

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

bbmle::AICtab(m1,m2)
##    dAIC   df
## m2    0.0 4 
## m1 1491.6 3

Need a high-speed mirror for your open-source project?
Contact our mirror admin team at info@clientvps.com.

This archive is provided as a free public service to the community.
Proudly supported by infrastructure from VPSPulse , RxServers , BuyNumber , UnitVPS , OffshoreName and secure payment technology by ArionPay.