Skip to contents

This vignette shows how to assess the potential of a drug to act as a perpetrator of drug-drug interactions with CYP and UGT enzymes and drug transporters. The live code contained in this document relies on the following R packages:

Regulatory background

In May-2024, ICH published a new harmonized guidance on the assessment of enzyme- or transporter-mediated drug interactions that will be adopted by the ICH-abiding regulatory agencies, including FDA, EMA and PMDA.

Currently (Nov-2024), the following guidance documents are provided by the individual regulatory authorities:

Drug properties

As a general concept, the risk for enzyme or transporter interactions is evaluated for a given drug exposure level that corresponds to the maximal unbound clinical exposure in the relevant pharmacokinetic compartment. For interactions with hepatic enzymes, the unbound maximal plasma concentration at steady state (\(I_{max,ss,u}\)) is considered, and for intestinal enzymes as victim of orally administered drugs, the maximal clinical dose, dissolved in a volume of 250 mg (\(I_{gut}\)).

For interactions with basolateral hepatic transporters (OATP1B1, OATP1B3), the unbound hepatic inlet concentration (\(I_{max,inlet,u}\)) is considered that is composed of the \(I_{max,ss,u}\) and a portal venous term reflecting the intestinally absorbed drug escaping gut metabolism.

These concentrations can be automatically derived from the following set of drug-specific parameters:

Parameter Parameter name Default Unit
Molar weight mw NA g/mol
Clinical dose dose NA mg
Maximal total plasma concentration (\(C_max\)) imaxss NA ng/ml
Fraction unbound (\(f_u\)) fu 1
Microsomal unbound fraction (\(f_{u,mic}\)) fumic 1
Blood-to-plasma concentration ratio (\(R_b\)) rb 1
Fraction absorbed (\(f_a\)) fa 1
Fraction escapting gut metabolism (\(f_g\)) fg 1
Absorption rate constant (\(k_a\)) ka 0.1 1/min
Solubility solubility Inf mg/l

The specification of the key compound parameters is therefore the first step in the formal analysis. In the scope of this package, these key parameters are aggregated into a ‘perpetrator’ object. The package contains a sample perpetrator object for the ficitional drug ‘examplinib’:

examplinib_parent
#> ----- DDI perpetrator object -----
#> name         examplinib                   
#> oral         TRUE                         
#> mw           492.6                        
#> dose         450          clinical dose   
#> imaxss       3530         study 001       
#> fu           0.023        study 002       
#> fumic        1            default         
#> rb           1            study 003       
#> fa           0.81         study 003       
#> fg           1            default         
#> ka           0.00267      unknown         
#> solubility   Inf          default

The ddir package provides multiple options to create perpetrator objects. In the simplest case, the function make_perpetrator() can be used:

perp <- make_perpetrator(
  name = "test",
  dose = 100,
  imaxss = 1000,
  mw = 500,
  oral = TRUE,
  fu = 1,
  fumic = 1,
  rb = 1,
  fa = 1,
  fg = 1,
  ka = 0.1,
  solubility = Inf
)

Other options are presented in a dedicated vignette (see vignette("load-data")).

To facilitate the generation of R notebook-based reports, property_table() can be used to print a markdown-formatted table of the key compound parameters:

property_table(examplinib_parent)
Compound parameters for examplinib
parameter value source
oral TRUE
\(MW\) (g/mol) 492.6
\(dose\) (mg) 450 clinical dose
\(C_{max,ss}\) (ng/ml) 3530 study 001
\(f_u\) 0.023 study 002
\(f_{u,mic}\) 1 default
\(R_B\) 1 study 003
\(F_a\) 0.81 study 003
\(F_g\) 1 default
\(k_a\) (1/min) 0.00267 unknown
\(solubility\) (mg/l) Inf default

Perpetrator concentrations

