MyNixOS website logo
Description

Utility-Based Optimal Phase II/III Drug Development Planning.

Plan optimal sample size allocation and go/no-go decision rules for phase II/III drug development programs with time-to-event, binary or normally distributed endpoints when assuming fixed treatment effects or a prior distribution for the treatment effect, using methods from Kirchner et al. (2016) <doi:10.1002/sim.6624> and Preussler (2020). Optimal is in the sense of maximal expected utility, where the utility is a function taking into account the expected cost and benefit of the program. It is possible to extend to more complex settings with bias correction (Preussler S et al. (2020) <doi:10.1186/s12874-020-01093-w>), multiple phase III trials (Preussler et al. (2019) <doi:10.1002/bimj.201700241>), multi-arm trials (Preussler et al. (2019) <doi:10.1080/19466315.2019.1702092>), and multiple endpoints (Kieser et al. (2018) <doi:10.1002/pst.1861>).

drugdevelopR: Utility-based optimal phase II/III drug development planning.

CRANstatus R-CMD-check Codecov testcoverage

The drugdevelopR package enables you to plan phase II/III drug development programs with optimal sample size allocation and go/no-go decision rules. The assumed true treatment effects can be fixed or modelled by a prior distribution. The corresponding R Shiny application has a graphic user interface and thus makes it accessible for users without prior knowledge of R. Fast computing is made possible by parallel programming. Theoretical foundations for this package were laid in the dissertation “Integrated Planning of Pilot and Subsequent Confirmatory Study in Clinical Research – Finding Optimal Designs in a Utility-Based Framework” by Stella Erdmann at the Institute of Medical Biometry at the University of Heidelberg.

On the package webpage, we supply full documentation of all functions as well as a tutorial for getting started with drugdevelopR.

Installation

Install the development version of the package directly from GitHub using the following code:

if(!require(devtools)) { install.packages("devtools"); require(devtools)} 
devtools::install_github("Sterniii3/drugdevelopR")

and access the drugdevelopR App via https://web.imbi.uni-heidelberg.de/drugdevelopR/.

Usage

Here is a basic example for applying drugdevelopR to a drug development program with a normally distributed outcome:

library(drugdevelopR)
#> Lade nötiges Paket: doParallel
#> Lade nötiges Paket: foreach
#> Lade nötiges Paket: iterators
#> Lade nötiges Paket: parallel
#> Lade nötiges Paket: progressr
# Optimize
optimal_normal(Delta1 = 0.625, Delta2 = 0.8, fixed = FALSE, # treatment effect
               n2min = 20, n2max = 400, # sample size region
               stepn2 = 4, # sample size step size
               kappamin = 0.02, kappamax = 0.2, # threshold region
               stepkappa = 0.02, # threshold step size
               c2 = 0.675, c3 = 0.72, # maximal total trial costs
               c02 = 15, c03 = 20, # maximal per-patient costs
               b1 = 3000, b2 = 8000, b3 = 10000, # gains for patients
               alpha = 0.025, # one-sided significance level
               beta = 0.1, # 1 - power
               w = 0.6, in1 = 300, in2 = 600, # weight and amount of information
               a = 0.25, b = 0.75) # truncation values
#> Optimization result:
#>  Utility: 3073.85
#>  Sample size:
#>    phase II: 84, phase III: 194, total: 278
#>  Probability to go to phase III: 0.99
#>  Total cost:
#>    phase II: 72, phase III: 160, cost constraint: Inf
#>  Fixed cost:
#>    phase II: 15, phase III: 20
#>  Variable cost per patient:
#>    phase II: 0.675, phase III: 0.72
#>  Effect size categories (expected gains):
#>   small: 0 (3000), medium: 0.5 (8000), large: 0.8 (10000)
#>  Success probability: 0.85
#>  Success probability by effect size:
#>    small: 0.69, medium: 0.15, large: 0.01
#>  Significance level: 0.025
#>  Targeted power: 0.9
#>  Decision rule threshold: 0.06 [Kappa] 
#>  Parameters of the prior distribution: 
#>    Delta1: 0.625, Delta2: 0.8, in1: 300, in2: 600,
#>    a: 0.25, b: 0.75, w: 0.6
#>  Treatment effect offset between phase II and III: 0 [gamma]

drugdevelopR functions

The drugdevelopR package provides the functions

to plan optimal phase II/III drug development programs with

  • time-to-event (treatment effect measured by hazard ratio, HR),
  • binary (treatment effect measured by risk ratio, RR), or
  • normally distributed (treatment effect measured by standardized difference in means, Delta)

endpoints, where the treatment effect is modelled on a prior distribution. Optimal phase II/III drug development planning with fixed treatment effects can be done with the help of the R Shiny application basic.

Extensions to the basic setting are:

Metadata

Version

1.0.1

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows