computeLogrankNEvents: Helper function: Computes the planned sample size based on...

View source: R/logRankTest.R

computeLogrankNEventsR Documentation

Helper function: Computes the planned sample size based on the minimal clinical relevant hazard ratio, alpha and beta under optional stopping.

Description

Helper function: Computes the planned sample size based on the minimal clinical relevant hazard ratio, alpha and beta under optional stopping.

Usage

computeLogrankNEvents(
  hrMin,
  beta,
  m0 = 50000,
  m1 = 50000,
  alpha = 0.05,
  alternative = c("twoSided", "greater", "less"),
  nSim = 1000L,
  nBoot = nSim,
  groupSizePerTimeFunction = returnOne,
  nMax = 1000L,
  parameter = NULL,
  digits = getOption("digits"),
  pb = TRUE
)

Arguments

hrMin

numeric that defines the minimal relevant hazard ratio, the smallest hazard ratio that we want to detect.

beta

numerical in (0,1). Old parameter now replaced by the power parameter

m0

Number of subjects in the control group 0/1 at the beginning of the trial, i.e., nPlan[1].

m1

Number of subjects in the treatment group 1/2 at the beginning of the trial, i.e., nPlan[2].

alpha

numeric in (0, 1) that specifies the tolerable type I error and the null rejection rule e >= 1/alpha.

alternative

a character string specifying the alternative hypothesis, which must be one of "twoSided" (default),"greater" or "less". The alternative is pitted against the null hypothesis of equality of the survival distributions. More specifically, let lambda1 be the hazard rate of group 1 (i.e., placebo), and lambda2 the hazard ratio of group 2 (i.e., treatment), then the null hypothesis states that the hazard ratio theta = lambda2/lambda1 = 1. If alternative = "less", the null hypothesis is compared to theta < 1, thus, lambda2 < lambda1, that is, the hazard of group 2 (i.e., treatment) is less than that of group 1 (i.e., placebo), hence, the treatment is beneficial. If alternative = "greater", then the null hypothesis is compared to theta > 1, thus, lambda2 > lambda1, hence, harm.

nSim

integer > 0, the number of simulations needed to compute power or the number of events for the exact savi logrank test under continuous monitoring

nBoot

integer > 0 representing the number of bootstrap samples to assess the accuracy of the approximation of power or nEvents for the exact savi logrank test under continuous monitoring

groupSizePerTimeFunction

A function without parameters and integer output. This function provides the number of events at each time step. For instance, if rpois(1, 7) leads to a random number of events at each time step.

nMax

An integer. Once nEvents hits nMax the experiment terminates, if it didn't stop due to threshold crossing crossing already. Default set to Inf.

parameter

Numeric > 0, represents the savi tests defining thetaS. Default NULL so it's decided by the algorithm, typically, this equals hrMin, which corresponds to the GROW choice.

digits

number of significant digits to be used.

pb

logical, if TRUE, then show progress bar.

Value

a list which contains at least nEvents and an adapted bootObject of class boot.

Author(s)

Muriel Felipe Perez-Ortiz and Alexander Ly

References

Grünwald, P. D., de Heide, R., & Koolen, W. (2024). Safe testing. Journal of the Royal Statistical Society. Series B (Methodological), 86(5), 1091-1128. (With discussions), https://doi.org/10.1093/jrsssb/qkae011. ter Schure, J., Pérez-Ortiz, M. F., Ly, A., & Grünwald, P. D. (2024). The Safe Logrank Test: Error control under continuous monitoring with unlimited horizon. The New England Journal of Statistics in Data Science, 2(2), 190-214, https://doi.org/10.51387/24-NEJSDS65.

Examples

computeLogrankNEvents(0.7, 0.2, nSim=10)

safestats documentation built on Sept. 6, 2026, 1:06 a.m.