create_mc_samples {httk}R Documentation

Create a table of parameter values for Monte Carlo

Description

This is the HTTK master function for creating a data table for use with Monte Carlo methods to simulate parameter uncertainty and variabilit. Each column of the output table corresponds to an HTTK model parameter and each row corresponds to a different random draw (for example, different individuals when considering biological variability). This function call three different key functions to simulate parameter parameter uncertainty and/or variability in one of three ways. First parameters can be varied in an uncorrelated manner using truncated normal distributions by the function monte_carlo. Then, physiological parameters can be varied in a correlated manner according to the Ring et al. (2017) (doi:10.1016/j.envint.2017.06.004) httk-pop approach by the function httkpop_mc. Next, both uncertainty and variability of in vitro HTTK parameters can be simulated by the function invitro_mc as described by Wambaugh et al. (2019) (doi:10.1093/toxsci/kfz205). Finally, tissue-specific partition coefficients are predicted for each draw using the Schmitt (2008) (doi:10.1016/j.tiv.2007.09.010) method as calibrated to in vivo data by Pearce et al. (2017) (doi:10.1007/s10928-017-9548-7) and implemented in predict_partitioning_schmitt.

Usage

create_mc_samples(
  chem.cas = NULL,
  chem.name = NULL,
  dtxsid = NULL,
  parameters = NULL,
  samples = 1000,
  species = "Human",
  suppress.messages = FALSE,
  model = "3compartmentss",
  httkpop = TRUE,
  invitrouv = TRUE,
  calcrb2p = TRUE,
  censored.params = list(),
  vary.params = list(),
  return.samples = FALSE,
  tissue = NULL,
  httkpop.dt = NULL,
  invitro.mc.arg.list = NULL,
  adjusted.Funbound.plasma = TRUE,
  adjusted.Clint = TRUE,
  httkpop.generate.arg.list = list(method = "direct resampling"),
  convert.httkpop.arg.list = NULL,
  propagate.invitrouv.arg.list = NULL,
  parameterize.arg.list = NULL,
  Caco2.options = NULL
)

Arguments

chem.cas

Chemical Abstract Services Registry Number (CAS-RN) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXISD

chem.name

Chemical name (spaces and capitalization ignored) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXISD

dtxsid

EPA's DSSTox Structure ID (https://comptox.epa.gov/dashboard) – if parameters is not specified then the chemical must be identified by either CAS, name, or DTXSIDs

parameters

Parameters from the appropriate parameterization function for the model indicated by argument model

samples

Number of samples generated in calculating quantiles.

species

Species desired (either "Rat", "Rabbit", "Dog", "Mouse", or default "Human"). Species must be set to "Human" to run httkpop model.

suppress.messages

Whether or not to suppress output message.

model

Model used in calculation: 'pbtk' for the multiple compartment model,'3compartment' for the three compartment model, '3compartmentss' for the three compartment steady state model, and '1compartment' for one compartment model. This only applies when httkpop=TRUE and species="Human", otherwise '3compartmentss' is used.

httkpop

Whether or not to use the Ring et al. (2017) "httkpop" population generator. Species must be 'Human'.

invitrouv

Logical to indicate whether to include in vitro parameters such as intrinsic hepatic clearance rate and fraction unbound in plasma in uncertainty and variability analysis

calcrb2p

Logical determining whether or not to recalculate the chemical ratio of blood to plasma

censored.params

