*! version 1.1.4 24may2013

Title

landemets -- Boundaries for group sequential clinical trials using alpha spending functions

Syntax

landemets , [options]

t(numlist) set monitoring times; default is t(1)

alpha(numlist) set type I error probability(ies); default is alpha(.05)

method(method) set the alpha spending function(s); default is method(obf)

rho(numlist) set the parameter of alpha spending functions in the power family

onesided control if one-sided boundaries are to be computed

beta set total type II error probability(ies)

theta set standardized treatment difference (drift)

plot display a graph with the boundaries

Description

landemets computes boundaries for group sequential clinical trials using the method of Lan and DeMets (1983).

Remarks

landemets requires that the Stata module -moremata- (Jann, 2005) be installed.

Examples

Compute boundaries with the default options:

. landemets

Ten equally spaced monitoring times between 0.1 and 1:

. landemets, t(0.1(0.1)1)

The same, but plotting the boundaries:

. landemets, t(0.1(0.1)1) plot

Type I error probability set to 0.01, with a different choice of four, not equally spaced times:

. landemets, t(0.2 0.3 0.5 1) alpha(0.01)

The same, but using a Pocock type alpha spending function:

. landemets, t(0.2 0.3 0.5 1) alpha(0.01) method(poc)

One-sided boundaries using an alpha spending function in the power family, with parameter set to 1.5:

. landemets, t(0.2(0.2)1) method(pow) rho(1.5) onesided

Two-sided asymmetric boundaries; the total type I error probability, 0.05, is divided in 0.04 and 0.01 for the lower and
upper boundaries, respectively; an O'Brien-Fleming type alpha spending function is used for both boundaries:

. landemets, t(0.2(0.2)1) alpha(0.04, 0.01) method(obf obf)

Two-sided asymmetric boundaries; the total type I error probability, 0.05, is equally divided between the lower and upper
boundaries, but different alpha spending functions are used for each boundary (lower: power family, with rho = 2, upper:
O'Brien-Fleming type):

. landemets, t(0.2(0.2)1) alpha(0.025, 0.025) method(pow obf) rho(2)

Besides the boundaries for a total type I error probability equal to 0.05 (using default options), computation of the
standardized treatment differences (drifts) for total type II error probabilities equal to 0.1 and 0.2, respectively:

. landemets, beta(0.1 0.2)

Besides the boundaries for a total type I error probability equal to 0.05 (using default options), computation of the
total type II error probabilities for standardized treatment differences (drifts) equal to 1, 1.5 and 2, respectively:

. landemets, theta(1 1.5 2)

Options

t(numlist) specifies the times at which analyses are to be performed. They must be contained in (0,1], and the maximum
value should be 1. The default is t(1), meaning no interim analyses.

alpha(numlist) specifies the type I error probability. The numlist may be of length one or two. If it has only one
value, two-sided (symmetric) or one-sided stopping boundaries for a type I error probability equal to that value are computed
(whether two-sided or one-sided boundaries are computed is controlled by the onesided option; see below). If the length
of numlist is two, its components give the type I error probability for, respectively, the lower and upper boundaries. Thus,
if the two alpha values or the alpha spending function used for each boundary are different (see the method option below),
asymmetric two-sided boundaries are obtained. The default is alpha(0.05).

method(method) specifies the alpha spending function(s) to be used. The accepted arguments are:

a) one of obf (O'Brien-Fleming type), poc (Pocock type), or pow (power family). This is the way to specify the
alpha spending function for symmetric two-sided or one-sided boundaries. When the method is thus specified, the argument of the
alpha option must be of length one.

b) any two (possibly repeated) values in a) separated by one or more spaces. This is the way to specify the alpha spending functions
used for each boundary (the first word for the lower boundary, the second word for the upper one) for asymmetric boundaries. When
the method is thus specified, the argument of the alpha option must be of length two.

The default is method(obf). For details on the types of alpha spending functions see, e.g., Cook and DeMets, 2008.

rho(numlist) specifies the parameter(s) of the power family alpha spending function(s). The numlist may be of length one
or two, depending on how many alpha spending functions of this type are specified by the method option.

onesided specifies if one-sided, instead of two-sided boundaries, are to be computed.

beta(numlist) specifies the total type II error probability(ies). For the computed boundaries and for each value of the numlist,
the corresponding value of theta, i.e. the standardized treatment difference or drift, is computed. It is an error to try to use the
options beta and theta at the same time.

theta(numlist) specifies the standardized treatment difference(s) or drift(s). For the computed boundaries and for each value of
the numlist, the corresponding value of beta, i.e. the total type II error probability, is computed. It is an error to try to use the
options beta and theta at the same time.

plot specifies if a plot of stopping boundaries vs. monitoring times is to be displayed.

Saved results

landemets saves the following in r():

Scalars

r(alpha) overall probability of type I error (omitted when asymmetric boundaries are computed)

r(alpha_lower) overall probability of type I error for the lower boundary (omitted when symmetric or one-sided
boundaries are computed)

r(alpha_upper) overall probability of type I error for the upper boundary(omitted when symmetric or one-sided
boundaries are computed)

r(K) number of interim analyses

Macros

r(bound_type) type of boundaries computed: two-sided (asymmetric or not) or one-sided

r(method) alpha spending function used (omitted when asymmetric boundaries are computed)

r(method_lower) alpha spending function used for the lower boundary (omitted when symmetric or one-sided
boundaries are computed)

r(method_upper) alpha spending function used for the upper boundary (omitted when symmetric or one-sided
boundaries are computed)

Matrices

r(bound_alpha) a matrix with the following named columns:

time, monitoring times

lower, lower boundaries (omitted if one-sided boundaries are computed)

upper, upper boundaries

cumalpha, cumulative alpha values

diffalpha, first difference of the cumulative alpha values

r(beta_theta) a matrix (omitted when theta and beta options are not used) with the following named columns:

beta, total type II error probabilities

theta, standardized treatment differences (drifts)

Author

Ignacio López de Ullibarri

Department of Mathematics

University of A Coruña, Spain

E-mail: ilu@udc.es

References

Cook TD and DeMets DL (2008), Introduction to Statistical Methods for Clinical Trials, Boca Raton: Chapman & Hall/CRC

Jann B (2005), moremata: Stata module (Mata) to provide various functions, available from
http://ideas.repec.org/c/boc/bocode/s455001.html

Lan K and DeMets DL (1983), Discrete sequential boundaries for clinical trials, Biometrika, 70: 659-663