## example 1: what is the result of calling a spending function
## A call to 'ObrienFleming' just returns the call
ObrienFleming()
## but really its value is a list with a component named
## 'type' equal to "ObrienFleming" and a component named
## 'call' equal to the call.
names(ObrienFleming)
ObrienFleming()$type
ObrienFleming()$call
## example 2: ...But the intended purpose of the spending functions is
## in constructing calls to 'GrpSeqBnds' and to 'PwrGSD':
frac <- c(0.07614902,0.1135391,0.168252,0.2336901,0.3186155,
0.4164776,0.5352199,0.670739,0.8246061,1)
drift <- c(0.3836636,0.5117394,0.6918584,0.8657705,1.091984,
1.311094,1.538582,1.818346,2.081775,2.345386)
test <- GrpSeqBnds(frac=frac, EfficacyBoundary=LanDemets(alpha=0.05, spending=ObrienFleming),
FutilityBoundary=LanDemets(alpha=0.10, spending=Pocock),
drift=drift)
Run the code above in your browser using DataLab