David Phillippo
@dmphillippo.bsky.social
Statistician at University of Bristol | Bayesian, meta-analysis and evidence synthesis, #rstats
The marginal_effects() function wraps predict() to create differences or ratios of absolute predictions.
For example:
* risk differences/ratios from an analysis of log odds ratios
* marginal differences in RMST or time-varying marginal hazard ratios from a survival analysis
For example:
* risk differences/ratios from an analysis of log odds ratios
* marginal differences in RMST or time-varying marginal hazard ratios from a survival analysis
June 17, 2025 at 1:28 PM
The marginal_effects() function wraps predict() to create differences or ratios of absolute predictions.
For example:
* risk differences/ratios from an analysis of log odds ratios
* marginal differences in RMST or time-varying marginal hazard ratios from a survival analysis
For example:
* risk differences/ratios from an analysis of log odds ratios
* marginal differences in RMST or time-varying marginal hazard ratios from a survival analysis
This is now resolved: Stan has been patched, and multinma is back on CRAN
https://x.com/dmphillippo/status/1765397920130510965?s=20
https://x.com/dmphillippo/status/1765397920130510965?s=20
June 17, 2025 at 1:28 PM
This is now resolved: Stan has been patched, and multinma is back on CRAN
https://x.com/dmphillippo/status/1765397920130510965?s=20
https://x.com/dmphillippo/status/1765397920130510965?s=20
multinma will be back on CRAN as soon as rstan is patched - or sooner if CRAN respond to my emails requesting reinstatement!
More details on the memory allocation bug here 👉 https://github.com/stan-dev/rstan/issues/1111
More details on the memory allocation bug here 👉 https://github.com/stan-dev/rstan/issues/1111
Misaligned address sanitizer errors with `csr_matrix_times_vector()` - leading to CRAN package failing additional tests · Issue #1111 · stan-dev/rstan
Summary: Sparse matrix arithmetic using csr_matrix_times_vector() seems to trigger sanitizer "misaligned address" errors. Description: My package multinma that fits models using rstan has been flag...
github.com
June 17, 2025 at 1:27 PM
multinma will be back on CRAN as soon as rstan is patched - or sooner if CRAN respond to my emails requesting reinstatement!
More details on the memory allocation bug here 👉 https://github.com/stan-dev/rstan/issues/1111
More details on the memory allocation bug here 👉 https://github.com/stan-dev/rstan/issues/1111
If you need to install, you can use R-universe:
install.packages("multinma", repos = c("https://dmphillippo.r-universe.dev", getOption("repos")))
install.packages("multinma", repos = c("https://dmphillippo.r-universe.dev", getOption("repos")))
June 17, 2025 at 1:27 PM
If you need to install, you can use R-universe:
install.packages("multinma", repos = c("https://dmphillippo.r-universe.dev", getOption("repos")))
install.packages("multinma", repos = c("https://dmphillippo.r-universe.dev", getOption("repos")))
Automatic checking of integration error for ML-NMR:
- Checks sufficient number of integration points within a single model run
- Gives nice warnings if action is required
- Much lower default n_int=64 (previously 1000!) means much faster models!
- Checks sufficient number of integration points within a single model run
- Gives nice warnings if action is required
- Much lower default n_int=64 (previously 1000!) means much faster models!
June 17, 2025 at 1:27 PM
Automatic checking of integration error for ML-NMR:
- Checks sufficient number of integration points within a single model run
- Gives nice warnings if action is required
- Much lower default n_int=64 (previously 1000!) means much faster models!
- Checks sufficient number of integration points within a single model run
- Gives nice warnings if action is required
- Much lower default n_int=64 (previously 1000!) means much faster models!
Accompanied by our latest preprint: https://arxiv.org/abs/2401.12640
https://x.com/dmphillippo/status/1750486767570981227?s=20
https://x.com/dmphillippo/status/1750486767570981227?s=20
Multilevel network meta-regression for general likelihoods: synthesis of individual and aggregate data with applications to survival analysis
Network meta-analysis combines aggregate data (AgD) from multiple randomised controlled trials, assuming that any effect modifiers are balanced across populations. Individual patient data (IPD) meta-regression is the "gold standard" method to relax this assumption, however IPD are frequently only available in a subset of studies. Multilevel network meta-regression (ML-NMR) extends IPD meta-regression to incorporate AgD studies whilst avoiding aggregation bias, but currently requires the aggregate-level likelihood to have a known closed form. Notably, this prevents application to time-to-event outcomes.
We extend ML-NMR to individual-level likelihoods of any form, by integrating the individual-level likelihood function over the AgD covariate distributions to obtain the respective marginal likelihood contributions. We illustrate with two examples of time-to-event outcomes, showing the performance of ML-NMR in a simulated comparison with little loss of precision from a full IPD analysis, and demonstrating flexible modelling of baseline hazards using cubic M-splines with synthetic data on newly diagnosed multiple myeloma.
ML-NMR is a general method for synthesising individual and aggregate level data in networks of all sizes. Extension to general likelihoods, including for survival outcomes, greatly increases the applicability of the method. R and Stan code is provided, and the methods are implemented in the multinma R package.
arxiv.org
June 17, 2025 at 1:27 PM
Accompanied by our latest preprint: https://arxiv.org/abs/2401.12640
https://x.com/dmphillippo/status/1750486767570981227?s=20
https://x.com/dmphillippo/status/1750486767570981227?s=20
More survival analysis:
- Left/right/interval censoring, delayed entry
- Predict and plot survival probabilities, hazards, cumulative hazards, mean survival times, restricted mean survival times, quantiles of the survival time distribution, and median survival times
- Left/right/interval censoring, delayed entry
- Predict and plot survival probabilities, hazards, cumulative hazards, mean survival times, restricted mean survival times, quantiles of the survival time distribution, and median survival times
June 17, 2025 at 1:27 PM
More survival analysis:
- Left/right/interval censoring, delayed entry
- Predict and plot survival probabilities, hazards, cumulative hazards, mean survival times, restricted mean survival times, quantiles of the survival time distribution, and median survival times
- Left/right/interval censoring, delayed entry
- Predict and plot survival probabilities, hazards, cumulative hazards, mean survival times, restricted mean survival times, quantiles of the survival time distribution, and median survival times
More nuggets in this paper:
- A new algorithm for automatic convergence checking for numerical integration 👉 fewer integration samples needed, nice warnings, MUCH faster ML-NMR models
- M-spline baseline hazard model with a novel random walk shrinkage prior 👀
- A new algorithm for automatic convergence checking for numerical integration 👉 fewer integration samples needed, nice warnings, MUCH faster ML-NMR models
- M-spline baseline hazard model with a novel random walk shrinkage prior 👀
June 17, 2025 at 1:27 PM
More nuggets in this paper:
- A new algorithm for automatic convergence checking for numerical integration 👉 fewer integration samples needed, nice warnings, MUCH faster ML-NMR models
- M-spline baseline hazard model with a novel random walk shrinkage prior 👀
- A new algorithm for automatic convergence checking for numerical integration 👉 fewer integration samples needed, nice warnings, MUCH faster ML-NMR models
- M-spline baseline hazard model with a novel random walk shrinkage prior 👀
Slides from this talk are now online too: https://dmphillippo.github.io/ESMARConf2021_multinma/
multinma
An R package for Bayesian network meta-analysis of individual and aggregate data. Presented at ESMARConf 2021.
dmphillippo.github.io
June 17, 2025 at 1:26 PM
Slides from this talk are now online too: https://dmphillippo.github.io/ESMARConf2021_multinma/