Tri-Hurdle Metaanalysis Model

Analysis Report

Author

Jessica Helmer

Published

June 20, 2026

Setup

Code
library(tidyverse)
library(patchwork)
library(targets)
library(gt)
Code
tar_load(c(dat, testdat, predictors, rhats, tracerank_plts, trace_plts,
           ppc_plt, ppc_plt_g), 
         store = here::here("_targets"))

Results

Model Diagnostics

Code
top_nine <- rhats |>
  head(9)

top_nine |>
  gt() |>
  fmt_number() |>
  tab_style(cell_text(weight = "bold"),
            cells_column_labels()) |>
  tab_footnote("Rhat values sorted highest to lowest." |>
                 str_wrap(10) |> html()) |>
  tab_options(table.width = px(180))
param rhat
r_7_eta3_1[7172] 1.01
r_1_1[9002] 1.01
z_1a[1,9002] 1.01
z_7[1,7172] 1.01
log_lik[29356] 1.01
r_7_eta3_1[10651] 1.01
z_7[1,10651] 1.01
log_lik[17726] 1.01
log_lik[23701] 1.01
Rhat values sorted highest to lowest.
Code
trace_plts

Code
tracerank_plts

Displayed below is a plot of the distribution of WOA values as per the data and as per the model predictions.

Code
ppc_plt

And the same distributions, but broken up by study.

Code
ppc_plt_g

Distributions of Intercepts

Code
c(tar_read(itemlvl_plt_file, store = here::here("_targets")),
  tar_read(personlvl_plt_file, store = here::here("_targets")),
  tar_read(studylvl_plt_file, store = here::here("_targets"))) |>
  here::here() |>
  knitr::include_graphics(error = F)

Predictors

Posterior Predictive Distributions of Predictors

Code
tar_read(patched_pred_plt_files, store = here::here("_targets")) |>
  unlist() |>
  normalizePath(winslash = "/") |>
  knitr::include_graphics(error = F)