( New)RStudio 'Addins' to streamline user experience. All controllable on granular level using vectorised model objects.ĭiagnostics and VPCs using your favourite packages (e.g., 'xpose', 'vpc', …) ( New)Custom NMproject implementations of bootstrap, cross-validation, PPCs, stepwise covariate selection, and simulation-re-estimation. ( New)NMproject is the only R package (known to the author) with a vectorised model object allowing groups of models to be operated on using the same syntax as a single model.
( New)Import code library templates (via a shiny interface) and get to a working NONMEM model quickly and entirely within R. ( New)R Functions to automatically fill $INPUT, $DATA, $THETA,… elements as well as various other routine model file manipulations
The new interface is the only NONMEM interface (known to the author) that can record and replay manual edits to files (seemlessly) for 100% flexibility without breaking the end-to-end reproducibility. ( New)End-to-end model development workflows/notebooks for people who want 100% control over their model files. A completely redesigned syntax that address several shortcoming of the previous syntax and expands functionality.
Installable in a wide variety of infrastructures in multiple organisations, from standalone windows installations to large unix based clusters Script-based model development workflows being used as the primary location to record modeller thoughts/notes/decisions alongside reproducible, re-executable codeĪ code library to encourage standardisation and sharing of best coding practices It was a prototype R package produced to demonstrate the concept of industrialising pharmacometric analyses via script based model development. NMproject's initial outing (the "alpha" interface) was developed in AZ and internally had 83% voluntary user retention ("user" = someone with 5+ separate model development workflows) across 100s of analyses in all TAs. In tsahota/NMproject: Script Based 'NONMEM' Model Development Why NMproject? History is_nm: Test if object is an nm coercible object.insert_dollar: Insert a new subroutine into control file_contents.input_data: Read input dataset of an nm object.info_scripts: List information about scripts.import: Import staged files into project.ignore: Get/set ignore statement from control file contents.gsub_ctl: Pattern replacement for control file contents.grapes-f-greater-than-grapes: Function pipe for nm objects.git_cmd_available: Check if git is available on command line.gen_sim_path: Generate paths for simulation runs.find_nonmem: Find location of NONMEM installation.exclude_rows: Exclude rows of NONMEM dataset.dollar_subroutine: Get/set $SUBROUTINE values in control file.delete_dollar: Delete a NONMEM subroutine from control file contents.ctl_path: Get and set path to NONMEM control file.ctl_list: Constructor/converter to ctl_list.ctl_contents: Get/set control file contents.ctl_character: Constructor/converter to ctl_character.cov_forest_plot: Plot covariate forest plots.cov_forest_data: Produce dataset for covariate forest plotting.cov_cov_plot: Plot correlation between two covariates.covariate_step_tibble: Prepare forward covariate step.convert_to_simulation: Convert a NONMEM run to a simulation.comment_lines: Comment and uncomment lines of control file.coef_widelong: Extract parameter values.child: Make child nm object from parent.boot_to_csv: Save bootstrap datasets to disk.block-omega-sigma: Create or remove $OMEGA/$SIGMA BLOCKs.bind_covariate_results: Add run results into a covariate tibble.based_on: Use file to set control file contents in nm object.as_nm_generic: Convert nm object to nm_generic.