Pumas version 1.1.0 released

A new release of Pumas is now available. You can find a link to the latest version at our download page. The new version we release is v1.1. This is a feature release that is fully backward compatible with older versions of Pumas. If something no longer works as it did in previous versions, please report the issue here on this forum.

Release Notes for Pumas v1.1.0

Features and improvements

  • Adjusted several error messages have been improved to better guides users to correct mistakes in input data
  • Add MAP (Maximum a Posteriori) estimation using the MAP type.
  • infer now accepts a second positional argument Pumas.Bootstrap() or Pumas.SIR() to calculate standard errors using either bootstrap or Sampling Importance Resampling (SIR).
  • Censored and Truncated types can now be used to handle incomplete data such as datasets with observations below the limit of quantification (BLQ) when fitting with the LaplaceI likelihood approximation.
  • Make asymptotic variance-covariance matrix calculations multithreaded for faster infer , vcov and stderror calculations.
  • Add progress meters to infer to help assess the time left in the calculations.
  • Add a returncode to SimulatedObservation s returned from simobs to allow for some simulated subjects to fail due to extreme random effects without losing all other simulated subjects because an error is thrown
  • When multiple dependent variables are present inspect and wresiduals now returns weighted residuals for all variables with a Normal distribution and ignores other types of variables.
  • Expose the target_accept keyword for BayesMCMC inference to allow users to fine-tune the target acceptance rate to their problem
  • Implement a compact show method for Subject and Event for improved printing of DataFrame s.
  • VPC plots now clearly indicate in the title what variable is being stratified on


  • When a parameter was found to be potentially unidentified it would sometimes report the wrong parameters when matrix domains PDiagDomain and PSDDomain were used.
  • When simulating subjects with simobs and a vector of parameters the subjects and parameters were incorrectly combined.
  • read_pumas did not correctly error if evid was 1 and amt was missing
  • A PumasModel could not be defined and used inside a function
  • It was unintentionally possible to use ~ in the @observed block and right-hand sides = in the same block could be distributions.
  • Variables from the @vars block were not available in @dynamics if the PumasModel had no @derived or @observed blocks defined
  • Printing the results of a fit would throw an error if a parameter had become NaN
  • amt would not be set to missing when constructing a Subject from a SimulatedSubject
  • Evaluating the @derived block would sometimes allocate too much memory when no covariates were present in the model
  • When multiple dose events were present and NCA variables were calculated in the @derived or @observed block the DataFrame constructor would incorrectly tabulate the NCA variables when called on a SimulatedSubject
  • vpc would throw LAPACKException(2) when the selected bandwidth was too small instead of calculating the well-defined unsmoothed VPC.
  • Dose control parameters would not be correctly promoted to the appropriate types in all cases leading to errors thrown from the automatic differentiation code.
  • Using reset and reset and dose events (evid 3 and 4) would sometimes throw an error if the same times after dose were present more than once.
  • The DataFrame constructor would throw an error if called on the results of predict if the keyword obstimes was different than the observed times in the subjects.
  • Fix a corner case where wresiduals would fail if a proportional error model had an observation at time 0.


  • NCA supported up to v1.0.2
  • QuantileRegressions v0.1.4 now used in Pumas
  • No longer depend on Query for tests