Type: | Package |
Title: | Generic PK/PD Simulation Platform CAMPSIS |
Version: | 1.7.0 |
Description: | A generic, easy-to-use and intuitive pharmacokinetic/pharmacodynamic (PK/PD) simulation platform based on R packages 'rxode2' and 'mrgsolve'. CAMPSIS provides an abstraction layer over the underlying processes of writing a PK/PD model, assembling a custom dataset and running a simulation. CAMPSIS has a strong dependency to the R package 'campsismod', which allows to read/write a model from/to files and adapt it further on the fly in the R environment. Package 'campsis' allows the user to assemble a dataset in an intuitive manner. Once the user’s dataset is ready, the package is in charge of preparing the simulation, calling 'rxode2' or 'mrgsolve' (at the user's choice) and returning the results, for the given model, dataset and desired simulation settings. |
License: | GPL (≥ 3) |
URL: | https://github.com/Calvagone/campsis, https://calvagone.github.io/, https://calvagone.github.io/campsis.doc/ |
BugReports: | https://github.com/Calvagone/campsis/issues |
Depends: | campsismod (≥ 1.2.0), R (≥ 4.0.0) |
Imports: | assertthat, digest, dplyr, furrr, future, ggplot2, MASS, methods, progressr, purrr, rlang, stats, tibble, tidyr |
Suggests: | bookdown, devtools, gridExtra, knitr, mrgsolve, pkgdown, rmarkdown, roxygen2, rxode2, stringr, testthat, tictoc, vdiffr, xfun |
VignetteBuilder: | knitr |
Encoding: | UTF-8 |
Language: | en-US |
LazyData: | true |
RoxygenNote: | 7.3.2 |
Collate: | 'global.R' 'utilities.R' 'time_utilities.R' 'check.R' 'generic.R' 'data.R' 'seed.R' 'distribution.R' 'dataset_config.R' 'time_entry.R' 'repeated_schedule.R' 'occasion.R' 'occasions.R' 'treatment_iov.R' 'treatment_iovs.R' 'dose_adaptation.R' 'dose_adaptations.R' 'treatment_entry.R' 'treatment.R' 'observations.R' 'observations_set.R' 'covariate.R' 'covariates.R' 'bootstrap.R' 'protocol.R' 'arm.R' 'arms.R' 'event.R' 'events.R' 'scenario.R' 'scenarios.R' 'simulation_engine.R' 'dataset.R' 'event_logic.R' 'dataset_summary.R' 'outfun.R' 'hardware_settings.R' 'simulation_progress.R' 'solver_settings.R' 'nocb_settings.R' 'declare_settings.R' 'progress_settings.R' 'internal_settings.R' 'simulation_settings.R' 'plan_setup.R' 'simulate_preprocess.R' 'simulate.R' 'results_processing.R' 'default_plot.R' |
NeedsCompilation: | no |
Packaged: | 2025-04-04 16:45:17 UTC; nicolas.luyckx |
Author: | Nicolas Luyckx [aut, cre] |
Maintainer: | Nicolas Luyckx <nicolas.luyckx@calvagone.com> |
Repository: | CRAN |
Date/Publication: | 2025-04-04 17:10:02 UTC |
Create a treatment arm.
Description
Create a treatment arm.
Usage
Arm(id = as.integer(NA), subjects = 1, label = as.character(NA))
Arguments
id |
unique identifier for this arm (available trough dataset), integer. If NA (default), this identifier is auto-incremented. |
subjects |
number of subjects in arm, integer |
label |
arm label, single character string. If set, this label will be output in the ARM column of CAMPSIS instead of the identifier. |
Value
an arm
Binomial distribution.
Description
Binomial distribution.
Usage
BinomialDistribution(trials, prob)
Arguments
trials |
number of Bernoulli trials per observation (=subject), integer |
prob |
probability of success for each trial |
Value
a binomial distribution
Create one or several bolus(es).
Description
Create one or several bolus(es).
Usage
Bolus(
time,
amount,
compartment = NULL,
f = NULL,
lag = NULL,
ii = NULL,
addl = NULL,
wrap = TRUE,
ref = NULL,
rep = NULL
)
Arguments
time |
treatment time(s), numeric value or vector. First treatment time if used together with ii and addl. |
amount |
amount to give as bolus, single numeric value |
compartment |
compartment index or name to give the bolus(es). A vector of integers or names can be used for a complex model administration. |
f |
fraction of dose amount, list of distributions (one per compartment) |
lag |
dose lag time, list of distributions (one per compartment) |
ii |
inter-dose interval, requires argument 'time' to be a single numeric value |
addl |
number of additional doses, requires argument 'time' to be a single integer value |
wrap |
if TRUE, the bolus wrapper will be stored as is in the dataset, otherwise, it will be split into a list of boluses distinct in time. Default is TRUE. |
ref |
any reference name used to identify this bolus, single character value |
rep |
repeat the base dosing schedule several times, a 'repeated schedule' object is expected. Default is NULL (no repetition). |
Value
a single bolus or a list of boluses
Create a bootstrap object.
Description
Create a bootstrap object.
Usage
Bootstrap(
data,
id = "BS_ID",
replacement = FALSE,
random = FALSE,
export_id = FALSE
)
Arguments
data |
data frame to be bootstrapped. It must have a unique identifier column named according to the specified argument 'id' (default value is 'BS_ID'). Other columns are covariates to bootstrap. They must all be numeric. Whatever the configuration of the bootstrap, these covariates are always read row by row and belong to a same individual. |
id |
unique identifier column name in data |
replacement |
values can be reused or not when drawn, logical |
random |
values are drawn randomly, logical |
export_id |
tell CAMPSIS if the identifier 'BS_ID' must be output or not, logical |
Value
a bootstrap object
Create a bootstrap distribution. During function sampling, CAMPSIS will generate values depending on the given data and arguments.
Description
Create a bootstrap distribution. During function sampling, CAMPSIS will generate values depending on the given data and arguments.
Usage
BootstrapDistribution(data, replacement = FALSE, random = FALSE)
Arguments
data |
values to draw, numeric vector |
replacement |
values can be reused or not, logical |
random |
values are drawn randomly, logical |
Value
a bootstrap distribution
Create a constant distribution. Its value will be constant across all generated samples.
Description
Create a constant distribution. Its value will be constant across all generated samples.
Usage
ConstantDistribution(value)
Arguments
value |
covariate value, single numeric value |
Value
a constant distribution (same value for all samples)
Create a non time-varying (fixed) covariate.
Description
Create a non time-varying (fixed) covariate.
Usage
Covariate(name, distribution)
Arguments
name |
covariate name, single character value |
distribution |
covariate distribution |
Value
a fixed covariate
Cyclic schedule constructor.
Description
Cyclic schedule constructor.
Usage
CyclicSchedule(duration, repetitions)
Arguments
duration |
duration of the cycle, numeric value |
repetitions |
number of additional repetitions to the base pattern, integer value |
Value
a cyclic schedule
Create a dataset.
Description
Create a dataset.
Usage
Dataset(subjects = NULL, label = as.character(NA))
Arguments
subjects |
number of subjects in the default arm |
label |
label of the default arm, NA by default |
Value
a dataset
Create a dataset configuration. This configuration allows CAMPSIS to know which are the default depot and observed compartments.
Description
Create a dataset configuration. This configuration allows CAMPSIS to know which are the default depot and observed compartments.
Usage
DatasetConfig(
defDepotCmt = 1,
defObsCmt = 1,
exportTSLD = FALSE,
exportTDOS = FALSE,
timeUnitDataset = "hour",
timeUnitExport = "hour"
)
Arguments
defDepotCmt |
default depot compartment, integer |
defObsCmt |
default observation compartment, integer |
exportTSLD |
export column TSLD (time since last dose), logical |
exportTDOS |
export column TDOS (time of last dose), logical |
timeUnitDataset |
unit of time in dataset, character ('hour' by default) |
timeUnitExport |
unit of time in export, character ('hour' by default) |
Value
a dataset configuration
Create a dataset summary (internal method).
Description
Create a dataset summary (internal method).
Usage
DatasetSummary()
Value
a dataset summary
Create declare settings.
Description
Create declare settings.
Usage
Declare(variables = character(0))
Arguments
variables |
uninitialized variables to be declared, only needed with mrgsolve |
Value
Declare settings
Discrete distribution.
Description
Discrete distribution.
Usage
DiscreteDistribution(x, prob, replace = TRUE)
Arguments
x |
vector of one or more integers from which to choose |
prob |
a vector of probability weights for obtaining the elements of the vector being sampled |
replace |
should sampling be with replacement, default is TRUE |
Value
a discrete distribution
Create a dose adaptation.
Description
Create a dose adaptation.
Usage
DoseAdaptation(formula, compartments = NULL)
Arguments
formula |
formula to apply, single character string, e.g. "AMT*WT" |
compartments |
compartment indexes or names where the formula needs to be applied, integer or character vector. Default is NULL (formula applied on all compartments) |
Value
a fixed covariate
Create an ETA distribution. The resulting distribution is a normal distribution, with mean=0 and sd=sqrt(OMEGA).
Description
Create an ETA distribution. The resulting distribution is a normal distribution, with mean=0 and sd=sqrt(OMEGA).
Usage
EtaDistribution(model, omega)
Arguments
model |
model |
omega |
corresponding THETA name, character |
Value
an ETA distribution
Create an interruption event.
Description
Create an interruption event.
Usage
Event(name = NULL, times, fun, debug = FALSE)
Arguments
name |
event name, character value |
times |
interruption times, numeric vector |
fun |
event function to apply at each interruption |
debug |
output the variables that were changed through this event |
Value
an event definition
Create an event covariate. These covariates can be modified further in interruption events.
Description
Create an event covariate. These covariates can be modified further in interruption events.
Usage
EventCovariate(name, distribution)
Arguments
name |
covariate name, character |
distribution |
covariate distribution at time 0 |
Value
a time-varying covariate
Create an event iteration object.
Description
Create an event iteration object.
Usage
EventIteration(index, start, end, inits = data.frame(), maxIndex)
Arguments
index |
iteration index, starts at 1 |
start |
iteration start time |
end |
iteration end time |
inits |
initial values for all subjects, data frame |
maxIndex |
the last iteration index |
Value
an event iteration object
Create an event-related observations list. Please note that the provided 'times' will automatically be sorted. Duplicated times will be removed.
Description
Create an event-related observations list. Please note that the provided 'times' will automatically be sorted. Duplicated times will be removed.
Usage
EventRelatedObservations(times, compartment = NA)
Arguments
times |
observation times, numeric vector |
compartment |
compartment index, integer |
Value
observations
Create a list of interruption events.
Description
Create a list of interruption events.
Usage
Events()
Value
a events object
Create a fixed distribution. Each sample will be assigned a fixed value coming from vector 'values'.
Description
Create a fixed distribution. Each sample will be assigned a fixed value coming from vector 'values'.
Usage
FixedDistribution(values)
Arguments
values |
covariate values, numeric vector (1 value per sample) |
Value
a fixed distribution (1 value per sample)
Create a function distribution. During distribution sampling, the provided function will be responsible for generating values for each sample. If first argument of this function is not the size (n), please tell which argument corresponds to the size 'n' (e.g. list(size="n")).
Description
Create a function distribution. During distribution sampling, the provided function will be responsible for generating values for each sample. If first argument of this function is not the size (n), please tell which argument corresponds to the size 'n' (e.g. list(size="n")).
Usage
FunctionDistribution(fun, args)
Arguments
fun |
function name, character (e.g. 'rnorm') |
args |
list of arguments (e.g list(mean=70, sd=10)) |
Value
a function distribution
Create hardware settings.
Description
Create hardware settings.
Usage
Hardware(
cpu = 1,
replicate_parallel = FALSE,
scenario_parallel = FALSE,
slice_parallel = FALSE,
slice_size = NULL,
dataset_parallel = FALSE,
dataset_slice_size = 500,
auto_setup_plan = NULL
)
Arguments
cpu |
number of CPU cores to use, default is 1 |
replicate_parallel |
enable parallel computing for replicates, default is FALSE |
scenario_parallel |
enable parallel computing for scenarios, default is FALSE |
slice_parallel |
enable parallel computing for slices, default is FALSE |
slice_size |
number of subjects per simulated slice, default is NULL (auto-configured by Campsis depending on the specified engine) |
dataset_parallel |
enable parallelisation when exporting dataset into a table, default is FALSE |
dataset_slice_size |
dataset slice size when exporting subjects to a table, default is 500. Only applicable if 'dataset_parallel' is enabled. |
auto_setup_plan |
auto-setup plan with the library future, if not set (i.e. =NULL), plan will be setup automatically if the number of CPU's > 1. |
Value
hardware settings
Define inter-occasion variability (IOV) into the dataset. A new variable of name 'colname' will be output into the dataset and will vary at each dose number according to the given distribution.
Description
Define inter-occasion variability (IOV) into the dataset. A new variable of name 'colname' will be output into the dataset and will vary at each dose number according to the given distribution.
Usage
IOV(colname, distribution, doseNumbers = NULL)
Arguments
colname |
name of the column that will be output in dataset |
distribution |
distribution |
doseNumbers |
dose numbers, if provided, IOV is generated at these doses only. By default, IOV is generated for all doses. |
Value
an IOV object
Create one or several infusion(s).
Description
Create one or several infusion(s).
Usage
Infusion(
time,
amount,
compartment = NULL,
f = NULL,
lag = NULL,
duration = NULL,
rate = NULL,
ii = NULL,
addl = NULL,
wrap = TRUE,
ref = NULL,
rep = NULL
)
Arguments
time |
treatment time(s), numeric value or vector. First treatment time if used together with ii and addl. |
amount |
amount to infuse, single numeric value |
compartment |
compartment index or name to give the infusion(s). A vector of integers or names can be used for a complex model administration. |
f |
fraction of infusion amount, list of distributions (one per compartment) |
lag |
infusion lag time, , list of distributions (one per compartment) |
duration |
infusion duration, list of distributions (one per compartment) |
rate |
infusion rate, list of distributions (one per compartment) |
ii |
inter-dose interval, requires argument 'time' to be a single numeric value |
addl |
number of additional doses, requires argument 'time' to be a single integer value |
wrap |
if TRUE, the infusion wrapper will be stored as is in the dataset, otherwise, it will be split into a list of infusions distinct in time. Default is TRUE. |
ref |
any reference name used to identify this infusion, single character value |
rep |
repeat the base dosing schedule several times, a 'repeated schedule' object is expected. Default is NULL (no repetition). |
Value
a single infusion or a list of infusions.
Create a log normal distribution.
Description
Create a log normal distribution.
Usage
LogNormalDistribution(meanlog, sdlog)
Arguments
meanlog |
mean value of distribution in log domain |
sdlog |
standard deviation of distribution in log domain |
Value
a log normal distribution
Create NOCB settings.
Description
Create NOCB settings.
Usage
NOCB(enable = NULL, variables = character(0))
Arguments
enable |
enable/disable next-observation carried backward mode (NOCB), default value is TRUE for mrgsolve, FALSE for RxODE |
variables |
variable names subject to NOCB behavior (see vignette for more info) |
Value
NOCB settings
Create a normal distribution.
Description
Create a normal distribution.
Usage
NormalDistribution(mean, sd)
Arguments
mean |
mean value of distribution |
sd |
standard deviation of distribution |
Value
a normal distribution
Create an observations list. Please note that the provided 'times' will automatically be sorted. Duplicated times will be removed.
Description
Create an observations list. Please note that the provided 'times' will automatically be sorted. Duplicated times will be removed.
Usage
Observations(times, compartment = NA)
Arguments
times |
observation times, numeric vector |
compartment |
compartment index (integer) or name (character) |
Value
an observations list
Define a new occasion. Occasions are defined by mapping occasion values to dose numbers. A new column will automatically be created in the exported dataset.
Description
Define a new occasion. Occasions are defined by mapping occasion values to dose numbers. A new column will automatically be created in the exported dataset.
Usage
Occasion(colname, values, doseNumbers)
Arguments
colname |
name of the column that will be output in dataset |
values |
the occasion numbers, any integer vector |
doseNumbers |
the related dose numbers, any integer vector of same length as 'values' |
Value
occasion object
Create a new output function
Description
Create a new output function
Usage
Outfun(
fun = function(x, ...) {
x
},
args = list(),
packages = NULL,
level = "scenario"
)
Arguments
fun |
function or purrr-style lambda formula, first argument 'x' must be the results |
args |
extra arguments, named list |
packages |
packages that must be loaded to execute the given function, character vector |
level |
either 'scenario' or 'replicate'. Default is 'scenario'. |
Value
an output function
Compute the prediction interval summary over time.
Description
Compute the prediction interval summary over time.
Usage
PI(x, output, scenarios = NULL, level = 0.9, gather = TRUE)
Arguments
x |
data frame |
output |
variable to show, character value |
scenarios |
scenarios, character vector, NULL is default |
level |
PI level, default is 0.9 (90% PI) |
gather |
FALSE: med, low & up columns, TRUE: metric column |
Value
a summary table
Create a parameter distribution. The resulting distribution is a log-normal distribution, with meanlog=log(THETA) and sdlog=sqrt(OMEGA).
Description
Create a parameter distribution. The resulting distribution is a log-normal distribution, with meanlog=log(THETA) and sdlog=sqrt(OMEGA).
Usage
ParameterDistribution(model, theta, omega = NULL)
Arguments
model |
model |
theta |
corresponding THETA name, character |
omega |
corresponding OMEGA name, character, NULL if not defined |
Value
a parameter distribution
Create progress settings.
Description
Create progress settings.
Usage
Progress(tick_slice = TRUE)
Arguments
tick_slice |
tick() is called after each simulated slice, default is TRUE. In some cases, when the number of subjects per slice is low, it may be useful disable this flag, to improve performance issues. |
Value
progress settings
'Repeat at' schedule constructor. Note that the time 0 for the base pattern will be added by default if not provided.
Description
'Repeat at' schedule constructor. Note that the time 0 for the base pattern will be added by default if not provided.
Usage
RepeatAtSchedule(times)
Arguments
times |
times at which the original schedule must be repeated, numeric vector |
Value
a 'repeat-at' schedule
Create an scenario.
Description
Create an scenario.
Usage
Scenario(name = NULL, model = NULL, dataset = NULL)
Arguments
name |
scenario name, single character string |
model |
either a CAMPSIS model, a function or lambda-style formula |
dataset |
either a CAMPSIS dataset, a function or lambda-style formula |
Value
a new scenario
Create a list of scenarios.
Description
Create a list of scenarios.
Usage
Scenarios()
Value
a scenarios object
Create advanced simulation settings.
Description
Create advanced simulation settings.
Usage
Settings(...)
Arguments
... |
any user-required settings: see ?Hardware, ?Solver, ?NOCB, ?Declare, ?Progress or ?AutoReplicationSettings |
Value
advanced simulation settings
Create a simulation progress object.
Description
Create a simulation progress object.
Usage
SimulationProgress(
replicates = 1,
scenarios = 1,
progressor = NULL,
hardware = NULL
)
Arguments
replicates |
total number of replicates to simulate |
scenarios |
total number of scenarios to simulate |
progressor |
progressr progressor |
hardware |
hardware settings |
Value
a progress bar
Create solver settings.
Description
Create solver settings.
Usage
Solver(
atol = 1e-08,
rtol = 1e-08,
hmax = NA,
maxsteps = 70000L,
method = "liblsoda"
)
Arguments
atol |
absolute solver tolerance, default is 1e-08 |
rtol |
relative solver tolerance, default is 1e-08 |
hmax |
limit how big a solver step can be, default is NA |
maxsteps |
max steps between 2 integration times (e.g. when observations records are far apart), default is 70000 |
method |
solver method, for RxODE/rxode2 only: 'liblsoda' (default), 'lsoda', 'dop853', 'indLin'. Mrgsolve's method is always 'lsoda'. |
Value
solver settings
Create a time-varying covariate. This covariate will be implemented using EVID=2 rows in the exported dataset and will not use interruption events.
Description
Create a time-varying covariate. This covariate will be implemented using EVID=2 rows in the exported dataset and will not use interruption events.
Usage
TimeVaryingCovariate(name, table)
Arguments
name |
covariate name, character |
table |
data.frame, must contain the mandatory columns 'TIME' and 'VALUE'. An 'ID' column may also be specified. In that case, ID's between 1 and the max number of subjects in the dataset/arm can be used. All ID's must have a VALUE defined for TIME 0. |
Value
a time-varying covariate
Create an uniform distribution.
Description
Create an uniform distribution.
Usage
UniformDistribution(min, max)
Arguments
min |
min value |
max |
max value |
Value
an uniform distribution
Compute the VPC summary. Input data frame must contain the following columns: - replicate: replicate number - low: low percentile value in replicate (and in scenario if present) - med: median value in replicate (and in scenario if present) - up: up percentile value in replicate (and in scenario if present) - any scenario column
Description
Compute the VPC summary. Input data frame must contain the following columns: - replicate: replicate number - low: low percentile value in replicate (and in scenario if present) - med: median value in replicate (and in scenario if present) - up: up percentile value in replicate (and in scenario if present) - any scenario column
Usage
VPC(x, scenarios = NULL, level = 0.9)
Arguments
x |
data frame |
scenarios |
scenarios, character vector, NULL is default |
level |
PI level, default is 0.9 (90% PI) |
Value
VPC summary with columns TIME, <scenarios> and all combinations of low, med, up (i.e. low_low, low_med, low_up, etc.)
Apply compartment characteristics from model. In practice, only compartment infusion duration needs to be applied.
Description
Apply compartment characteristics from model. In practice, only compartment infusion duration needs to be applied.
Usage
applyCompartmentCharacteristics(table, properties)
Arguments
table |
current dataset |
properties |
compartment properties from model |
Value
updated dataset
Apply scenario to the given model or dataset.
Description
Apply scenario to the given model or dataset.
Usage
applyScenario(x, scenario)
Arguments
x |
the given model or dataset |
scenario |
the scenario to be applied |
Value
an updated model or dataset
Arm class.
Description
Arm class.
Slots
id
arm unique ID, integer
subjects
number of subjects in arm, integer
label
arm label, single character string
protocol
protocol
covariates
covariates
bootstrap
covariates to be bootstrapped
Arms class.
Description
Arms class.
Assign dose number to each treatment entry.
Description
Assign dose number to each treatment entry.
Usage
assignDoseNumber(object)
Arguments
object |
treatment |
Value
updated treatment object
Bolus class.
Description
Bolus class.
Bolus wrapper class.
Description
Bolus wrapper class.
Bootstrap class.
Description
Bootstrap class.
Slots
data
data frame to be bootstrapped. Column 'BS_ID' is mandatory and corresponds to the original row ID from the bootstrap. It must be numeric and unique. Other columns are covariates to be bootstrapped (row by row).
replacement
values can be reused or not, logical
random
values are drawn randomly, logical
export_id
tell CAMPSIS if 'BS_ID' must be exported into the dataset, logical
Bootstrap distribution class.
Description
Bootstrap distribution class.
Slots
data
values to draw, numeric vector
replacement
values can be reused or not, logical
random
values are drawn randomly, logical
Suggested Campsis handler for showing the progress bar.
Description
Suggested Campsis handler for showing the progress bar.
Usage
campsis_handler()
Value
a progressr handler list
Check ii and addl arguments in addition to time.
Description
Check ii and addl arguments in addition to time.
Usage
checkIIandADDL(time, ii, addl)
Arguments
time |
treatment time(s) |
ii |
interdose interval |
addl |
number of additional doses |
Value
no return value
Compute incremental progress.
Description
Compute incremental progress.
Usage
computeIncrementalProgress(object, tick_slice)
Arguments
object |
simulation progress object |
tick_slice |
tick progress on slices |
Value
incremental progress, in percentage
Constant distribution class.
Description
Constant distribution class.
Slots
value
covariate value, single numeric value
Convert numeric time vector based on the provided units.
Description
Convert numeric time vector based on the provided units.
Usage
convertTime(x, from, to)
Arguments
x |
numeric time vector |
from |
unit of x, single character value |
to |
destination unit, single character value |
Value
numeric vector with the converted times
Counter-balance LOCF mode for occasions & IOV. This function will simply shift all the related occasion & IOV columns to the left (by one).
Description
Counter-balance LOCF mode for occasions & IOV. This function will simply shift all the related occasion & IOV columns to the left (by one).
Usage
counterBalanceLocfMode(table, columnNames)
Arguments
table |
current table |
columnNames |
columns to be counter-balanced |
Value
2-dimensional dataset
Counter-balance NOCB mode for occasions & IOV. This function will simply shift all the related occasion & IOV columns to the right (by one).
Description
Counter-balance NOCB mode for occasions & IOV. This function will simply shift all the related occasion & IOV columns to the right (by one).
Usage
counterBalanceNocbMode(table, columnNames)
Arguments
table |
current table |
columnNames |
columns to be counter-balanced |
Value
2-dimensional dataset
Covariate class.
Description
Covariate class.
Slots
name
covariate name, single character value
distribution
covariate distribution
Covariates class.
Description
Covariates class.
Cut table according to given iteration.
Description
Cut table according to given iteration.
Usage
cutTableForEvent(table, iteration, summary)
Arguments
table |
whole table, data frame |
iteration |
current iteration being processed |
summary |
dataset summary |
Value
a data frame
Cyclic schedule class.
Description
Cyclic schedule class.
Slots
duration
duration of the cycle, numeric value
repetitions
number of additional repetitions to the base pattern, integer value
Dataset class.
Description
Dataset class.
Slots
arms
a list of treatment arms
config
dataset configuration for export
iiv
data frame containing the inter-individual variability (all ETAS) for the export
Dataset configuration class.
Description
Dataset configuration class.
Slots
def_depot_cmt
default depot compartment, integer
def_obs_cmt
default observation compartment, integer
export_tsld
export column TSLD, logical
export_tdos
export column TDOS, logical
time_unit_dataset
unit of time in dataset, character ('hour' by default)
time_unit_export
unit of time in export, character ('hour' by default)
Convert days to hours.
Description
Convert days to hours.
Usage
days(x)
Arguments
x |
numeric vector in days |
Value
numeric vector in hours
Declare settings class.
Description
Declare settings class.
Slots
variables
uninitialized variables to be declared, only needed with mrgsolve
Distribution class. See this class as an interface.
Description
Distribution class. See this class as an interface.
Dose adaptation class.
Description
Dose adaptation class.
Slots
formula
formula to apply, single character string, e.g. "AMT*WT"
compartments
compartment numbers where the formula needs to be applied
Dose adaptations class.
Description
Dose adaptations class.
Filter CAMPSIS output on dosing rows.
Description
Filter CAMPSIS output on dosing rows.
Usage
dosingOnly(x)
Arguments
x |
data frame, CAMPSIS output |
Value
a data frame with the dosing rows
Return the 'DROP_OTHERS' string that may be used in the 'outvars' vector for RxODE/mrgsolve to drop all others variables that are usually output in the resulting data frame.
Description
Return the 'DROP_OTHERS' string that may be used in the 'outvars' vector for RxODE/mrgsolve to drop all others variables that are usually output in the resulting data frame.
Usage
dropOthers()
Value
a character value
Event class.
Description
Event class.
Slots
name
event name, character value
times
interruption times, numeric vector
fun
event function to apply at each interruption
debug
output the variables that were changed through this event
Event covariate class.
Description
Event covariate class.
Events class.
Description
Events class.
Export delegate method. This method is common to RxODE and mrgsolve.
Description
Export delegate method. This method is common to RxODE and mrgsolve.
Usage
exportDelegate(object, dest, model, arm_offset = NULL, offset_within_arm = 0)
Arguments
object |
current dataset |
dest |
destination engine |
model |
Campsis model, if provided, ETA's will be added to the dataset |
arm_offset |
arm offset (on ID's) to apply when parallelisation is used. Default value is NULL, meaning parallelisation is disabled. Otherwise, it corresponds to the offset to apply for the current arm being exported (in parallel). |
offset_within_arm |
offset (on ID's) to apply within the current arm being exported (only used when parallelisation is enabled), default is 0 |
Value
2-dimensional dataset, same for RxODE and mrgsolve
Export table delegate.
Description
Export table delegate.
Usage
exportTableDelegate(model, dataset, dest, events, seed, tablefun, settings)
Arguments
model |
generic CAMPSIS model |
dataset |
CAMPSIS dataset or 2-dimensional table |
dest |
destination simulation engine, default is 'RxODE' |
events |
interruption events |
seed |
seed value |
tablefun |
function or lambda formula to apply on exported 2-dimensional dataset |
settings |
advanced simulation settings |
Value
a data frame
Factor scenarios columns if not done yet.
Description
Factor scenarios columns if not done yet.
Usage
factorScenarios(x, scenarios = NULL)
Arguments
x |
data frame |
scenarios |
scenarios |
Fill IOV/Occasion columns.
Description
Problem in RxODE (LOCF mode) / mrgsolve (LOCF mode), if 2 rows have the same time (often: OBS then DOSE), first row covariate value is taken! Workaround: identify these rows (group by ID and TIME) and apply a fill in the UP direction.
Usage
fillIOVOccColumns(table, columnNames, downDirectionFirst)
Arguments
table |
current table |
columnNames |
the column names to fill |
downDirectionFirst |
TRUE: first fill down then fill up (by ID & TIME). FALSE: First fill up (by ID & TIME), then fill down |
Value
2-dimensional dataset
Fixed covariate class.
Description
Fixed covariate class.
Fixed distribution class.
Description
Fixed distribution class.
Slots
values
covariate values, numeric vector (1 value per sample)
Function distribution class.
Description
Function distribution class.
Slots
fun
function name, character (e.g. 'rnorm')
args
list of arguments (e.g list(mean=70, sd=10))
Generate IIV matrix for the given Campsis model.
Description
Generate IIV matrix for the given Campsis model.
Usage
generateIIV(model, n, offset = 0)
Arguments
model |
Campsis model |
n |
number of subjects |
offset |
if specified, resulting ID will be ID + offset |
Value
IIV data frame with ID column
Generate IIV matrix for the given OMEGA matrix.
Description
Generate IIV matrix for the given OMEGA matrix.
Usage
generateIIV_(omega, n)
Arguments
omega |
omega matrix |
n |
number of subjects |
Value
IIV data frame
Return the list of available time units.
Description
Return the list of available time units.
Usage
getAvailableTimeUnits()
Value
character vector
Get data of given column unless if does not exist (return NULL in that case).
Description
Get data of given column unless if does not exist (return NULL in that case).
Usage
getColumn(.data, colname)
Arguments
.data |
data frame |
colname |
column name |
Value
a vector
Get a mapping table with all possibilities of compartment names and their indexes knowing that compartment names can be provided as character or as integer.
Description
Get a mapping table with all possibilities of compartment names and their indexes knowing that compartment names can be provided as character or as integer.
Usage
getCompartmentMapping(compartments)
Arguments
compartments |
list of compartments |
Value
a tibble with two columns: INDEX and NAME
Get all covariates (fixed / time-varying / event covariates).
Description
Get all covariates (fixed / time-varying / event covariates).
Usage
getCovariates(object)
## S4 method for signature 'covariates'
getCovariates(object)
## S4 method for signature 'arm'
getCovariates(object)
## S4 method for signature 'arms'
getCovariates(object)
## S4 method for signature 'dataset'
getCovariates(object)
Arguments
object |
any object |
Value
all covariates from object
Get dataset max time.
Description
Get dataset max time.
Usage
getDatasetMaxTime(dataset)
Arguments
dataset |
dataset |
Value
max time of dataset, whatever its form, 2-dimensional or structured
Get all event-related covariates.
Description
Get all event-related covariates.
Usage
getEventCovariates(object)
## S4 method for signature 'covariates'
getEventCovariates(object)
## S4 method for signature 'arm'
getEventCovariates(object)
## S4 method for signature 'arms'
getEventCovariates(object)
## S4 method for signature 'dataset'
getEventCovariates(object)
Arguments
object |
any object |
Value
all event-related covariates from object
Get list of event iterations.
Description
Get list of event iterations.
Usage
getEventIterations(events, maxTime)
Arguments
events |
events |
maxTime |
simulation max time |
Value
a list of event iterations
Get all fixed covariates.
Description
Get all fixed covariates.
Usage
getFixedCovariates(object)
## S4 method for signature 'covariates'
getFixedCovariates(object)
## S4 method for signature 'arm'
getFixedCovariates(object)
## S4 method for signature 'arms'
getFixedCovariates(object)
## S4 method for signature 'dataset'
getFixedCovariates(object)
Arguments
object |
any object |
Value
all fixed covariates from object
Get scheduling mode for furrr (see argument 'scheduling' available in furrr options).
Description
Get scheduling mode for furrr (see argument 'scheduling' available in furrr options).
Usage
getFurrrScheduling(parallel)
Arguments
parallel |
use parallel computing with furrr, logical value |
Value
1 for parallel computing, 0 otherwise
Get all IOV objects.
Description
Get all IOV objects.
Usage
getIOVs(object)
## S4 method for signature 'arm'
getIOVs(object)
## S4 method for signature 'arms'
getIOVs(object)
## S4 method for signature 'dataset'
getIOVs(object)
Arguments
object |
any object |
Value
all IOV's from object
Get initial conditions at simulation start-up.
Description
Get initial conditions at simulation start-up.
Usage
getInitialConditions(subdataset, iteration, cmtNames)
Arguments
subdataset |
subset of the dataset to simulate |
iteration |
current iteration |
cmtNames |
compartment names |
Value
named numeric vector with the new initial conditions
Get all occasions.
Description
Get all occasions.
Usage
getOccasions(object)
## S4 method for signature 'arm'
getOccasions(object)
## S4 method for signature 'arms'
getOccasions(object)
## S4 method for signature 'dataset'
getOccasions(object)
Arguments
object |
any object |
Value
all occasions from object
Get random seed value.
Description
Get random seed value.
Usage
getRandomSeedValue()
Value
random seed value generated based on time
Get seed value.
Description
Get seed value.
Usage
getSeed(seed = NULL)
Arguments
seed |
user-input seed, NULL it not specified |
Value
a seed value, integer
Get seed for dataset export.
Description
Get seed for dataset export.
Usage
getSeedForDatasetExport(seed, progress)
Arguments
seed |
original seed |
progress |
simulation progress |
Value
the seed value used to export the dataset
Get seed for iteration.
Description
Get seed for iteration.
Usage
getSeedForIteration(seed, progress)
Arguments
seed |
original seed |
progress |
simulation progress |
Value
the seed value to be used for the given replicate number and iteration
Get seed for parameter uncertainty sampling.
Description
Get seed for parameter uncertainty sampling.
Usage
getSeedForParametersSampling(seed)
Arguments
seed |
original seed |
Value
the seed value used to sample parameter uncertainty
Get simulation engine type.
Description
Get simulation engine type.
Usage
getSimulationEngineType(dest)
Arguments
dest |
destination engine, string form |
Value
simulation engine type
Get splitting configuration for parallel export.
Description
Get splitting configuration for parallel export.
Usage
getSplittingConfiguration(dataset, hardware)
Arguments
dataset |
Campsis dataset to export |
hardware |
hardware configuration |
Value
splitting configuration list (if 'parallel_dataset' is enabled) or NA (if 'parallel_dataset' disabled or if the length of the dataset is less than the dataset export slice size)
Get all time-varying covariates.
Description
Get all time-varying covariates.
Usage
getTimeVaryingCovariates(object)
## S4 method for signature 'covariates'
getTimeVaryingCovariates(object)
## S4 method for signature 'arm'
getTimeVaryingCovariates(object)
## S4 method for signature 'arms'
getTimeVaryingCovariates(object)
## S4 method for signature 'dataset'
getTimeVaryingCovariates(object)
Arguments
object |
any object |
Value
all time-varying covariates from object
Get all time-varying variables. These variables are likely to be influenced by the NOCB mode chosen and by the 'nocbvars' vector.
Description
Get all time-varying variables. These variables are likely to be influenced by the NOCB mode chosen and by the 'nocbvars' vector.
Usage
getTimeVaryingVariables(object)
Arguments
object |
dataset |
Value
character vector with all time-varying variables of the dataset
Get all distinct times for the specified object.
Description
Get all distinct times for the specified object.
Usage
getTimes(object)
## S4 method for signature 'observations_set'
getTimes(object)
## S4 method for signature 'arm'
getTimes(object)
## S4 method for signature 'arms'
getTimes(object)
## S4 method for signature 'events'
getTimes(object)
## S4 method for signature 'dataset'
getTimes(object)
Arguments
object |
any object |
Value
numeric vector with all unique times, sorted
Hardware settings class.
Description
Hardware settings class.
Slots
cpu
number of CPU cores to use, default is 1
replicate_parallel
enable parallel computing for replicates, default is FALSE
scenario_parallel
enable parallel computing for scenarios, default is FALSE
slice_parallel
enable parallel computing for slices, default is FALSE
slice_size
number of subjects per simulated slice, default is NULL (auto-configured by Campsis depending on the specified engine)
dataset_parallel
enable parallelisation when exporting dataset into a table, default is FALSE
dataset_slice_size
dataset slice size when exporting subjects to a table, default is 500. Only applicable if 'dataset_parallel' is enabled.
auto_setup_plan
auto-setup plan with the library future, default is FALSE
Convert hours to hours (do nothing).
Description
Convert hours to hours (do nothing).
Usage
hours(x)
Arguments
x |
numeric vector in hours |
Value
numeric vector in hours
Import the whole campsismod package into NAMESPACE when parsed by 'roxygen'.
Description
Import the whole campsismod package into NAMESPACE when parsed by 'roxygen'.
Usage
importCampsismodToNamespace()
Value
always TRUE
Infusion class.
Description
Infusion class.
Slots
duration
infusion duration, distribution list
rate
infusion rate, distribution list
Infusion wrapper class.
Description
Infusion wrapper class.
Internal settings class (transient object from the simulation settings).
Description
Internal settings class (transient object from the simulation settings).
Slots
dataset_summary
dataset summary
progress
simulation progress
iterations
list of event iterations
Is the given bootstrap empty.
Description
Is the given bootstrap empty.
Usage
isEmptyBootstrap(object)
Arguments
object |
bootstrap object |
Value
logical value TRUE/FALSE
Left-join IIV matrix.
Description
Left-join IIV matrix.
Usage
leftJoinIIV(table, iiv)
Arguments
table |
dataset, tabular form |
iiv |
IIV matrix |
Value
updated table with IIV matrix
Return the number of subjects contained in this arm.
Description
Return the number of subjects contained in this arm.
Usage
## S4 method for signature 'arm'
length(x)
Arguments
x |
arm |
Value
a number
Return the number of repetition cycles.
Description
Return the number of repetition cycles.
Usage
## S4 method for signature 'cyclic_schedule'
length(x)
Arguments
x |
schedule object |
Value
a number
Return the number of subjects contained in this dataset.
Description
Return the number of subjects contained in this dataset.
Usage
## S4 method for signature 'dataset'
length(x)
Arguments
x |
dataset |
Value
a number
Return the number of repetition cycles.
Description
Return the number of repetition cycles.
Usage
## S4 method for signature 'repeat_at_schedule'
length(x)
Arguments
x |
schedule object |
Value
a number
Merge time-varying covariates into a single data frame. This last data frame will be merged afterwards with all treatment and observation rows.
Description
Merge time-varying covariates into a single data frame. This last data frame will be merged afterwards with all treatment and observation rows.
Usage
mergeTimeVaryingCovariates(covariates, ids_within_arm, arm_offset)
Arguments
covariates |
covariates, only time-varying covariates will be extracted |
ids_within_arm |
ids within the current arm being sampled |
arm_offset |
arm offset (in term of ID's) |
Value
a data.frame
Convert minutes to hours.
Description
Convert minutes to hours.
Usage
minutes(x)
Arguments
x |
numeric vector in minutes |
Value
numeric vector in hours
Convert pharma months (1 month = 4 weeks) to hours.
Description
Convert pharma months (1 month = 4 weeks) to hours.
Usage
months(x)
Arguments
x |
numeric vector in months |
Value
numeric vector in hours
mrgsolve engine class.
Description
mrgsolve engine class.
NHANES database (demographics and body measure data combined, from 2017-2018).
Description
NHANES database (demographics and body measure data combined, from 2017-2018).
Usage
nhanes
Format
data frame
- BS_ID
Original identifier
- SEX
Sex: 1 for males, 2 for females
- AGE
Age in years
- BW
Body weight in kg
- BMI
Body mass index
- HT
Height in cm
Source
https://wwwn.cdc.gov/Nchs/Nhanes/2017-2018/DEMO_J.XPT
https://wwwn.cdc.gov/Nchs/Nhanes/2017-2018/BMX_J.XPT
NOCB settings class.
Description
NOCB settings class.
Slots
enable
enable/disable next-observation carried backward mode (NOCB), default value is TRUE for mrgsolve, FALSE for RxODE
variables
variable names subject to NOCB behavior (see vignette for more info)
Filter CAMPSIS output on observation rows.
Description
Filter CAMPSIS output on observation rows.
Usage
obsOnly(x)
Arguments
x |
data frame, CAMPSIS output |
Value
a data frame with the observation rows
Observations class.
Description
Observations class.
Slots
times
observation times, numeric vector
compartment
compartment index (integer) or name (character)
dv
observed values, numeric vector (FOR EXTERNAL USE)
Observations set class.
Description
Observations set class.
Occasion class.
Description
Occasion class.
Slots
colname
single character value representing the column name related to this occasion
values
occasion values, integer vector, same length as dose_numbers
dose_numbers
associated dose numbers, integer vector, same length as values
Occasions class.
Description
Occasions class.
Check if the current session is on CI (e.g. GitHub actions).
Description
Check if the current session is on CI (e.g. GitHub actions).
Usage
onCI()
Value
logical value TRUE/FALSE
Check if the current session is on CRAN. The objective is to potentially suppress long tasks to be run on CRAN (long tests or vignettes).
Description
Check if the current session is on CRAN. The objective is to potentially suppress long tasks to be run on CRAN (long tests or vignettes).
Usage
onCran()
Value
logical value TRUE/FALSE
Output function class.
Description
Output function class.
Slots
fun
function or purrr-style lambda formula, first argument 'x' must be the results
args
extra arguments, named list
packages
packages that must be loaded to execute the given function, character vector
level
either 'scenario' or 'replicate'. Default is 'scenario'.
Preprocess ARM column. Add ARM equation in model automatically.
Description
Preprocess ARM column. Add ARM equation in model automatically.
Usage
preprocessArmColumn(dataset, model)
Arguments
dataset |
current dataset, data frame form |
model |
model |
Value
updated model
Pre-process destination engine. Throw an error message if the destination engine is not installed.
Description
Pre-process destination engine. Throw an error message if the destination engine is not installed.
Usage
preprocessDest(dest)
Arguments
dest |
destination engine |
Value
'rxode2', 'RxODE' or 'mrgsolve'
Preprocess 'dosing' argument.
Description
Preprocess 'dosing' argument.
Usage
preprocessDosing(dosing)
Arguments
dosing |
dosing argument, logical value |
Value
user value, if not specified, return FALSE (observations only)
Pre-process events.
Description
Pre-process events.
Usage
preprocessEvents(events)
Arguments
events |
interruption events |
Preprocess subjects ID's.
Description
Preprocess subjects ID's.
Usage
preprocessIds(dataset)
Arguments
dataset |
current dataset, data frame form |
Value
list of consecutive ID's
Preprocess 'nocbvars' argument.
Description
Preprocess 'nocbvars' argument.
Usage
preprocessNocbvars(nocbvars)
Arguments
nocbvars |
nocbvars argument, character vector |
Pre-process outfun argument.
Description
Pre-process outfun argument.
Usage
preprocessOutfun(outfun)
Arguments
outfun |
function, lambda formula or output function object |
Value
an output function
Preprocess 'outvars' argument. 'Outvars' is a character vector which tells CAMPSIS the mandatory columns to keep in the output dataframe.
Description
Preprocess 'outvars' argument. 'Outvars' is a character vector which tells CAMPSIS the mandatory columns to keep in the output dataframe.
Usage
preprocessOutvars(outvars)
Arguments
outvars |
character vector or function |
Value
outvars
Preprocess 'replicates' argument.
Description
Preprocess 'replicates' argument.
Usage
preprocessReplicates(replicates, model)
Arguments
replicates |
number of replicates |
model |
Campsis model (class 'campsis_model' or 'replicated_campsis_model') |
Value
number of replicates to simulate
Pre-process scenarios.
Description
Pre-process scenarios.
Usage
preprocessScenarios(scenarios)
Arguments
scenarios |
scenarios |
Preprocess the simulation settings.
Description
Preprocess the simulation settings.
Usage
preprocessSettings(settings, dest)
Arguments
settings |
simulation settings |
dest |
destination engine |
Value
updated simulation settings
Preprocess 'slices' argument.
Description
Preprocess 'slices' argument.
Usage
preprocessSlices(slices, maxID)
Arguments
slices |
slices argument corresponding to the number of subjects simulated at once |
Value
slices if not NULL, otherwise total number of subjects
Preprocess TSLD and TDOS columns according to given dataset configuration.
Description
Preprocess TSLD and TDOS columns according to given dataset configuration.
Usage
preprocessTSLDAndTDOSColumn(table, config)
Arguments
table |
current table |
config |
dataset config |
Value
updated table
Pre-process tablefun argument.
Description
Pre-process tablefun argument.
Usage
preprocessTablefun(fun)
Arguments
fun |
function or lambda formula |
Value
a function in any case
Process time-related columns according to given dataset configuration.
Description
Process time-related columns according to given dataset configuration.
Usage
processAllTimeColumns(table, config)
Arguments
table |
current table |
config |
dataset config |
Value
updated table
Process arm labels. Arm identifiers in ARM column are replaced by arm labels as soon as one arm label is provided.
Description
Process arm labels. Arm identifiers in ARM column are replaced by arm labels as soon as one arm label is provided.
Usage
processArmLabels(campsis, arms)
Arguments
campsis |
CAMPSIS output |
arms |
all treatment arms |
Value
updated CAMPSIS output with arm labels instead of arm identifiers
Process 'DROP_OTHERS'.
Description
Process 'DROP_OTHERS'.
Usage
processDropOthers(x, outvars = character(0), dropOthers)
Arguments
x |
the current data frame |
outvars |
variables to keep |
dropOthers |
logical value |
Value
processed data frame
Preprocess arguments of the simulate method.
Description
Preprocess arguments of the simulate method.
Usage
processSimulateArguments(model, dataset, dest, outvars, dosing, settings)
Arguments
model |
CAMPSIS model |
dataset |
dataset, data.frame form |
dest |
destination engine |
outvars |
outvars |
dosing |
add dosing information, logical value |
settings |
simulation settings |
Value
a simulation configuration
Progress settings class.
Description
Progress settings class.
Slots
tick_slice
tick() is called after each simulated slice, default is TRUE. In some cases, when the number of subjects per slice is low, it may be useful disable this flag, to improve performance issues.
Protocol class.
Description
Protocol class.
Remove initial conditions.
Description
Remove initial conditions.
Usage
removeInitialConditions(model)
Arguments
model |
CAMPSIS model |
Value
same model without initial conditions
Reorder output columns.
Description
Reorder output columns.
Usage
reorderColumns(results, dosing)
Arguments
results |
RxODE/mrgsolve output |
dosing |
dosing information, logical value |
Value
reordered dataframe
Repeat schedule.
Description
Repeat schedule.
Usage
repeatSchedule(x, schedule)
## S4 method for signature 'numeric,cyclic_schedule'
repeatSchedule(x, schedule)
## S4 method for signature 'numeric,repeat_at_schedule'
repeatSchedule(x, schedule)
## S4 method for signature 'numeric,undefined_schedule'
repeatSchedule(x, schedule)
Arguments
x |
object to repeat the schedule |
schedule |
initial times vector |
Value
resulting times vector
'Repeat at' schedule class.
Description
'Repeat at' schedule class.
Slots
times
times at which the event is repeated, numeric vector
Repeated schedule class. See this class as an interface.
Description
Repeated schedule class. See this class as an interface.
Retrieve the parameter value (standardized) for the specified parameter name.
Description
Retrieve the parameter value (standardized) for the specified parameter name.
Usage
retrieveParameterValue(model, paramName, default = NULL, mandatory = FALSE)
Arguments
model |
model |
paramName |
parameter name |
default |
default value if not found |
mandatory |
must be in model or not |
Value
the standardized parameter value or the given default value if not found
RxODE/rxode2 engine class.
Description
RxODE/rxode2 engine class.
Slots
rxode2
logical field to indicate if CAMPSIS should use rxode2 (field set to TRUE) or RxODE (field set to FALSE). Default is TRUE.
Sample generic object.
Description
Sample generic object.
Usage
sample(object, n, ...)
## S4 method for signature 'constant_distribution,integer'
sample(object, n)
## S4 method for signature 'fixed_distribution,integer'
sample(object, n)
## S4 method for signature 'function_distribution,integer'
sample(object, n)
## S4 method for signature 'bootstrap_distribution,integer'
sample(object, n)
## S4 method for signature 'bolus,integer'
sample(object, n, ...)
## S4 method for signature 'infusion,integer'
sample(object, n, ...)
## S4 method for signature 'observations,integer'
sample(object, n, ...)
## S4 method for signature 'covariate,integer'
sample(object, n)
## S4 method for signature 'bootstrap,integer'
sample(object, n)
Arguments
object |
generic object |
n |
number of samples required |
... |
extra arguments |
Value
sampling result
Sample covariates list.
Description
Sample covariates list.
Usage
sampleCovariatesList(covariates, ids_within_arm, subset)
Arguments
covariates |
list of covariates to sample |
ids_within_arm |
ids within the current arm being sampled |
subset |
take subset of original values because export is parallelised |
Value
a dataframe of n rows, 1 column per covariate
Sample a distribution and return a tibble.
Description
Sample a distribution and return a tibble.
Usage
sampleDistributionAsTibble(distribution, n, colname)
Arguments
distribution |
any distribution |
n |
number of desired samples |
colname |
name of the unique column in tibble |
Value
a tibble of n rows and 1 column
Sample time-varying covariates.
Description
Sample time-varying covariates.
Usage
sampleTimeVaryingCovariates(object, armID, needsDV)
Arguments
object |
time-varying covariates, data.frame form |
armID |
treatment arm ID |
needsDV |
append extra column DV, logical value |
Value
a data.frame
Scatter plot (or X vs Y plot).
Description
Scatter plot (or X vs Y plot).
Usage
scatterPlot(x, output, colour = NULL, time = NULL)
Arguments
x |
data frame |
output |
the 2 variables to show, character vector |
colour |
variable(s) to colour |
time |
the time to look at those 2 variables, if NULL, min time is used (usually 0) |
Value
a ggplot object
Scenario class.
Description
Scenario class.
Slots
name
scenario name, single character string
model
either a CAMPSIS model, a function or lambda-style formula
dataset
either a CAMPSIS dataset, a function or lambda-style formula
Scenarios class.
Description
Scenarios class.
Convert seconds to hours.
Description
Convert seconds to hours.
Usage
seconds(x)
Arguments
x |
numeric vector in seconds |
Value
numeric vector in hours
Set the label.
Description
Set the label.
Usage
setLabel(object, x)
## S4 method for signature 'arm,character'
setLabel(object, x)
Arguments
object |
any object that has a label |
x |
the new label |
Value
the updated object
Set the seed. The goal of this method is to centralize all calls to the R method 'set.seed'.
Description
Set the seed. The goal of this method is to centralize all calls to the R method 'set.seed'.
Usage
setSeed(seed)
Arguments
seed |
seed value, not NULL |
Set the number of subjects.
Description
Set the number of subjects.
Usage
setSubjects(object, x)
## S4 method for signature 'arm,integer'
setSubjects(object, x)
## S4 method for signature 'dataset,integer'
setSubjects(object, x)
Arguments
object |
any object |
x |
the new number of subjects |
Value
the updated object
Setup default plan for the given simulation or hardware settings. This plan will prioritise the distribution of workers in the following order: 1) Replicates (if 'replicate_parallel' is enabled) 2) Scenarios (if 'scenario_parallel' is enabled) 3) Dataset export / slices (if 'dataset_export' or 'slice_parallel' is enabled)
Description
Setup default plan for the given simulation or hardware settings. This plan will prioritise the distribution of workers in the following order: 1) Replicates (if 'replicate_parallel' is enabled) 2) Scenarios (if 'scenario_parallel' is enabled) 3) Dataset export / slices (if 'dataset_export' or 'slice_parallel' is enabled)
Usage
setupPlanDefault(object)
Arguments
object |
simulation or hardware settings |
Value
nothing
Setup plan as sequential (i.e. no parallelisation).
Description
Setup plan as sequential (i.e. no parallelisation).
Usage
setupPlanSequential()
Value
nothing
Shaded plot (or prediction interval plot).
Description
Shaded plot (or prediction interval plot).
Usage
shadedPlot(
x,
output,
colour = NULL,
strat_extra = NULL,
level = 0.9,
alpha = 0.25
)
Arguments
x |
data frame |
output |
variable to show |
colour |
variable(s) to colour |
strat_extra |
variable(s) to stratify, but not to colour (useful for use with facet_wrap) |
level |
PI level, default is 0.9 (90% PI) |
alpha |
alpha parameter (transparency) given to geom_ribbon |
Value
a ggplot object
Simulate function.
Description
Simulate function.
Usage
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'replicated_campsis_model,
## dataset,
## character,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'campsis_model,
## dataset,
## character,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'campsis_model,
## tbl_df,
## character,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'campsis_model,
## data.frame,
## character,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'campsis_model,
## tbl_df,
## rxode_engine,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
## S4 method for signature
## 'campsis_model,
## tbl_df,
## mrgsolve_engine,
## events,
## scenarios,
## function,
## character,
## output_function,
## integer,
## integer,
## logical,
## simulation_settings'
simulate(
model,
dataset,
dest = NULL,
events = NULL,
scenarios = NULL,
tablefun = NULL,
outvars = NULL,
outfun = NULL,
seed = NULL,
replicates = 1,
dosing = FALSE,
settings = NULL
)
Arguments
model |
generic CAMPSIS model |
dataset |
CAMPSIS dataset or 2-dimensional table |
dest |
destination simulation engine, default is 'RxODE' |
events |
interruption events |
scenarios |
list of scenarios to be simulated |
tablefun |
function or lambda formula to apply on exported 2-dimensional dataset |
outvars |
variables to output in resulting dataframe |
outfun |
an output function to apply on the simulation results. Type ?Outfun for more info. |
seed |
seed value |
replicates |
number of replicates, default is 1 |
dosing |
output dosing information, default is FALSE |
settings |
advanced simulation settings |
Value
dataframe with all results
Simulation delegate (several replicates).
Description
Simulation delegate (several replicates).
Usage
simulateDelegate(
model,
dataset,
dest,
events,
scenarios,
tablefun,
outvars,
outfun,
seed,
replicates,
dosing,
settings
)
Arguments
model |
generic CAMPSIS model |
dataset |
CAMPSIS dataset or 2-dimensional table |
dest |
destination simulation engine, default is 'RxODE' |
events |
interruption events |
scenarios |
list of scenarios to be simulated |
tablefun |
function or lambda formula to apply on exported 2-dimensional dataset |
outvars |
variables to output in resulting dataframe |
outfun |
an output function to apply on the simulation results. Type ?Outfun for more info. |
seed |
seed value |
replicates |
number of replicates, default is 1 |
dosing |
output dosing information, default is FALSE |
settings |
advanced simulation settings |
Value
a data frame with the results
Simulation delegate core (single replicate).
Description
Simulation delegate core (single replicate).
Usage
simulateDelegateCore(
model,
dataset,
dest,
events,
tablefun,
outvars,
outfun,
seed,
replicates,
dosing,
settings
)
Arguments
model |
generic CAMPSIS model |
dataset |
CAMPSIS dataset or 2-dimensional table |
dest |
destination simulation engine, default is 'RxODE' |
events |
interruption events |
tablefun |
function or lambda formula to apply on exported 2-dimensional dataset |
outvars |
variables to output in resulting dataframe |
outfun |
an output function to apply on the simulation results. Type ?Outfun for more info. |
seed |
seed value |
replicates |
number of replicates, default is 1 |
dosing |
output dosing information, default is FALSE |
settings |
advanced simulation settings |
Value
a data frame with the results
Simulation scenarios.
Description
Simulation scenarios.
Usage
simulateScenarios(
scenarios,
model,
dataset,
dest,
events,
tablefun,
outvars,
outfun,
seed,
replicates,
dosing,
settings
)
Arguments
scenarios |
list of scenarios to be simulated |
model |
generic CAMPSIS model |
dataset |
CAMPSIS dataset or 2-dimensional table |
dest |
destination simulation engine, default is 'RxODE' |
events |
interruption events |
tablefun |
function or lambda formula to apply on exported 2-dimensional dataset |
outvars |
variables to output in resulting dataframe |
outfun |
an output function to apply on the simulation results. Type ?Outfun for more info. |
seed |
seed value |
replicates |
number of replicates, default is 1 |
dosing |
output dosing information, default is FALSE |
settings |
advanced simulation settings |
Value
a data frame with the results
Simulation engine class.
Description
Simulation engine class.
Simulation progress class.
Description
Simulation progress class.
Arguments
replicates |
total number of replicates to simulate |
scenarios |
total number of scenarios to simulate |
iterations |
total number of iterations to simulate |
slices |
total number of slices to simulate |
replicate |
current replicate number being simulated |
scenario |
current scenario number being simulated |
iteration |
current iteration number being simulated |
slice |
current slice number being simulated |
progressor |
progressr progressor |
hardware |
hardware settings |
Simulation settings class.
Description
Simulation settings class.
Slots
hardware
hardware settings object
solver
solver settings object
nocb
NOCB settings object
declare
declare settings (mrgsolve only)
progress
progress settings
replication
replication settings
internal
internal settings
Solver settings class. See ?mrgsolve::update. See ?rxode2::rxSolve.
Description
Solver settings class. See ?mrgsolve::update. See ?rxode2::rxSolve.
Slots
atol
absolute solver tolerance, default is 1e-08
rtol
relative solver tolerance, default is 1e-08
hmax
limit how big a solver step can be, default is NA
maxsteps
max steps between 2 integration times (e.g. when observations records are far apart), default is 70000
method
solver method, for RxODE/rxode2 only: 'liblsoda' (default), 'lsoda', 'dop853', 'indLin'. Mrgsolve's method is always 'lsoda'.
Spaghetti plot.
Description
Spaghetti plot.
Usage
spaghettiPlot(x, output, colour = NULL)
Arguments
x |
data frame |
output |
variable to show |
colour |
variable(s) to colour |
Value
plot
Split dataset according to config.
Description
Split dataset according to config.
Usage
splitDataset(dataset, config)
Arguments
dataset |
Campsis dataset to export |
config |
current iteration in future_map_dfr |
Value
a subset of the given dataset
Standardise time to hours.
Description
Standardise time to hours.
Usage
standardiseTime(x, unit)
Arguments
x |
numeric time vector |
unit |
unit of x, single character value |
Value
numeric vector with the times converted to hours
Time-varying covariate class.
Description
Time-varying covariate class.
Convert dataset to dataset summary (internal method).
Description
Convert dataset to dataset summary (internal method).
Usage
toDatasetSummary(dataset)
Value
a dataset summary
Convert user-given distribution to an explicit CAMPSIS distribution. Passed distribution can be: - a NULL value. In that case, it will be converted into an 'UndefinedDistribution'. - a single numeric value. In that case, it will be converted into a 'ConstantDistribution'. - a numeric vector. In that case, it will be converted into a 'FixedDistribution'. - all available types of distribution. In this case, no conversion is applied.
Description
Convert user-given distribution to an explicit CAMPSIS distribution. Passed distribution can be: - a NULL value. In that case, it will be converted into an 'UndefinedDistribution'. - a single numeric value. In that case, it will be converted into a 'ConstantDistribution'. - a numeric vector. In that case, it will be converted into a 'FixedDistribution'. - all available types of distribution. In this case, no conversion is applied.
Usage
toExplicitDistribution(distribution)
Arguments
distribution |
user-given distribution |
Value
a distribution object
Treatment class.
Description
Treatment class.
Treatment IOV class.
Description
Treatment IOV class.
Slots
colname
name of the column that will be output in dataset
distribution
distribution
dose_numbers
associated dose numbers, integer vector, same length as values
Treatment IOV's class.
Description
Treatment IOV's class.
Undefined distribution class. This type of object is automatically created in method toExplicitDistribution() when the user does not provide a concrete distribution. This is because S4 objects do not accept NULL values.
Description
Undefined distribution class. This type of object is automatically created in method toExplicitDistribution() when the user does not provide a concrete distribution. This is because S4 objects do not accept NULL values.
Undefined schedule class.
Description
Undefined schedule class.
Unite the given column names.
Description
Unite the given column names.
Usage
uniteColumns(x, columns, colname, factor = TRUE)
Arguments
x |
data frame, CAMPSIS output |
columns |
columns to unify |
colname |
destination column name |
factor |
factor the destination column |
Value
a data frame
Unwrap treatment.
Description
Unwrap treatment.
Usage
unwrapTreatment(object)
## S4 method for signature 'bolus'
unwrapTreatment(object)
## S4 method for signature 'infusion'
unwrapTreatment(object)
## S4 method for signature 'bolus_wrapper'
unwrapTreatment(object)
## S4 method for signature 'infusion_wrapper'
unwrapTreatment(object)
## S4 method for signature 'treatment'
unwrapTreatment(object)
## S4 method for signature 'arm'
unwrapTreatment(object)
## S4 method for signature 'arms'
unwrapTreatment(object)
## S4 method for signature 'dataset'
unwrapTreatment(object)
Arguments
object |
any object |
Value
updated object
Update the number of additional doses (ADDL).
Description
Update the number of additional doses (ADDL).
Usage
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'bolus_wrapper,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'infusion_wrapper,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'bolus,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'infusion,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'treatment,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'arm,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'arms,integer,character'
updateADDL(object, addl, ref = NULL)
## S4 method for signature 'dataset,integer,character'
updateADDL(object, addl, ref = NULL)
Arguments
object |
generic object |
addl |
new number of additional doses |
ref |
reference treatment name |
Value
updated object
Update amount.
Description
Update amount.
Usage
updateAmount(object, amount, ref)
## S4 method for signature 'bolus,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'infusion,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'bolus_wrapper,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'infusion_wrapper,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'treatment,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'arm,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'arms,numeric,character'
updateAmount(object, amount, ref)
## S4 method for signature 'dataset,numeric,character'
updateAmount(object, amount, ref)
Arguments
object |
generic object |
amount |
new amount |
ref |
reference treatment name |
Value
updated object
Update the inter-dose interval (II).
Description
Update the inter-dose interval (II).
Usage
updateII(object, ii, ref = NULL)
## S4 method for signature 'bolus_wrapper,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'infusion_wrapper,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'bolus,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'infusion,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'treatment,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'arm,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'arms,numeric,character'
updateII(object, ii, ref = NULL)
## S4 method for signature 'dataset,numeric,character'
updateII(object, ii, ref = NULL)
Arguments
object |
generic object |
ii |
new inter-dose interval |
ref |
reference treatment name |
Value
updated object
Update the repeat field (argument 'rep' in Bolus and Infusion constructors).
Description
Update the repeat field (argument 'rep' in Bolus and Infusion constructors).
Usage
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'bolus_wrapper,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'infusion_wrapper,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'bolus,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'infusion,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'treatment,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'arm,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'arms,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
## S4 method for signature 'dataset,repeated_schedule,character'
updateRepeat(object, rep, ref = NULL)
Arguments
object |
generic object |
rep |
repeated dosing schedule (definition) object |
ref |
reference treatment name |
Value
updated object
VPC plot.
Description
VPC plot.
Usage
vpcPlot(x, scenarios = NULL, level = 0.9, alpha = 0.15)
Arguments
x |
data frame, output of CAMPSIS with replicates |
scenarios |
scenarios, character vector, NULL is default |
level |
PI level, default is 0.9 (90% PI) |
alpha |
alpha parameter (transparency) given to geom_ribbon |
Value
a ggplot object
Convert weeks to hours.
Description
Convert weeks to hours.
Usage
weeks(x)
Arguments
x |
numeric vector in weeks |
Value
numeric vector in hours
Convert pharma years (1 year = 12*4 weeks) to hours.
Description
Convert pharma years (1 year = 12*4 weeks) to hours.
Usage
years(x)
Arguments
x |
numeric vector in years |
Value
numeric vector in hours