The relevant perpetrator concentrations (in \(\mu M\)) for a perpetrator compound can be determined using key_concentrations() - please see the documentation to this function for details about the calculations. While this function returns a named numeric vector of the naked concentrations, a markdown-formatted tabular output that can be directly embedded in R notebook documents can be generated using `conc_table()’:

key_concentrations(examplinib_parent)
#>         igut      imaxssu   imaxinletu   imaxintest 
#> 3654.0803898    0.1648193    0.1929384    6.5855664

conc_table(examplinib_parent)
Key perpetrator concentrations for examplinib
parameter value (\(ng/ml\)) value (\(\mu M\))
\(I_{gut}\) 1800000.0 3654.080
\(I_{max,ss,u}\) 81.2 0.165
\(I_{max,inlet,u}\) 95.0 0.193
\(I_{max,intestinal}\) 3244.1 6.586

Direct enzyme inhibition

CYP enzymes

basic_cyp_inhibition_risk(examplinib_parent, examplinib_cyp_inhibition_data)
#>       cyp    ki   kiu      r risk_hep    r_gut risk_intest
#> 1  CYP1A2    NA    NA     NA       NA       NA          NA
#> 2  CYP2B6    NA    NA     NA       NA       NA          NA
#> 3  CYP2C8 11.00 11.00 0.0150    FALSE       NA          NA
#> 4  CYP2C9  0.60  0.60 0.2747     TRUE       NA          NA
#> 5 CYP2C19  0.25  0.25 0.6593     TRUE       NA          NA
#> 6  CYP2D6    NA    NA     NA       NA       NA          NA
#> 7  CYP3A4 12.50 12.50 0.0132    FALSE 292.3264        TRUE

basic_cyp_inhibition_risk_table(examplinib_parent, examplinib_cyp_inhibition_data)
Risk for direct CYP inhibition by examplinib, basic model
CYP \(K_{i}\) (\(\mu M\)) \(K_{i,u}\) (\(\mu M\)) \(R\) risk (hepatic) \(R_{gut}\) risk (intestinal)
CYP1A2 NA NA NA
CYP2B6 NA NA NA
CYP2C8 11.00 11.00 0.015 No
CYP2C9 0.60 0.60 0.275 Yes
CYP2C19 0.25 0.25 0.659 Yes
CYP2D6 NA NA NA
CYP3A4 12.50 12.50 0.013 No 292.3 Yes

UGT enzymes

basic_ugt_inhibition_risk(examplinib_parent, examplinib_ugt_inhibition_data)
#>       ugt  kiu          r risk
#> 1  UGT1A1 7.50 0.02197591 TRUE
#> 2  UGT1A3 7.50 0.02197591 TRUE
#> 3  UGT1A4 7.50 0.02197591 TRUE
#> 4  UGT1A6 7.50 0.02197591 TRUE
#> 5  UGT1A9 1.90 0.08674701 TRUE
#> 6  UGT2B7 7.50 0.02197591 TRUE
#> 7 UGT2B15 7.50 0.02197591 TRUE
#> 8 UGT2B17 3.05 0.05403912 TRUE

basic_ugt_inhibition_risk_table(examplinib_parent, examplinib_ugt_inhibition_data)
Risk for UGT inhibition by examplinib, basic model
UGT \(K_{i,u}\) \(R\) risk
UGT1A1 7.50 0.022 Yes
UGT1A3 7.50 0.022 Yes
UGT1A4 7.50 0.022 Yes
UGT1A6 7.50 0.022 Yes
UGT1A9 1.90 0.087 Yes
UGT2B7 7.50 0.022 Yes
UGT2B15 7.50 0.022 Yes
UGT2B17 3.05 0.054 Yes

Time-dependent enzyme inhibition

basic_cyp_tdi_risk(examplinib_parent, examplinib_cyp_tdi_data)
#>      cyp   ki    fu kinact   kdeg    source        r risk
#> 1 CYP3A4 0.17 0.023   0.04 0.0193 study 001 2.718115 TRUE

basic_cyp_tdi_risk_table(examplinib_parent, examplinib_cyp_tdi_data)
Risk for CYP TDI by examplinib, basic model
CYP \(K_{I}\) (\(\mu M\)) \(f_u\) \(k_{inact}\) (1/h) \(k_{deg}\) (1/h) source \(R\) risk
CYP3A4 0.17 0.02 0.04 0.02 study 001 2.72 Yes

CYP induction

Fold-change method

static_cyp_induction_risk(examplinib_parent, examplinib_cyp_induction_data)
#>       cyp emax maxc    source maxc_imaxssu  risk
#> 1  CYP1A2 1.00    5 study 007         30.3 FALSE
#> 2  CYP2B6 1.00    5 study 007         30.3 FALSE
#> 3  CYP2C8   NA   NA                     NA    NA
#> 4  CYP2C9   NA   NA                     NA    NA
#> 5 CYP2C19   NA   NA                     NA    NA
#> 6  CYP2D6   NA   NA                     NA    NA
#> 7  CYP3A4 7.35    3 study 007         18.2  TRUE
#>                                                                 note
#> 1 caution: maximal tested concentration is less than 50-fold Cmax,u!
#> 2 caution: maximal tested concentration is less than 50-fold Cmax,u!
#> 3                                                                   
#> 4                                                                   
#> 5                                                                   
#> 6                                                                   
#> 7 caution: maximal tested concentration is less than 50-fold Cmax,u!

static_cyp_induction_risk_table(examplinib_parent, examplinib_cyp_induction_data)
Risk for hepatic CYP induction by examplinib, basic mRNA fold-change method
CYP \(E_{max}\) \(max c\) (\(\mu M\)) source \(max c/C_{max,ss,u}\) risk notes
CYP1A2 1.00 5 study 007 30.3 No Risk cannot be fully excluded
CYP2B6 1.00 5 study 007 30.3 No Risk cannot be fully excluded
CYP2C8 NA NA NA
CYP2C9 NA NA NA
CYP2C19 NA NA NA
CYP2D6 NA NA NA
CYP3A4 7.35 3 study 007 18.2 Yes

Basic kinetic model

kinetic_cyp_induction_risk(examplinib_parent, examplinib_cyp_induction_data)
#>       cyp emax ec50 maxc    source         r risk
#> 1  CYP1A2 1.00   NA    5 study 007        NA   NA
#> 2  CYP2B6 1.00   NA    5 study 007        NA   NA
#> 3  CYP2C8   NA   NA   NA                  NA   NA
#> 4  CYP2C9   NA   NA   NA                  NA   NA
#> 5 CYP2C19   NA   NA   NA                  NA   NA
#> 6  CYP2D6   NA   NA   NA                  NA   NA
#> 7  CYP3A4 7.35 1.64    3 study 007 0.2134856 TRUE

kinetic_cyp_induction_risk_table(examplinib_parent, examplinib_cyp_induction_data)
Risk for CYP induction by examplinib, basic kinetic model
CYP \(E_{max}\) \(EC_{50}\) (\(\mu M\)) source \(R\) risk
CYP1A2 1.00 NA study 007 NA
CYP2B6 1.00 NA study 007 NA
CYP2C8 NA NA NA
CYP2C9 NA NA NA
CYP2C19 NA NA NA
CYP2D6 NA NA NA
CYP3A4 7.35 1.64 study 007 0.21 Yes
mech_stat_cyp_risk(examplinib_parent, examplinib_cyp_inhibition_data,
                   examplinib_cyp_induction_data)
#>       cyp   substrate   kiu fgut   fm fmcyp         Ag        Ah Bg Bh       Cg
#> 1  CYP1A2  tizanidine    NA 1.00 0.95  0.98 1.00000000 1.0000000  1  1 1.000000
#> 2  CYP2B6        <NA>    NA   NA   NA    NA 1.00000000 1.0000000  1  1 1.000000
#> 3  CYP2C8 repaglinide 11.00 1.00 1.00  0.61 0.62551298 0.9827625  1  1 1.000000
#> 4  CYP2C9  S-warfarin  0.60 1.00 1.00  0.91 0.08350072 0.7566792  1  1 1.000000
#> 5 CYP2C19  omeprazole  0.25 1.00 1.00  0.87 0.03657341 0.5644126  1  1 1.000000
#> 6  CYP2D6 desipramine    NA 1.00 1.00  0.85 1.00000000 1.0000000  1  1 1.000000
#> 7  CYP3A4   midazolam 12.50 0.57 0.96  1.00 0.65494520 0.9847995  1  1 6.884569
#>         Ch      aucr  risk
#> 1 1.000000 1.0000000 FALSE
#> 2 1.000000        NA    NA
#> 3 1.000000 1.0106266 FALSE
#> 4 1.000000 1.2843927  TRUE
#> 5 1.000000 1.6102050  TRUE
#> 6 1.000000 1.0000000 FALSE
#> 7 1.773674 0.2321612  TRUE

mech_stat_cyp_risk_table(examplinib_parent, examplinib_cyp_inhibition_data,
                         examplinib_cyp_induction_data)
Mechanistic static modeling of the CYP inhibition risk for examplinib
CYP substrate \(F_{gut}\) \(f_m\) \(f_{m,CYP}\) \(A_g\) \(A_h\) \(B_g\) \(B_h\) \(C_g\) \(C_h\) AUCR risk
CYP1A2 tizanidine 1.00 0.95 0.98 1.00 1.00 1 1 1.00 1.00 1.000 No
CYP2B6 NA NA NA NA 1.00 1.00 1 1 1.00 1.00 NA
CYP2C8 repaglinide 1.00 1.00 0.61 0.63 0.98 1 1 1.00 1.00 1.011 No
CYP2C9 S-warfarin 1.00 1.00 0.91 0.08 0.76 1 1 1.00 1.00 1.284 Yes
CYP2C19 omeprazole 1.00 1.00 0.87 0.04 0.56 1 1 1.00 1.00 1.610 Yes
CYP2D6 desipramine 1.00 1.00 0.85 1.00 1.00 1 1 1.00 1.00 1.000 No
CYP3A4 midazolam 0.57 0.96 1.00 0.65 0.98 1 1 6.88 1.77 0.232 Yes

Transporter inhibition

transporter_inhibition_risk(examplinib_parent, examplinib_transporter_inhibition_data)
#>    transporter   ic50    source          i            r threshold  risk
#> 1      Pgp_int   0.41 study 005       igut 8.912391e+03     10.00  TRUE
#> 2      Pgp_sys   0.41 study 005    imaxssu 4.019984e-01      0.02  TRUE
#> 3     BCRP_int   1.90 study 005       igut 1.923200e+03     10.00  TRUE
#> 4     BCRP_sys   1.90 study 005    imaxssu 8.674701e-02      0.02  TRUE
#> 5      OATP1B1 177.00 study 006 imaxinletu 1.090047e-03      0.10 FALSE
#> 6      OATP1B3  35.00 study 006 imaxinletu 5.512525e-03      0.10 FALSE
#> 7         OAT1 271.00              imaxssu 6.081894e-04      0.10 FALSE
#> 8         OAT3 300.00              imaxssu 5.493978e-04      0.10 FALSE
#> 9         BSEP  12.80              imaxssu 1.287651e-02      0.10 FALSE
#> 10        OCT1   2.30 study 006       <NA>           NA        NA    NA
#> 11        OCT2  67.00 study 006    imaxssu 2.459990e-03      0.10 FALSE
#> 12       MATE1   3.60 study 006    imaxssu 4.578315e-02      0.02  TRUE
#> 13      MATE2k   1.10 study 006    imaxssu 1.498358e-01      0.02  TRUE

transporter_inhibition_risk_table(examplinib_parent, examplinib_transporter_inhibition_data)
Risk for drug transporter inhibition by examplinib
transporter \(IC_{50}\) source \(R\) threshold risk
Pgp_int 0.41 study 005 8912.391 10.00 Yes
Pgp_sys 0.41 study 005 0.402 0.02 Yes
BCRP_int 1.90 study 005 1923.200 10.00 Yes
BCRP_sys 1.90 study 005 0.087 0.02 Yes
OATP1B1 177.00 study 006 0.001 0.10 No
OATP1B3 35.00 study 006 0.006 0.10 No
OAT1 271.00 0.001 0.10 No
OAT3 300.00 0.001 0.10 No
BSEP 12.80 0.013 0.10 No
OCT1 2.30 study 006 NA NA
OCT2 67.00 study 006 0.002 0.10 No
MATE1 3.60 study 006 0.046 0.02 Yes
MATE2k 1.10 study 006 0.150 0.02 Yes