The design function for multinomial designs under intersection-union test (IUT)

Description

Search the type I error or power of a multinomial (response and disease progression) single- or two-stage design under IUT: H_0: p_1 ≤ p_{01} \ OR \ p_2 ≥ p_{02} \ versus \ H_1: p_1 ≥ p_{11} > p_{01} \ AND \ p_2 ≤ p_{12} < p_{02}

Usage

1
2
3
4
5
6
7
IUT.design(method = c("s1", "s2", "s2.f"),
s1.rej, t1.rej, s1.acc, t1.acc, n1, s2.rej, t2.rej, n2,
s1.rej.delta=0, t1.rej.delta=0, s1.acc.delta=0, t1.acc.delta=0,
s2.rej.delta=0, t2.rej.delta=0, n1.delta=0, n2.delta=0,
p0.s, p0.t, p1.s, p1.t, signif.level = 0.05, power.level = 0.85,
show.time = TRUE, output = c("minimax","optimal","maxpower","admissible", "all"),
plot.out=FALSE)

Arguments

method

design methods according to number of stage and stopping rule, "s1" represents single-stage design stopping for both efficacy and futility, "s2" represents two-stage design stopping for both efficacy and futility, "s2.f" represents two-stage design stopping for futility only.

s1.rej

first stage responses threshold to stop the trial for efficacy. Applied for "s1" or "s2".

t1.rej

first stage disease progressions threshold to stop the trial for efficacy. Applied for "s1" or "s2".

s1.acc

first stage responses threshold to stop the trial for futility. Applied for "s2" or "s2.f".

t1.acc

first stage disease progressions threshold to stop the trial for futility. Applied for "s2" or "s2.f".

n1

first stage sample size. Applied for "s1", "s2" or "s2.f".

s2.rej

second stage responses threshold to stop the trial for efficacy. Applied for "s2" or "s2.f".

t2.rej

second stage disease progressions threshold to stop the trial for efficacy. Applied for "s2" or "s2.f".

n2

second stage sample size. Applied for "s2" or "s2.f".

s1.rej.delta

pre-specified search difference for s1.rej.

t1.rej.delta

pre-specified search difference for t1.rej.

s1.acc.delta

pre-specified search difference for s1.acc.

t1.acc.delta

pre-specified search difference for t1.acc.

s2.rej.delta

pre-specified search difference for s2.rej.

t2.rej.delta

pre-specified search difference for t2.rej.

n1.delta

pre-specified search difference for n1.

n2.delta

pre-specified search difference for n2.

p0.s

pre-specified response rate under null hypothesis.

p0.t

pre-specified disease progression rate under null hypothesis.

p1.s

pre-specified response rate under alternative hypothesis.

p1.t

pre-specified disease progression rate under alternative hypothesis. Note: type I error calculation needs to take maximum of the power function with (p.s,p.t)=(p_{01},0) and (p.s,p.t)=(1-p_{02},p_{02})

signif.level

pre-specified significant level.

power.level

pre-specified power level.

show.time

logical; if TRUE (default), show the calculation time for the search function.

output

the output types of design, choose from "minimax","optimal","admissible" and "maxpower".

plot.out

logical; if TRUE, output a plot for design selection.

Value

boundset

the boundaries set satisfying the design types properties: s.rej, t.rej and N for "s1", s1.rej, t1.rej, s1.acc, t1.acc and N1 for first stage and s2.rej, t2.rej and N2 for the second stage of "s2", s1.acc, t1.acc and N1 for first stage and s2.rej, t2.rej and N2 for the second stage of "s2.f",

References

Chang, M. N., Devidas, M., & Anderson, J. (2007). One- and two-stage designs for phase II window studies. Statistics in medicine , 26(13), 2604-2614.

Simon, R. (1989). Optimal two-stage designs for phase II clinical trials. Controlled clinical trials 10(1), 1-10.

Jung, S. H., Lee, T., Kim, K., & George, S. L. (2004). Admissible two-stage designs for phase II cancer clinical trials. Statistics in medicine 23(4), 561-569.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
p01=0.1; p02=0.9
## Calculate type I error for single-stage design
IUT.design(method="s1",s1.rej=18, t1.rej = 12, n1=80,
s1.rej.delta = 1, t1.rej.delta = 1, n1.delta=1,
p0.s = 0.15, p0.t = 0.25, p1.s = 0.3, p1.t= 0.1, output = "minimax")

## Designs for two-stage design, output PET and EN under null hypothesis
IUT.design(method="s2",s1.rej = 11, t1.rej = 4, s1.acc=8, t1.acc = 5, n1=40,
s2.rej=18, t2.rej = 11, n2=40, p0.s = 0.15, p0.t = 0.25, p1.s = 0.3, p1.t= 0.1, output = "minimax")
IUT.design(method="s2",s1.rej = 11, t1.rej = 4, s1.acc=8, t1.acc = 5, n1=40,
s2.rej=18, t2.rej = 11, n2=40, p0.s = 0.15, p0.t = 0.25, p1.s = 0.3, p1.t= 0.1, output = "optimal")