The goldilocks package implements the Goldilocks
adaptive trial design described in Broglio et al. (2014). This vignette
provides a visual overview of how the package functions are
interconnected.
The diagram below shows the call graph from the top-level simulation
function (sim_trials()) down through the core engine
(survival_adapt()) and into the internal analysis
pipeline.
Exported functions are shown in blue. Internal functions are shown in grey.
The functions fall into three layers:
sim_trials(): Top-level entry point.
Runs survival_adapt() across multiple trials (optionally in
parallel) and collates results.summarise_sims(): Summarizes the
output of sim_trials(), computing operating characteristics
such as power, expected sample size, and stopping probabilities.survival_adapt(): Simulates a single
adaptive trial. Generates data via sim_comp_data(),
conducts interim analyses using posterior() and
test_stop_success(), and performs the final analysis via
test_final().sim_comp_data(): Generates a complete
trial dataset by calling enrollment(),
randomization(), and pwe_sim().posterior(): Estimates the posterior
distribution of piecewise exponential hazard rates using a conjugate
Gamma model.analyse_data(): Applies the chosen
analysis method (logrank, cox,
bayes, or chisq) to an (imputed) dataset.impute_data(): Imputes missing event
times for censored subjects using pwe_impute() or
pwe_sim().haz_to_prop(): Converts posterior
hazard rate draws to cumulative incidence proportions via
ppwe().