A collection of functions to be used as a model building aid for nonlinear mixed-effects (population) analysis using NONMEM. It facilitates data set checkout, exploration and visualization, model diagnostics, candidate covariate identification and model comparison.
by Andrew C. Hooker, Mats O. Karlsson and E. Niclas Jonsson
Xpose 4 is a collection of functions to be used as a model building aid for nonlinear mixed-effects (population) analysis using NONMEM. It facilitates data set checkout, exploration and visualization, model diagnostics, candidate covariate identification and model comparison.
To install xpose you will need R (>= version 2.2.0). Download the latest version of R from http://www.r-project.org. To install Xpose in R use one of the following methods:
latest stable release -- From CRAN. Write at the R command line:
Latest development version -- from Github. Note that the command below installs the "master" (development) branch; if you want the release branch from Github add
ref="release" to the
Start R and load xpose:
library(xpose4)#> Loading required package: lattice
To use the classic menu system, type at the R command prompt:
Each function is independently available from the command line, once the Xpose library is loaded.
First we create a set of files from a NONMEM run
cur.files <- dir() # current files in temp directorysimprazExample() # write files from an example NONMEM runnew.files <- dir()[!(dir() %in% cur.files)] # the new files created by simprazExample
Then we can import our files to Xpose
xpdb <- xpose.data(1)
Display goodness-of-fit plots:
Clean up files that were created to show these examples:
More help is available in the online documentation, which can be found by typing (for example)
?xpose4 at the R command line.
A more detailed description of Xpose with example plots and explanaitions for most of the functions in the package is available in our Bestiarium: http://xpose.sourceforge.net/bestiarium_v1.0.pdf
Andrew Hooker (andrew.hooker at farmbio.uu.se) should be able to get you an answer if you run into trouble. The website http://xpose.sf.net should also be of help.
Bugfix releases will be released regularly, fixing any problems that are found.
Xpose 4 is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details http://www.gnu.org/licenses/.
None at present, but there will certainly be a few
Update to xpose.VPC() so that outliers can be identified and plotted.
Update to xpose.VPC() so that for any lines in the VPC they are plotted at the median of the observed values of the X axis for all bins by default.
Update to xpose.VPC() to allow a rug at the bottom of the plot showing where the bins are located.
Update to the namespace so that only lattice is loaded when loading xpose.
All documentation now written in roxygen
Updates to boot GAM and boot SCM plots and documentation.
Various small bug fixes.
Update to ind.plots() to allow subsets on a per-y-variable basis.
Useful to show IPRED and PRED in a finer grid than DV. See option “y.vals.subset”.
Update to how axes limits are computed with xpose.plot.default.
Fix for using expression() in the ylb argument of xpose.VPC.
Various small bug fixes.
Updates to read.bootscm.par.est()
Updated xpose.gam to work with the latest version of the gam package
Updated kaplan.plot to allow for ylim specification when "cov" argument is used.
Updated compute.cwres and associated functions to work with NONMEM 7.
Fixed warnings created in xpose.VPC.categorical when creating personalized x and y axis labels.
External release with just one package instead of five.
Added to ind.plots so that when there is only one data point for an individual, the PRED and IPRED show up in the plot.
Added functionality for plotting the delta mean output from the vpc tool in PsN. Option is for xpose.VPC() and can be turned on using PI.delta.mean=T. See ?xpose.panel.default for more information.
Removed some default messages that were print to the screen when running xpose.VPC(). can change back to previous behavior with option verbose=TRUE.
Combined the five packages of xpose into one package.
Updated the Histogram functionality.
New plots randtest.hist() and boot.hist() for creating histograms of results from PsN's 'randtest' and 'bootstrap' tools.
Updated the xpose.VPC() function to handle plotting of mean values from simulations.
Updates to kaplan.plot.R (thanks to Leonid Gibiansky for reporting the problems)
kaplan.plot.R: Removed debugging command that was mistakenly left in function
kaplan.plot.R: "ylab" argument is now passed to the plot when cov option is used.
kaplan.plot.R: Using the cov option with repeated censoring and no observations to break up the chain then the mean value calculation was wrong (only used the surviving IDs and the last censored ID). Fixed now.
Changed the "aspect" argument for all plots to default to "fill".
Previously it was "1".
Updated help files with workable examples, and an example dataset. Look at data(simpraz.xpdb), simprazExample() and example(xpose.data) for dataset examples and example(basic.gof) and example(cwres.vs.idv) for plot examples. Most of the xpose4specific functions now have examples that can be run with example().
Updated kaplan.plot() so that the kaplan-Meier mean covariate (KMMC) plot can be created. Also added more options for adjusting plot properties.
New gofSetup() command to create your own customized series of GOF plots.
fixed how RSE values were reported on runsum() when the parameter was fixed.
Fixed argument to xpose.VPC.categorical(max.plots.per.page=1), so that only one plot per page was possible.
Fixed xpose.VPC() so that the psn option for vpc "confidence_interval=X" works.
Fixed compute.cwres() function that wasn't computing anything (and returning an error).
Fixed bug in xpose.VPC when asking for logx=T (didn't work previously).
Fixed dOFV.vs.id for when there are ties in individual dOFV drops.
Updated read.nm.tables so that comma separated NONMEM 7 files can be read into Xpose.
Changing the behavior of xpose.multiple.plot.default. Now multiple plots are returned as objects just like single plots are (no automatic printing from the function that created the plot list). This is accomplished by defining a new class - xpose.multiple.plots - and corresponding print and show methods for that class.
Updated xpose.VPC, xpose.VPC.categorical and xpose.VPC.both to handle the new format of PsN vpc_results.csv files.
xpose.VPC.categorical now has a new option: censored (T or F) which will create BLOQ VPC plots when TRUE.
xpose.VPC.both tries to combine continuous and categorical BLOQ plots.
page numbers can be turned off in multiple page plots using the page.numbers option (T or F).