III-029

{jmpost}: An R package for Bayesian joint TGI-OS models

Francois Mercier1, Craig Gower-Page2, Isaac Gravestock1, Daniel Sabanés-Bové3

1F. Hoffmann-La Roche AG, 2Roche Products Limited, 3RCONIS

Introduction/Objectives: Clinical trials gather repeated measurements on endogenous markers of disease progression and on time to events, such as treatment discontinuation or death, with the former possibly informing the latter. For instance, in oncology solid tumors, changes in tumor burden as measured by the sum of lesion diameters (SLD) can be correlated with overall survival (OS) [1]. Various modeling approaches have been considered to quantify this relationship: two-stage [2], new two-stage [3], and joint models [4]. In recent years, joint TGI-OS models have gained attention, with an implementation in a Bayesian framework enabling the natural handling of uncertainty through posterior samples [5]. Notwithstanding, probabilistic programming languages like BUGS [6] or Stan [7] can have a steep learning curve. Therefore, to facilitate fitting either (1) TGI-only models, (2) two-stage TGI-OS models, or (3) joint TGI-OS models in a Bayesian framework, we created a new R package called {jmpost} [8]. The package is designed to facilitate the implementation and execution of the three aforementioned types of models. It also includes several functions to ease the extraction of model outputs and simulate scenarios using the fitted models. This is the first R package allowing to fit joint models, in a full Bayesian framework, with a nonlinear hierarchical (i.e. mixed-effects) sub-model describing the longitudinal biomarker process. The objective of this work is to introduce {jmpost} to the pharmacometrics community. Methods: {jmpost} is a framework for fitting joint models via R and Stan. The function DataJoint() streamlines the otherwise error-prone input data preparation steps. The function JointModel() specifies the three main components: the longitudinal sub-model, the survival sub-model, and the link function. The package currently implements four types of TGI models: linear, Stein-Fojo, generalized Stein-Fojo, and Claret-Bruno. It also implements four types of time-to-event distributions: exponentialPH, WeibullPH, lognormalPH, and gammaPH distributions. Depending on the TGI model, various association terms can be used. Although defaults have been set, the prior distributions for each parameter can be specified manually. The function sampleStanModel() kicks off the MCMC sampler via {cmdstanr} in the backend. The results can be further manipulated in the Stan ecosystem using packages like {posterior} [9], {loo} [10], {bayesplot} [11], or {tidybayes} [12]. The package also gives full flexibility in defining a custom joint model or sub-model, including the link function. The application of two-stage TGI-OS (Model1) and TGI-OS joint (Model2) models to the OAK clinical trial is presented to showcase the package functionalities. Results: The results are the package itself, available here: https://genentech.github.io/jmpost/main/index.html. The {jmpost} code to fit Model1 and Model2 is provided and commented on. Plots illustrating convergence (trace plots), goodness-of-fit (individual observed vs. predicted values), and predicted survival are presented. Conclusions: {jmpost} is a solution for fitting and using Bayesian TGI-OS joint models within the R environment. By enabling streamlined model development, evaluation, and simulations, the package can aid in quantitative clinical drug development decisions. References: [1] Bruno R, Bottino D, de Alwis DP, Fojo AT, et al. (2020). Progress and opportunities to advance clinical cancer therapeutics using tumor dynamic models. Clinical Cancer Research, 26: 1787-1795. [2] Bruno R, Mercier F, Claret L (2014). Evaluation of tumor size response metrics to predict survival in oncology clinical trials. Clinical Pharmacology and Therapeutics, 95: 386-393. [3] Alvares D, Mercier F (2024). Bridging the gap between two-stage and joint models: The case of tumor growth inhibition and overall survival models. Statistics in Medicine, 43: 3280-3293. [4] Tardivon C, Desmee S, Kerioui M, Bruno R, et al. (2019). Association between tumor size kinetics and survival in patients with urothelial carcinoma treated with atezolizumab: implication for patient follow-up. Clinical Pharmcacology and Therapeutics, 106: 810-820. [5] Kerioui M, Mercier F, Bertrand J, Tardivon C, et al. (2020). Bayesian inference using Hamiltonian Monte-Carlo algorithm for nonlinear joint modeling in the context of cancer immunotherapy. Statistics in Medicine, 39: 4853-4868. [6] BUGS https://www.mrc-bsu.cam.ac.uk/software/bugs-project [7] Stan https://mc-stan.org/ [8] Gower-Page C, Mercier F, Sabanés Bové D, Kazantzidis G, et al. (2025). jmpost: Joint models for predicting overall survival trajectories. R package version 0.0.1, https://genentech.github.io/jmpost/ [9] Bürkner P, Gabry J, Kay M, Vehtari A (2024). posterior: Tools for working with posterior distributions. R package version 1.6.0, https://mc-stan.org/posterior/ [10] Vehtari A, Gabry J, Magnusson M, Yao Y, Bürkner P, Paananen T, Gelman A (2024). loo: Efficient leave-one-out cross-validation and WAIC for Bayesian models. R package version 2.8.0, https://mc-stan.org/loo/ [11] Gabry J, Mahr T (2024). bayesplot: Plotting for Bayesian models. R package version 1.11.0, https://mc-stan.org/bayesplot/ [12] Kay M (2024). tidybayes: Tidy data and geoms for Bayesian models. R package version 3.0.7, http://mjskay.github.io/tidybayes/

Reference: PAGE 33 (2025) Abstr 11570 [www.page-meeting.org/?abstract=11570]

Poster: Methodology - New Modelling Approaches

PDF poster / presentation (click to open)