survSampleSize

survSampleSize provides an interactive Shiny application for sample size and power calculation in clinical trials with a survival (time-to-event) endpoint, under general design conditions.

Two complementary methods are implemented:

The app also displays theoretical survival curves and a calendar-time event-prediction timeline, and offers a side-by-side comparison of the two methods.

Installation

Install from CRAN:

install.packages("survSampleSize")

Or install the development version:

# install.packages("remotes")
remotes::install_github("wettlinmalfa629-hue/survSampleSize")

The interactive app relies on several packages declared in Suggests. Install them with:

install.packages(c(
  "lrstat", "powerSurvEpi", "DT", "ggplot2", "bslib", "plotly"
))

Usage

Launch the application with:

library(survSampleSize)
run_app()

This opens the Shiny app in your default browser. From there you can:

  1. Choose a calculation method (Lu 2021 or Freedman 1982) and direction (solve for sample size N given power, or solve for power given N).
  2. Set the statistical design parameters (alpha, power, test type, allocation ratio, non-inferiority margin).
  3. Set the time parameters (accrual duration, follow-up time).
  4. Set the survival and effect-size parameters (control median survival, target hazard ratio, delayed-effect time, dropout rate, accrual rate).
  5. Click Calculate to view the results, survival curves, event-prediction timeline, and a method comparison.

References