# Getting started with rpact

#### Friedrich Pahlke and Gernot Wassmer

#### 2023-07-03

Confirmatory Adaptive Clinical Trial Design, Simulation, and Analysis.

## Functional Range

- Sample size and power calculation for
  - means (continuous endpoint)
  - rates (binary endpoint)
  - survival trials with
    - piecewise accrual time and intensity
    - piecewise exponential survival time
    - survival times that follow a Weibull distribution
- Fixed sample design and designs with interim analysis stages
- Simulation tool for means, rates, and survival data
  - Assessment of adaptive sample size/event number recalculations based on conditional power
  - Assessment of treatment selection strategies in multi-arm trials
- Adaptive analysis of means, rates, and survival data
- Adaptive designs and analysis for multi-arm trials
- Simulation and analysis for enrichment designs testing means, rates, and hazard ratios

## Learn to use rpact

We recommend three ways to learn how to use `rpact`:

> 1. Use the Shiny app: shiny.rpact.com
> 2. Use the Vignettes: www.rpact.org/vignettes
> 3. Book a training: www.rpact.com

### Vignettes

The vignettes are hosted at www.rpact.org/vignettes and cover the following topics:

1. Defining Group Sequential Boundaries with rpact
2. Designing Group Sequential Trials with Two Groups and a Continuous Endpoint with rpact
3. Designing Group Sequential Trials with a Binary Endpoint with rpact
4. Designing Group Sequential Trials with Two Groups and a Survival Endpoint with rpact
5. Simulation-Based Design of Group Sequential Trials with a Survival Endpoint with rpact
6. An Example to Illustrate Boundary Re-Calculations during the Trial with rpact
7. Analysis of a Group Sequential Trial with a Survival Endpoint using rpact
8. Defining Accrual Time and Accrual Intensity with rpact
9. How to use R Generics with rpact
10. How to Create Admirable Plots with rpact
11. Comparing Sample Size and Power Calculation Results for a Group Sequential Trial with a Survival Endpoint: rpact vs. gsDesign
12. Supplementing and Enhancing rpact’s Graphical Capabilities with ggplot2
13. Using the Inverse Normal Combination Test for Analyzing a Trial with Continuous Endpoint and Potential Sample Size Re-Assessment with rpact
14. Planning a Trial with Binary Endpoints with rpact
15. Planning a Survival Trial with rpact
16. Simulation of a Trial with a Binary Endpoint and Unblinded Sample Size Re-Calculation with rpact
17. How to Create Summaries with rpact
18. How to Create One- and Multi-Arm Analysis Result Plots with rpact
19. How to Create One- and Multi-Arm Simulation Result Plots with rpact
20. Simulating Multi-Arm Designs with a Continuous Endpoint using rpact
21. Analysis of a Multi-Arm Design with a Binary Endpoint using rpact
22. Step-by-Step rpact Tutorial
23. Planning and Analyzing a Group-Sequential Multi-Arm Multi-Stage Design with Binary Endpoint using rpact
24. Two-arm analysis for continuous data with covariates from raw data (exclusive)
25. How to install the latest developer version (exclusive)
26. Delayed Response Designs with rpact

## User Concept

### Workflow

- Everything is starting with a design, e.g.: `design <- getDesignGroupSequential()`
- Find the optimal design parameters with help of `rpact` comparison tools: `getDesignSet`
- Calculate the required sample size, e.g.: `getSampleSizeMeans()`, `getPowerMeans()`
- Simulate specific characteristics of an adaptive design, e.g.: `getSimulationMeans()`
- Collect your data, import it into R and create a dataset: `data <- getDataset()`
- Analyze your data: `getAnalysisResults(design, data)`

### Focus on Usability

The most important `rpact` functions have intuitive names:

- `getDesign`[`GroupSequential`/`InverseNormal`/`Fisher`]`()`
- `getDesignCharacteristics()`
- `getSampleSize`[`Means`/`Rates`/`Survival`]`()`
- `getPower`[`Means`/`Rates`/`Survival`]`()`
- `getSimulation`[`MultiArm`/`Enrichment`]``[`Means`/`Rates`/`Survival`]`()`
- `getDataSet()`
- `getAnalysisResults()`
- `getStageResults()`

RStudio/Eclipse: auto code completion makes it easy to use these functions.

### R generics

In general, everything runs with the R standard functions which are always present in R: so-called R generics, e.g., `print`, `summary`, `plot`, `as.data.frame`, `names`, `length`

### Utilities

Several utility functions are available, e.g.

- `getAccrualTime()`
- `getPiecewiseSurvivalTime()`
- `getNumberOfSubjects()`
- `getEventProbabilities()`
- `getPiecewiseExponentialDistribution()`
- survival helper functions for conversion of `pi`, `lambda` and `median`, e.g., `getLambdaByMedian()`
- `testPackage()`: installation qualification on a client computer or company server (via unit tests)

## Validation

Please contact us to learn how to use `rpact` on FDA/GxP-compliant validated corporate computer systems and how to get a copy of the formal validation documentation that is customized and licensed for exclusive use by your company, e.g., to fulfill regulatory requirements.

## About

- rpact is a comprehensive validated1 R package for clinical research which
  - enables the design and analysis of confirmatory adaptive group sequential designs
  - is a powerful sample size calculator
  - is a free of charge open-source software licensed under LGPL-3
  - particularly, implements the methods described in the recent monograph by Wassmer and Brannath (2016)

> For more information please visit www.rpact.org

- RPACT is a company which offers
  - enterprise software development services
  - technical support for the `rpact` package
  - consultancy and user training for clinical research using R
  - validated software solutions and R package development for clinical research

> For more information please visit www.rpact.com

## Contact

- info@rpact.com
- www.rpact.com/contact

1. The rpact validation documentation is available exclusively for our customers and supporting companies. For more information visit www.rpact.com/services/sla↩︎