knitr::opts_chunk$set(echo = F, results = "asis")
The trial will be designed to compare $K$ experimental treatments to a shared control arm. Response $X_{ik}$, from patient $i=1,\dots,n_k$ in arm $k=0,\dots,K$, will be assumed to be distributed as $X_{ik} \sim N(\mu_k,\sigma_k^2)$. Then, the hypotheses to be tested will be: $$ H_k : \tau_k = \mu_k - \mu_0 \le 0,\ k=1,\dots,K.$$ The global null hypothesis, $H_G$, will be: $$ \tau_1 = \cdots = \tau_K = 0. $$ The global alternative hypothesis, $H_A$, will be: $$ \tau_1 = \cdots = \tau_K = \delta_1. $$ The least favourable configuration for experimental arm $k$, $LFC_k$, will be: $$ \tau_k = \delta_1,\ \tau_1 = \cdots = \tau_{k-1} = \tau_{k+1} = \cdots = \tau_K = \delta_0. $$ Here, $\delta_1$ and $\delta_0$ are interesting and uninteresting treatment effects respectively.
alpha <- params$alpha beta <- params$beta delta0 <- params$delta0 delta1 <- params$delta1 integer <- params$integer J <- params$J K <- params$K Kv <- params$Kv maxN <- params$maxN n10 <- params$n10 n1 <- params$n1 opchar <- params$opchar plots <- params$plots power <- params$power ratio_type <- params$ratio_type ratio_init <- params$ratio_init ratio <- params$ratio sigma <- params$sigma swss <- params$swss equal_error <- params$equal_error equal_power <- params$equal_power equal_other <- params$equal_other shifted_power <- params$shifted_power
if (power == "marginal") { power_scenario_text <- "each of their respective least favourable configurations" power_type_text <- "marginal power for each null hypothesis" } else { power_scenario_text <- "the global alternative hypothesis" power_type_text <- "disjunctive power" } if (ratio_type == "equal_all") { ratio_text <- "the same as the control arm" } else if (ratio_type == "equal_exp") { ratio_text <- paste0(ratio_init[1], " times that of the control arm") } else { ratio_text <- paste0(round(1/sqrt(K), 3), " times that of the control arm") } if (integer) { integer_text <- "will" } else { integer_text <- "will not" } if (plots) { plot_text <- "will" } else { plot_text <- "will not" }
FWER <- round(opchar$FWERI1[1], 3) if (power == "marginal") { power_type_text <- "minimum marginal power" power_value <- round(min(diag(as.matrix(opchar[-(1:2), (K + 3):(2*K + 2)]))), 3) } else { power_scenario_text <- "the global alternative hypothesis." if (power == "conjunctive") { power_type_text <- "conjunctive power" power_value <- round(opchar$Pcon[2], 3) } else if (power == "disjunctive") { power_type_text <- "disjunctive power" power_value <- round(opchar$Pdis[2], 3) } } if (swss == "fixed") { swss_text <- "is" swss_text2 <- round(n1, 3) } else { swss_text <- "to the control arm is" swss_text2 <- round(n10, 3) }
The following choices were made:
r K
}$ experimental treatments will initially be included in the trial.r J
}$ stages will be included in the trial.r paste(Kv, collapse = ", ")
)}$ experimental treatments will be present in each stage.r swss
.r alpha
}$ will be used.r power_type_text
will be controlled to level $1-\beta = \boldsymbol{r 1 - beta
}$ under r power_scenario_text
.r round(delta1, 3)
}$ and $\delta_0 = \boldsymbol{r round(delta0, 3)
}$ respectively.r paste(round(sigma, 3), collapse = ", ")
)}$.r ratio_text
.r integer_text
be required to be an integer.r plot_text
be produced.r round(maxN, 3)
}$.r swss_text
: r swss_text2
.r paste(rep(round(ratio, 3), K), collapse = ", ")
)}$.r FWER
}$.r power_type_text
is: $\boldsymbol{r power_value
}$.library(knitr) kable(round(opchar[, c(1:K, (2*K + 3):(4*K + 2))]), digits = 3) kable(round(opchar[, 1:(2*K + 2)]), digits = 3) kable(round(opchar[, -((K + 1):(4*K + 2))]), digits = 3)
if (params$plots) { print(params$equal_error) cat("\n \n \n \n \n \n") print(params$equal_power) cat("\n \n \n \n \n \n") print(params$equal_other) cat("\n \n \n \n \n \n") print(params$shifted_power) } else { cat("Not chosen for output: select the box next to 'Plot power curves' to", "add plots to the report.") }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.