First import the campsis
package:
library(campsis)
Load 2-compartment PK model from built-in model library:
<- model_suite$pk$`2cpt_fo` model
Create your dataset in CAMPSIS. For instance, let’s give 1000mg QD for 3 days and observe every hour.
<- Dataset(10) %>%
dataset add(Bolus(time=0, amount=1000, ii=24, addl=2)) %>%
add(Observations(times=seq(0,72, by=1)))
Simulate this very simple protocol:
<- model %>% simulate(dataset, seed=1)
results head(results)
## # A tibble: 6 × 22
## ID TIME ARM TVKA TVVC TVVP TVQ TVCL TVPROP_RUV KA VC VP
## <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 0 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## 2 1 1 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## 3 1 2 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## 4 1 3 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## 5 1 4 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## 6 1 5 0 1 60 10 2 3 0.1 0.960 83.8 12.5
## # … with 10 more variables: Q <dbl>, CL <dbl>, PROP_RUV <dbl>, CONC <dbl>,
## # IPRED <dbl>, W <dbl>, Y <dbl>, A_ABS <dbl>, A_CENTRAL <dbl>,
## # A_PERIPHERAL <dbl>
Plot these results:
spaghettiPlot(results, "CONC")
A shaded plot may also be used:
shadedPlot(results, "CONC")
We can also simulate two different treatment arms. Say the first arm receives 1000mg QD and the second arm 2000mg QD. This can be implemented as follows:
# First treatment arm
<- Arm(subjects=50, label="1000 mg QD") %>%
arm1 add(Bolus(time=0, amount=1000, ii=24, addl=2)) %>%
add(Observations(times=seq(0,72, by=1)))
# Second treatment arm
<- Arm(subjects=50, label="2000 mg QD") %>%
arm2 add(Bolus(time=0, amount=2000, ii=24, addl=2)) %>%
add(Observations(times=seq(0,72, by=1)))
<- Dataset() %>% add(c(arm1, arm2))
dataset
<- model %>% simulate(dataset, seed=1)
results shadedPlot(results, "CONC", scenarios="ARM")
We invite you to check out the other vignettes. Have fun with CAMPSIS!