MyNixOS website logo
Description

Design-Robust Meta-Analysis via Variance-Function Models.

Implements Design-Robust Meta-Analysis (DR-Meta), a variance-function random-effects framework in which between-study heterogeneity is modelled as a function of a study-level design robustness index, allowing heterogeneity to depend systematically on study quality or design strength rather than being treated as a single nuisance parameter. The package provides profiled restricted maximum likelihood (REML) estimation of the overall effect and variance-function parameters, study-specific weights, heterogeneity diagnostics (tau-squared, I-squared), influence and leave-one-out analysis, and graphical tools including forest plots and influence plots. The DR-Meta framework nests classical fixed-effects and standard random-effects meta-analysis as special cases, making it a strict generalisation of existing approaches.

drmeta

R-CMD-check License: MIT

Design-Robust Meta-Analysis: A Variance-Function Framework for Causal Credibility

drmeta implements the DR-Meta model of Hait (2026) — a variance-function random-effects framework that embeds causal design robustness directly into the heterogeneity structure of meta-analysis.

The core idea

Standard random-effects meta-analysis absorbs design-quality differences into a single constant $\tau^2$. This allows large-sample but weakly-identified studies to dominate pooled estimates. DR-Meta instead models between-study variance as a monotone-decreasing function of a design robustness index $\text{DR}_i \in [0,1]$:

$$y_i \sim N!\bigl(\mu,; \underbrace{v_i}_{\text{sampling}} + \underbrace{\tau^2(\text{DR}i;,\psi)}{\text{design-dependent}}\bigr)$$

Study weights $w_i = 1/\sigma_i^2$ therefore automatically down-weight weaker designs — not via ad-hoc quality multipliers, but through a coherent likelihood-based mechanism.

Special cases

ConditionDR-Meta reduces to
$\text{DR}_i = c$ (constant)Classical random-effects (Proposition 1)
$\tau_0^2 = 0$Fixed-effects meta-analysis (Proposition 2)

Installation

# Install the development version from GitHub:
devtools::install_github("causalfragility-lab/drmeta")

Quick start

library(drmeta)

# 1. Build the DR index
dr <- dr_from_design(c("RCT", "DiD", "OLS", "IV", "matching"))

# or from continuous sub-scores:
dr <- dr_score(
  balance = c(0.9, 0.6, 0.3, 0.8, 0.5),
  overlap  = c(0.85, 0.7, 0.4, 0.75, 0.6),
  design   = dr_from_design(c("RCT", "DiD", "OLS", "IV", "matching"))
)

# 2. Fit DR-Meta
fit <- drmeta(yi = my_effects, vi = my_variances, dr = dr)
summary(fit)

# 3. Visualise
dr_forest(fit)       # forest plot ordered by DR
dr_plot(fit)         # weights vs DR (Lemma 3)
dr_plot_vfun(fit)    # estimated variance function

# 4. Diagnostics
dr_heterogeneity(fit)  # Q, I², Proposition 6 decomposition
dr_loo(fit)            # leave-one-out influence

# 5. Publication bias
dr_pub_bias(fit)  # PET / PEESE / Egger with DR-Meta weights
dr_funnel(fit)    # funnel plot

Key functions

FunctionDescription
drmeta()Fit DR-Meta via profiled REML (core estimation)
dr_score()Build DR index from continuous sub-scores
dr_from_design()Build DR index from design type labels
dr_weights()Compute and inspect DR-Meta weights
dr_variance()Evaluate the fitted variance function
dr_heterogeneity()Cochran's Q, I², H², Proposition 6 decomposition
dr_loo()Leave-one-out influence diagnostics
dr_forest()Forest plot ordered by DR
dr_plot()Weight vs DR diagnostic plot
dr_plot_vfun()Variance function curve
dr_pub_bias()PET / PEESE / Egger publication bias
dr_funnel()Funnel plot with DR-coloured points
normalize_01()Rescale any vector to [0,1]

Connection to the literature

DR-Meta is a special case of the meta-analytic location-scale model (Viechtbauer & Lopez-Lopez, 2022) in which the scale component is explicitly motivated by causal design theory. It is complementary to bias-model frameworks (Turner et al., 2009; Rhodes et al., 2015; Mathur & VanderWeele, 2020), which adjust the mean for confounding while DR-Meta adjusts the variance.

References

  • Hait, S. (2026). Design-Robust Meta-Analysis: A Variance-Function Framework for Causal Credibility. Unpublished manuscript.
  • Viechtbauer, W., & Lopez-Lopez, J. A. (2022). Research Synthesis Methods, 13, 697–715. https://doi.org/10.1002/jrsm.1562
  • Turner, R. M., et al. (2009). JRSS-A, 172, 21–47.
  • Rhodes, K. M., et al. (2015). JRSS-A, 178, 641–666.
  • Mathur, M. B., & VanderWeele, T. J. (2020). JASA, 115, 1190–1204.
Metadata

Version

0.1.0

License

Unknown

Platforms (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows