designOBF
Design Sequential Binary Boundary
There are several functions that create binary sequential boundaries. The function designAb
allows great flexibility in creating
user defined boundaries. The functions designOBF
and designOBFpower
create boudaries of the OBrienFleming type, extending those
boundaries to allow looks after every observation. The former (designOBF
) uses a user defined maximum number of observations (Nmax), while
the latter (designOBFpower
) uses the power argument to try to find a design with a smaller maximum that achieves the desired power.
The functions designFixed
and designFixedpower
are analogous for fixed sample designs. The function designSimon
uses the ph2simon
from the clinfun package to create boundaries using Simon's (1989) twostage design.
Usage
designAb(Nk, a = NULL, b = NULL, theta0 = NULL, tsalpha = NULL, alternative = "two.sided", conf.level = 0.95, binding = "both")
designOBF(Nmax,theta0 = 0.5, k = Inf, tsalpha = NULL, alternative = "two.sided", conf.level = 0.95, binding = "both")
designOBFpower(theta0 = 0.5, theta1=.6, k=Inf, power=.9, tsalpha = NULL, alternative = "two.sided", conf.level = 0.95, binding = "both", allNgreater=FALSE, checkmax=10, maxNmax=2*ss)
designFixed(Nmax, theta0 = 0.5, tsalpha = NULL, alternative = "two.sided", conf.level = 0.95)
designFixedpower(theta0 = 0.5, theta1 = 0.6, power = 0.8, maxNmax = Inf, tsalpha = NULL, alternative = NULL, conf.level = 0.95, allNgreater = FALSE)
designSimon(theta0, theta1, alpha = 0.05, beta = 0.2, type = c("optimal", "minimax"), nmax=100)
Arguments
 Nk
 vector of unique N values where there is stopping
 a
 numeric vector with length(a)=length(Nk)1, stop if number of successes out of Nk[i] is less than or equal to a[i] (see details)
 b
 numeric vector with length(a)=length(Nk)1, stop if number of successes out of Nk[i] is greater than or equal to b[i] (see details)
 Nmax
 maximum number of observations for the design
 maxNmax
 maximum number for Nmax (see details)
 k
 number of looks at the data, Inf denotes looking after each observation
 theta0
 probability of success under the null
 tsalpha
 vector of length 2 with nominal significance levels for each side, if not NULL overrides
conf.level
andalternative
(seegetTSalpha
)  conf.level
 confidence level, ignored if tsalpha is not NULL
 alternative
 character, alternative hypothesis, either 'less', 'greater' or 'two.sided'
 binding
 character, which sides are binding: 'both', 'upper', or 'lower'
 theta1
 probability of success under alternative for power calculations
 power
 nominal power, boundary strives to have power under the alternative at least equal to power
 allNgreater
 logical, if TRUE max(N) will be at least as large as the fixed sample size for which all greater N have power>power
 checkmax
 integer, on the iteration checkmax, check that Nmax has power at least power
 alpha
 one sided alpha level for test theta>theta0
 beta
 1power, for theta1
 type
 character, type of 2stage design, either 'optimal' or 'minimax'
 nmax
 maximum total sample size, cannot be higher than 1000
Details
The tsalpha
, alternative
, and conf.level
are input into the getTSalpha
function to output a tsalpha
vector. The tsalpha
vector allows the nominal error to be different on each side. For details see getTSalpha
.
For designAb
, when you do not want to stop on the lower or upper boundary at any value of Nk, the associated value of a (lower) or b (upper) should be NA.
The designOBF
function calculates a boundary that stops whenever the Bvalue (Lan and Wittes, 1988) is larger than one cutoff value or smaller than a different cutoff value.
The cutoff values are chosen so that the probability of spending alpha on the appropriate side
is almost all spent while still rejecting at at least one end value of the boundary.
The function designOBFpower
repeatedly calls designOBF
and finds the design that
gives sufficient power under a given alternative. Specifically, by setting
Nmax to Nmaxi in designOBF
, where Nmaxi is increased by 1 at each iteration. The initial Nmaxi is either
the first N that gives a large enough power in the fixed sample size design (allNgreater==FALSE) or the first N such that all larger N will give enough power for fixed samples (allNgreater==TRUE).
On the (checkmax)
th iteration, check that the power will be large enough when Nmaxi equals Nmax (from designOBFpower call).
So if you set checkmax
=1 then you will
check the largest value of Nmax first, but this may be inefficient since larger values of Nmax in the obf
call are slower.
See Kirk and Fay (2014) for an introductory paper about exact binary sequential tests using the binseqtest package.
Value

a object of class
boundEst
References
Kirk, J, and Fay, MP (2014). An Introduction to Practical Sequential Inferences via Single Arm Binary Response Studies Using the binseqtest R Package. (to appear in American Statistician).
Lan, KKG, and Wittes, J (1988). The BValue: A Tool for Monitoring Data. Biometrics 44:579585.
Simon R. (1989). Optimal TwoStage Designs for Phase II Clinical Trials. Controlled Clinical Trials 10, 110.