Fit single model to data from a two-arm trial with an exponentially distributed time-to-event endpoint and no predictor of the intercurrent event
Source:R/fit_single_exp_nocovar.R
fit_single_exp_nocovar.RdFit single model to data from a two-arm trial with an exponentially distributed time-to-event endpoint and no predictor of the intercurrent event
Arguments
- data
Data frame of a structure as generated by
sim_dat_one_trial_exp_nocovar().- params
List, containing model parameters:
tgPositive integer value, number of intervals to calculate restricted mean survival time using the trapezoidal rule.prior_piTNumeric vector of length 2, containing parameters (alpha, beta) of the beta prior on pi, indicating the probability of belonging to the stratum of subjects developing the intercurrent event if given treatment.prior_0NNumeric vector of length 2, containing parameters (alpha, beta) of the gamma prior on lambda_0N.prior_1NNumeric vector of length 2, containing parameters (alpha, beta) of the gamma prior on lambda_1N.prior_0TNumeric vector of length 2, containing parameters (alpha, beta) of the gamma prior on lambda_0T.prior_1TNumeric vector of length 2, containing parameters (alpha, beta) of the gamma prior on lambda_1T.t_gridNumeric vector of lengthtg, containing time points defining the time grid (in months) to calculate restricted mean survival time using the trapezoidal rule.chainsPositive integer value, specifying the number of Markov chains.n_iterPositive integer value, specifying the number of iterations for each chain (including warmup).warmupPositive integer value, specifying the number of warmup (aka burnin) iterations per chain.coresPositive integer value, specifying the number of cores to use when executing the chains in parallel.open_progressLogical value, indicating whether the progress of the chains will be redirected to a file that is automatically opened for inspection.show_messagesLogical value, indicating whether to print the summary of informational messages.
- summarize_fit
Logical, if
TRUE(default), the output is restricted to a summary of results on key parameters over all chains, ifFALSE, the completestanfitobject is returned.
Value
tibble() containing a summary of results on key parameters, or a stanfit object, depending on summarize_fit.
Details
The data supplied as params are used either as priors (prior_delta, prior_0N, prior_1N, prior_1T), to inform the model setup (tg, p, t_grid), or as parameters to rstan::sampling() which is invoked internally (chains, n_iter, warmup, cores, open_progress, show_messages).
Examples
d_params_nocovar <- list(
n = 500L,
nt = 250L,
prob_ice = 0.5,
fu_max = 336L,
T0T_rate = 0.2,
T0N_rate = 0.2,
T1T_rate = 0.15,
T1N_rate = 0.1
)
dat_single_trial <- sim_dat_one_trial_exp_nocovar(
n = d_params_nocovar[["n"]],
nt = d_params_nocovar[["nt"]],
prob_ice = d_params_nocovar[["prob_ice"]],
fu_max = d_params_nocovar[["fu_max"]],
T0T_rate = d_params_nocovar[["T0T_rate"]],
T0N_rate = d_params_nocovar[["T0N_rate"]],
T1T_rate = d_params_nocovar[["T1T_rate"]],
T1N_rate = d_params_nocovar[["T1N_rate"]]
)
m_params_nocovar <- list(
tg = 48L,
prior_piT = c(0.5, 0.5),
prior_0N = c(1.5, 5),
prior_1N = c(1.5, 5),
prior_0T = c(1.5, 5),
prior_1T = c(1.5, 5),
t_grid = seq(7, 7 * 48, 7) / 30,
chains = 2L,
n_iter = 3000L,
warmup = 1500L,
cores = 2L,
open_progress = FALSE,
show_messages = TRUE
)
# \donttest{
fit_single <- fit_single_exp_nocovar(
data = dat_single_trial,
params = m_params_nocovar,
summarize_fit = TRUE
)
print(fit_single)
# }