fut {grpseq}R Documentation

Design of non-binding futility analysis at multiple points

Description

Design of non-binding futility looks at multiple information times based on conditional power (CP), predictive power (PP), or condition power under current estimate (CPd) (Gallo, Mao, and Shih, 2014).

Usage

fut(
  alpha,
  beta,
  t,
  gamma,
  side = 2,
  increment = 1e-04,
  si = 0,
  scale = "CP",
  seed = 12345
)

Arguments

alpha

Type I error.

beta

Type II error (1 - power).

t

A numeric vector of information times in (0, 1) for futility looks.

gamma

A numeric vector of probabilities (whose meaning depends on scale) at information times t.

side

1- or 2-sided test.

increment

Error for the numerical solution of the sample size inflation factor.

si

0: without sample size inflation; 1: with sample size inflation.

scale

Character string specifying the scaled used: "CP", conditional power; "PP", predictive power; "CPd": condition power under current estimate.

seed

Seed number for the randomized evaluation of multivariate normal distribution.

Value

An object of class fut with the following components. gamma1: conditional power at information times t converted from the supplied gamma and scale; theta: local alternative associated with the actual power when the futility rules of enforced; IF: sample size inflation factor if si=1; loss: power loss if si=0.

References

Gallo, P., Mao, L., and Shih, V.H. (2014). Alternative views on setting clinical trial futility criteria. Journal of Biopharmaceutical Statistics, 24, 976-993.

See Also

print.fut, summary.fut, plot.fut, powerplot

Examples

## load the package
library(grpseq)
## two-sided level 0.05 test with 80% power;
## evenly spaced three futility looks with predictive power 20%;
## inflate sample size to recoup power.
obj1 <- fut(alpha=0.05,beta=0.2,t=(1:3)/4,gamma=0.2*rep(1,3),side=2,scale="PP",si=1)
obj1
## print the summary results
summary(obj1)

## do the same thing without sample size inflation
obj2 <- fut(alpha=0.05,beta=0.2,t=(1:3)/4,gamma=0.2*rep(1,3),side=2,scale="PP",si=0)
obj2
## print the summary results
summary(obj2)
oldpar <- par(mfrow = par("mfrow"))
par(mfrow=c(1,2))
## plot the futility boundaries by z-value
plot(obj2,scale='z',lwd=2,main="")
## plot the futility boundaries by B-value
plot(obj2,scale='b',lwd=2,main="")
par(oldpar)
## plot the power curve as a function of the (local)
## effect size in units of the hypothesized effect size
## ref=TRUE requests the power curve for the original one-time analysis
powerplot(obj2,lwd=2, ref=TRUE)

[Package grpseq version 1.0 Index]