gs_power_rd {gsDesign2} | R Documentation |
Group sequential design power of binary outcome measuring in risk difference
Description
Group sequential design power of binary outcome measuring in risk difference
Usage
gs_power_rd(
p_c = tibble::tibble(stratum = "All", rate = 0.2),
p_e = tibble::tibble(stratum = "All", rate = 0.15),
n = tibble::tibble(stratum = "All", n = c(40, 50, 60), analysis = 1:3),
rd0 = 0,
ratio = 1,
weight = c("unstratified", "ss", "invar"),
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(0.1), rep(-Inf, 2)),
info_scale = c("h0_h1_info", "h0_info", "h1_info"),
binding = FALSE,
test_upper = TRUE,
test_lower = TRUE,
r = 18,
tol = 1e-06
)
Arguments
p_c |
Rate at the control group. |
p_e |
Rate at the experimental group. |
n |
Sample size. |
rd0 |
Treatment effect under super-superiority designs, the default is 0. |
ratio |
Experimental:control randomization ratio. |
weight |
Weighting method, can be |
upper |
Function to compute upper bound. |
lower |
Function to compare lower bound. |
upar |
Parameters passed to |
lpar |
Parameters passed to |
info_scale |
Information scale for calculation. Options are:
|
binding |
Indicator of whether futility bound is binding;
default of |
test_upper |
Indicator of which analyses should include an upper
(efficacy) bound; single value of |
test_lower |
Indicator of which analyses should include a lower bound;
single value of |
r |
Integer value controlling grid for numerical integration as in
Jennison and Turnbull (2000); default is 18, range is 1 to 80.
Larger values provide larger number of grid points and greater accuracy.
Normally, |
tol |
Tolerance parameter for boundary convergence (on Z-scale). |
Value
A list with input parameter, analysis, and bound.
Examples
# Example 1 ----
library(gsDesign)
# unstratified case with H0: rd0 = 0
gs_power_rd(
p_c = tibble::tibble(
stratum = "All",
rate = .2
),
p_e = tibble::tibble(
stratum = "All",
rate = .15
),
n = tibble::tibble(
stratum = "All",
n = c(20, 40, 60),
analysis = 1:3
),
rd0 = 0,
ratio = 1,
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# Example 2 ----
# unstratified case with H0: rd0 != 0
gs_power_rd(
p_c = tibble::tibble(
stratum = "All",
rate = .2
),
p_e = tibble::tibble(
stratum = "All",
rate = .15
),
n = tibble::tibble(
stratum = "All",
n = c(20, 40, 60),
analysis = 1:3
),
rd0 = 0.005,
ratio = 1,
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# use spending function
gs_power_rd(
p_c = tibble::tibble(
stratum = "All",
rate = .2
),
p_e = tibble::tibble(
stratum = "All",
rate = .15
),
n = tibble::tibble(
stratum = "All",
n = c(20, 40, 60),
analysis = 1:3
),
rd0 = 0.005,
ratio = 1,
upper = gs_spending_bound,
lower = gs_b,
upar = list(sf = gsDesign::sfLDOF, total_spend = 0.025, param = NULL, timing = NULL),
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# Example 3 ----
# stratified case under sample size weighting and H0: rd0 = 0
gs_power_rd(
p_c = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.15, .2, .25)
),
p_e = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.1, .16, .19)
),
n = tibble::tibble(
stratum = rep(c("S1", "S2", "S3"), each = 3),
analysis = rep(1:3, 3),
n = c(10, 20, 24, 18, 26, 30, 10, 20, 24)
),
rd0 = 0,
ratio = 1,
weight = "ss",
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# Example 4 ----
# stratified case under inverse variance weighting and H0: rd0 = 0
gs_power_rd(
p_c = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.15, .2, .25)
),
p_e = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.1, .16, .19)
),
n = tibble::tibble(
stratum = rep(c("S1", "S2", "S3"), each = 3),
analysis = rep(1:3, 3),
n = c(10, 20, 24, 18, 26, 30, 10, 20, 24)
),
rd0 = 0,
ratio = 1,
weight = "invar",
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# Example 5 ----
# stratified case under sample size weighting and H0: rd0 != 0
gs_power_rd(
p_c = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.15, .2, .25)
),
p_e = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.1, .16, .19)
),
n = tibble::tibble(
stratum = rep(c("S1", "S2", "S3"), each = 3),
analysis = rep(1:3, 3),
n = c(10, 20, 24, 18, 26, 30, 10, 20, 24)
),
rd0 = 0.02,
ratio = 1,
weight = "ss",
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)
# Example 6 ----
# stratified case under inverse variance weighting and H0: rd0 != 0
gs_power_rd(
p_c = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.15, .2, .25)
),
p_e = tibble::tibble(
stratum = c("S1", "S2", "S3"),
rate = c(.1, .16, .19)
),
n = tibble::tibble(
stratum = rep(c("S1", "S2", "S3"), each = 3),
analysis = rep(1:3, 3),
n = c(10, 20, 24, 18, 26, 30, 10, 20, 24)
),
rd0 = 0.03,
ratio = 1,
weight = "invar",
upper = gs_b,
lower = gs_b,
upar = gsDesign(k = 3, test.type = 1, sfu = sfLDOF, sfupar = NULL)$upper$bound,
lpar = c(qnorm(.1), rep(-Inf, 2))
)