The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Summary of Bayesian Models as HTML Table

Daniel Lüdecke

2024-05-13

## Loading 'brms' package (version 2.21.0). Useful instructions
## can be found by typing help('brms'). A more detailed introduction
## to the package is available through vignette('brms_overview').
## 
## Attaching package: 'brms'
## The following objects are masked from 'package:rstanarm':
## 
##     dirichlet, exponential, get_y, lasso, ngrps
## The following object is masked from 'package:stats':
## 
##     ar

This vignette shows examples for using tab_model() to create HTML tables for mixed models. Basically, tab_model() behaves in a very similar way for mixed models as for other, simple regression models, as shown in this vignette.

# load required packages
library(sjPlot)
library(brms)

# sample models
zinb <- read.csv("http://stats.idre.ucla.edu/stat/data/fish.csv")
set.seed(123)
m1 <- brm(bf(
    count ~ persons + child + camper + (1 | persons),
    zi ~ child + camper + (1 | persons)
  ),
  data = zinb,
  family = zero_inflated_poisson()
)

data(epilepsy)
set.seed(123)
epilepsy$visit <- as.numeric(epilepsy$visit)
epilepsy$Base2 <- sample(epilepsy$Base, nrow(epilepsy), replace = TRUE)
f1 <- bf(Base ~ zAge + count + (1 |ID| patient))
f2 <- bf(Base2 ~ zAge + Trt + (1 |ID| patient))
m2 <- brm(f1 + f2 + set_rescor(FALSE), data = epilepsy)

Bayesian models summaries as HTML table

For Bayesian regression models, some of the differences to the table output from simple models or mixed models of tab_models() are the use of Highest Density Intervals instead of confidence intervals, the Bayes-R-squared values, and a different “point estimate” (which is, by default, the median from the posterior draws).

tab_model(m1)
  count
Predictors Incidence Rate Ratios CI (95%)
Count Model
Intercept 0.42 0.22 – 0.88
persons 2.32 1.86 – 2.93
child 0.32 0.26 – 0.38
camper 2.08 1.73 – 2.53
Zero-Inflated Model
Intercept 0.52 0.11 – 2.21
child 6.44 3.46 – 12.95
camper 0.43 0.21 – 0.87
Random Effects
σ2 5.63
τ00 33.53
ICC 0.14
N persons 4
Observations 250
Marginal R2 / Conditional R2 0.186 / 0.248

Multivariate response models

For multivariate response models, like mediator-analysis-models, it is recommended to print just one model in the table, as each regression is displayed as own “model” in the output.

tab_model(m2)
  Base Base2
Predictors Estimates CI (95%) Estimates CI (95%)
Intercept 28.61 11.35 – 34.20 26.61 11.24 – 29.03
z Age -4.85 -5.42 – -1.76 1.21 -0.31 – 2.15
count 0.00 -0.00 – 0.00
Trt: Trt 1 -0.32 -4.36 – 1.43
Random Effects
σ2 54.64
τ00 4.04
ICC 0.96
N patient 59
Observations 236

Show two Credible Interval-column

To show a second CI-column, use show.ci50 = TRUE.

tab_model(m2, show.ci50 = TRUE)
  Base Base2
Predictors Estimates CI (50%) CI (95%) Estimates CI (50%) CI (95%)
Intercept 28.61 24.07 – 30.23 11.35 – 34.20 26.61 21.53 – 28.45 11.24 – 29.03
z Age -4.85 -5.17 – -3.89 -5.42 – -1.76 1.21 0.74 – 1.54 -0.31 – 2.15
count 0.00 -0.00 – 0.00 -0.00 – 0.00
Trt: Trt 1 -0.32 -1.91 – 0.69 -4.36 – 1.43
Random Effects
σ2 55.75
τ00 4.52
ICC 0.96
N patient 59
Observations 236

Mixing multivariate and univariate response models

When both multivariate and univariate response models are displayed in one table, a column Response is added for the multivariate response model, to indicate the different outcomes.

tab_model(m1, m2)
  count Base,Base 2
Predictors Incidence Rate Ratios CI (95%) Estimates CI (95%) Response
Intercept 0.42 0.22 – 0.88 28.61 11.35 – 34.20 Base
Intercept 0.42 0.22 – 0.88 26.61 11.24 – 29.03 Base2
persons 2.32 1.86 – 2.93
child 0.32 0.26 – 0.38
camper 2.08 1.73 – 2.53
z Age -4.85 -5.42 – -1.76 Base
count 0.00 -0.00 – 0.00 Base
z Age 1.21 -0.31 – 2.15 Base2
Trt: Trt 1 -0.32 -4.36 – 1.43 Base2
Zero-Inflated Model
Intercept 0.52 0.11 – 2.21
child 6.44 3.46 – 12.95
camper 0.43 0.21 – 0.87
Random Effects
σ2 5.63 56.36
τ00 33.59 4.36
ICC 0.14 0.96
N 4 persons 59 patient
Observations 250 236
Marginal R2 / Conditional R2 0.186 / 0.248 NA

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.