The parameters listed in censored.params are sampled from a normal distribution that is censored for values less than the limit of detection (specified separately for each parameter). This argument should be a list of sub-lists. Each sublist is named for a parameter in "parameters" and contains two elements: "CV" (coefficient of variation) and "LOD" (limit of detection, below which parameter values are censored. New values are sampled with mean equal to the value in "parameters" and standard deviation equal to the mean times the CV. Censored values are sampled on a uniform distribution between 0 and the limit of detection. Not used with httkpop model.

vary.params

The parameters listed in vary.params are sampled from a normal distribution that is truncated at zero. This argument should be a list of coefficients of variation (CV) for the normal distribution. Each entry in the list is named for a parameter in "parameters". New values are sampled with mean equal to the value in "parameters" and standard deviation equal to the mean times the CV. Not used with httkpop model.

return.samples

Whether or not to return the vector containing the samples from the simulation instead of the selected quantile.

tissue

Desired steady state tissue conentration.

httkpop.dt

A data table generated by httkpop_generate. This defaults to NULL, in which case httkpop_generate is called to generate this table.

invitro.mc.arg.list

Additional parameters passed to invitro_mc.

adjusted.Funbound.plasma

Uses Pearce et al. (2017) lipid binding adjustment for Funbound.plasma when set to TRUE (Default).

adjusted.Clint

Uses Kilford et al. (2008) hepatocyte incubation binding adjustment for Clint when set to TRUE (Default).

httkpop.generate.arg.list

Additional parameters passed to httkpop_generate.

convert.httkpop.arg.list

Additional parameters passed to the convert_httkpop_* function for the model.

propagate.invitrouv.arg.list

Additional parameters passed to model's associated in vitro uncertainty and variability propagation function

parameterize.arg.list

Additional parameters passed to the parameterize_* function for the model.

Caco2.options

Arguments describing how to handle Caco2 absorption data that are passed to invitro_mc and the parameterize_[MODEL] functions. See get_fabsgut for further details.

Details

The Monte Carlo methods used here were recently updated and described by Breen et al. (2022).

We aim to make any function that uses chemical identifiers (name, CAS, DTXSID) also work if passed a complete vector of parameters (that is, a row from the table generated by this function). This allows the use of Monte Carlo to vary the parameters and therefore vary the function output. Depending on the type of parameters (for example, physiological vs. in vitro measurements) we vary the parameters in different ways with different functions.

Value

A data table where each column corresponds to parameters needed for the specified model and each row represents a different Monte Carlo sample of parameter values.

Author(s)

Caroline Ring, Robert Pearce, and John Wambaugh

References

Breen M, Wambaugh JF, Bernstein A, Sfeir M, Ring CL (2022). “Simulating toxicokinetic variability to identify susceptible and highly exposed populations.” Journal of Exposure Science & Environmental Epidemiology, 32(6), 855–863.

Kilford PJ, Gertz M, Houston JB, Galetin A (2008). “Hepatocellular binding of drugs: correction for unbound fraction in hepatocyte incubations using microsomal binding or drug lipophilicity data.” Drug Metabolism and Disposition, 36(7), 1194–1197.

Pearce RG, Setzer RW, Davis JL, Wambaugh JF (2017). “Evaluation and calibration of high-throughput predictions of chemical distribution to tissues.” Journal of pharmacokinetics and pharmacodynamics, 44, 549–565.

Ring CL, Pearce RG, Setzer RW, Wetmore BA, Wambaugh JF (2017). “Identifying populations sensitive to environmental chemicals by simulating toxicokinetic variability.” Environment International, 106, 105–118.

Schmitt W (2008). “General approach for the calculation of tissue to plasma partition coefficients.” Toxicology in vitro, 22(2), 457–467.

Wambaugh JF, Wetmore BA, Ring CL, Nicolas CI, Pearce RG, Honda GS, Dinallo R, Angus D, Gilbert J, Sierra T, others (2019). “Assessing toxicokinetic uncertainty and variability in risk prioritization.” Toxicological Sciences, 172(2), 235–251.

Examples



# We can use the Monte Carlo functions by passing a table
# where each row represents a different Monte Carlo draw of parameters:
p <- create_mc_samples(chem.cas="80-05-7")
# Use data.table for steady-state plasma concentration (Css) Monte Carlo:
calc_mc_css(parameters=p)
# Using the same table gives the same answer:
calc_mc_css(parameters=p)
# Use Css for 1 mg/kg/day for simple reverse toxicokinetics 
# in Vitro-In Vivo Extrapolation to convert 15 uM to mg/kg/day:
15/calc_mc_css(parameters=p, output.units="uM")
# Can do the same with calc_mc_oral_equiv:
calc_mc_oral_equiv(15, parameters=p)



[Package httk version 2.3.1 Index]