Tarjinder Sahota (1)
(1) Clinical Pharmacology Modelling and Simulation, GSK, London, UK
Objectives: Have you ever tried to continue some model development work (a colleague’s or even your own) but struggled to remember what was previously done and in which order? Have you ever wished you could repeat your entire model building at the push of a button e.g. because the source data has been updated, or because of a mistake carried forward? These are the problems that the “alpha” release of NMproject (v0.3.2) sought to address. It was a prototype R package produced to demonstrate the concept of industrialising pharmacometric analyses. We previously reported how AstraZeneca employees voluntarily used NMproject to script hundreds of NONMEM analyses [1]. Key benefits which led to high user retention included 1) script-based model development logs/notebooks being used as the primary location to record modeller thoughts/notes/decisions alongside reproducible, re-executable code, 2) a code library to encourage standardisation and sharing of best coding practices and 3) compatibility with PsN and Pirana.
The “alpha” release however suffered from some limitations: model development workflows only covered NONMEM execution and post processing, and did not include model file creation/editing which was often an entirely manual process. It also could not scale easily to complex trial design workflows. To address these issues and bring NMproject from a prototype to a production ready system there has been a need to re-engineer the core object and interface of NMproject.
Methods: The package NMproject is available at:
website: https://tsahota.github.io/NMproject/
source code: https://github.com/tsahota/NMproject
Instructions to install and configure are available on the package vignette on the website. The easiest way to learn NMproject is to follow the demo and/or read the vignette. The new interface is not backwards compatible with the “alpha” interface.
Results: The following functionality is covered in the demo:
- (New)End-to-end model development workflows. Import code library templates (via a shiny interface) and get to a working NONMEM model quickly and entirely within R.
- (New)NMproject is the only NONMEM interface (known to the author) that tracks manual edits to NONMEM code in the form of reusable patches or “snippets”.
- (New)R Functions to automatically fill $INPUT, $DATA, $THETA,… elements as well as various other routine model file manipulations
- (New)NMproject is the only R package (known to the author) with a vectorized model object allowing groups of runs to be operated on using the same syntax as single runs.
- (New)Custom NMproject implementations of bootstrap, cross-validation, PPCs, stepwise covariate selection, and simulation-re-estimation. All controllable on granular level using vectorized model objects.
- Diagnostics and VPCs using your favourite packages (e.g., xpose, vpc, …)
- (New)RStudio addins to streamline user experience.
- Monitor runs via shiny app including interactive OFV vs iteration plots for convergence assessment.
- Optional customizable analysis directory structure for consistent code organisation.
NMproject has been configured to work on a wide variety of infrastructures in multiple companies, from standalone windows installations to large unix based clusters. It has been used to conduct exploratory analyses and submission work. Model based power calculations were performed with NMproject in collaboration with biostatistics to demonstrate feasibility, design (sample size and dose), and plan interim decision points of a recently published oncology dose finding study using pharmacometric endpoints [2, 3].
Conclusions: The new syntax brings NMproject from experimental prototype to production ready. End-to-end workflows build upon the efficiency gains of the “alpha” version of NMproject to drastically reduce the time to update/repeat prior analyses, enable the repurposing of prior analyses to new problems, and enable pre-programming of complex workflows before data becomes available so that when it becomes available we can react to decision points in stats-like timelines.
References:
[1] Sahota, T., et al. NMproject: Tidy, Reproducible, Script Based NONMEM projects in RStudio. A Step Toward Pharmacometric Industrialisation. PAGE 2018 [https://www.page-meeting.org/?abstract=8650]
[2] Sahota, T., et al. Using longitudinal tumor size (TS) modeling to power phase 1b oncology dose finding trials, ACoP11, ISSN:2688-3953, 2020, Vol 2
[3] Sequist, L, V., et al. Osimertinib plus savolitinib in patients with EGFR mutation-positive, MET-amplified, non-small-cell lung cancer after progression on EGFR tyrosine kinase inhibitors: interim results from a multicentre, open-label, phase 1b study. Lancet Oncol 2020, 21(3):373-386.
Reference: PAGE 29 (2021) Abstr 9802 [www.page-meeting.org/?abstract=9802]
Poster: Software Demonstration