Introduction
Many clinical and psychological interventions produce effects that evolve over time. When studies report outcomes at multiple follow-up points, a longitudinal meta-analysis (LMA) models the trajectory of the treatment effect across time, rather than selecting a single time-point for pooling.
LMA answers questions that univariate meta-analysis cannot:
- Does the treatment effect grow, decay, or plateau over time?
- At which time-point is the effect largest?
- Is there evidence that long-term and short-term effects differ?
Model specification
Let be the effect estimate from study at time , with known standard error . The longitudinal model has two levels.
Level 1 (within-study):
Level 2 (between-study trajectory):
where:
- is the population-level trajectory (parametric or non-parametric)
- is a study-level random intercept
- is a study-by-time random deviation
Trajectory specifications
Linear trajectory
Appropriate when the effect changes at a roughly constant rate. is the effect at (baseline) and is the rate of change per unit time.
Exponential decay
Appropriate for effects that peak near treatment initiation and decay toward a long-run asymptote . controls the decay rate.
Piecewise linear (spline)
where are knot positions and . Flexible enough to capture non-monotone trajectories.
Priors
Trajectory-specific parameters (e.g., , ) require domain-informed priors. Exponential decay requires ; a prior is a reasonable weakly informative choice.
Fitting longitudinal models
fit_lma <- bayesma(
data,
model_type = "random_effect",
time_col = "weeks",
trajectory = "linear"
)The time_col argument names the column containing the time variable. trajectory accepts "linear", "exponential", or "spline".
Estimands
bayesma() returns the posterior trajectory evaluated on a user-specified grid via bayesma_marginal(). This can be used to:
- plot the trajectory with pointwise credible bands
- identify the time of maximum effect
- compare trajectories across subgroups (via
meta_reg())
Alignment across studies
Studies rarely measure outcomes at identical time-points. The model handles this naturally — each study contributes triplets, and the trajectory is estimated across all studies simultaneously. No imputation for missing time-points is needed.
Limitations
- Longitudinal models require that time is measured comparably across studies (same origin, same units).
- The trajectory form must be specified. Model comparison between trajectory specifications is supported via
compare_models(). - With and heterogeneous time-points, both and are poorly identified.
