power.tsd.p: Power calculation of adaptive 2-stage BE studies in 2-group...

Description Usage Arguments Details Value Author(s) References See Also Examples

Description

This functions calculate the ‘empirical’ power of 2-stage BE studies with 2 parallel groups according to Fuglsang 2014 via simulations. The Potvin decision schemes are modified to include a futility criterion Nmax, a minimum number of subjects to be included in stage 2 and to allow the sample size estimation step to be done with point estimate and variabilities from stage 1 (fully adaptive).

Function power.tsd.pAF() performes exactly as described in Fuglsang’s paper, namely the power monitoring steps and the sample size estimation are based always on the pooled t-test.

Function power.tsd.p() with argument test="welch" on the other hand uses the genuine power of Welch’s test. Moreover it accepts unequal treatment groups in stage 1.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
power.tsd.p(method = c("B", "C"), alpha0 = 0.05, alpha = c(0.0294, 0.0294),
            n1, GMR, CV, targetpower = 0.8, pmethod = c("nct", "exact", "shifted"),
            usePE = FALSE, Nmax = Inf, min.n2=0, test = c("welch", "t-test", "anova"),
            theta0, theta1, theta2, npct = c(0.05, 0.5, 0.95), nsims,
            setseed = TRUE, details = FALSE)

power.tsd.pAF(method = c("B", "C"), alpha0 = 0.05, alpha = c(0.0294, 0.0294),
              n1, GMR, CV, targetpower = 0.8, pmethod = c("shifted", "nct", "exact"),
              usePE = FALSE, Nmax = Inf, test = c("welch", "t-test", "anova"),
              theta0, theta1, theta2, npct = c(0.05, 0.5, 0.95), nsims,
              setseed = TRUE, details = FALSE)

Arguments

method

Decision schemes according to Potvin et.al. (defaults to "B").
Potvin’s ‘method D’ can be obtained by choosing "C" but setting alpha=c(0.028, 0.028).

alpha0

Alpha value for the first step(s) in Potvin "C", the power inspection and BE decision if power > targetpower.
Defaults to 0.05.

alpha

Vector (two elements) of the nominal alphas for the two stages.
Defaults to Pocock’s alpha setting alpha=c(0.0294, 0.0294).

n1

Sample size of stage 1.
Function power.tsd.p() accepts also a vector of stage 1 sample sizes with two elements, where the number of subjects in the in treatment group T should be given in the first element and the number of subjects in the treatment group R in the second.
If given with one element, the total n1 should be even.

GMR

Ratio T/R to be used in decision scheme (power calculations in stage 1 and sample size estimation for stage 2).

CV

Coefficient of variation of the total variability (use e.g., 0.3 for 30%)
Can be a vector with two elements. In that case CV[1] is for the group under the Test treatment and CV[2] for the group under the Reference.

targetpower

Power threshold in the power monitoring steps and power to achieve in the sample size estimation step.

pmethod

Power calculation method, also to be used in the sample size estimation for stage 2.
Implemented are "nct" (approximate calculations via non-central t-distribution, "exact" (exact calculations via Owen’s Q), and "shifted" (approximate calculation via shifted central t-distribution
Defaults to "nct" for speed reasons in function power.tsd.p() as a reasonable compromise between speed and accuracy in the sample size estimation step.
Defaults to "shifted" in function power.tsd.pAF() for consistancy with Fuglsang.

usePE

If TRUE the sample size estimation step is done with MSE and PE of stage 1.
Defaults to FALSE i.e., the sample size is estimated with GMR and MSE (calculated from CV) of stage 1 analogous to Potvin et. al.
NB: The power inspection steps in the Potvin methods are always done with the GMR argument and MSE (CV) of stage 1.

Nmax

Futility criterion. If set to a finite value, all studies simulated in which a sample size >Nmax is obtained will be regarded as BE=FAIL.
Set this argument to Inf, the default, to work without that futility criterion.

min.n2

Minimum sample size of stage 2.
If the sample size estimation step gives N < n1+min.n2 the sample size for stage 2 will be forced to min.n2, i.e. the total sample size to n1+min.n2.
Defaults to zero, i.e., no minimum sample size for stage 2 is applied.

test

Test on which the CI calculations are based on.
Defaults to "welch" = Welch’s t-test accounting for heteroscedasticity in the variabilities of Test and Reference, but neglecting stage effects.
"anova" calculates the 100(1–2α) confidence interval based on an ANOVA with treatment and stage in the model.
"t-test" calculates the 100(1–2α) confidence interval based on the t-test assuming equal variabilities of Test and Reference and neglecting stage effects.

theta0

Assumed ratio of geometric means (T/R) for simulations. If missing, defaults to GMR.

theta1

Lower bioequivalence limit. Defaults to 0.8.

theta2

Upper bioequivalence limit. Defaults to 1.25.

npct

Percentiles to be used for the presentation of the distribution of n(total)=n1+n2.
Defaults to c(0.05, 0.5, 0.95) to obtain the 5% and 95% percentiles and the median.

nsims

Number of studies to simulate.
If missing, nsims is set to 1E+05 = 100,000 or to 1E+06 = 1 Mio if estimating the empiric Type I Error ('alpha'), i.e., with theta0 at the border or outside the acceptance range theta1 ... theta2.

setseed

Simulations are dependent on the starting point of the (pseudo) random number generator. To avoid differences in power for different runs a set.seed(1234567) is issued if setseed=TRUE, the default.
Set this argument to FALSE to view the variation in power between different runs.

details

If set to TRUE the function prints the results of time measurements of the simulation steps. Defaults to FALSE.

Details

The calculations follow in principle the simulations as described by Fuglsang.
The underlying subject data are assumed to be evaluated after log-transformation. But instead of simulating subject data the statistics (mean and variance of Test and Reference of stage 1 and stage 2) are simulated via their associated distributions (normal and χ2).

Value

Returns an object of class "pwrtsd" with all the input arguments and results as components.
The class "pwrtsd" has an S3 print method.
The results are in the components:

pBE

Fraction of studies found BE.

pBE_s1

Fraction of studies found BE in stage 1.

pct_s2

Percentage of studies continuing to stage 2.

nmean

Mean of n(total).

nrange

Range (min, max) of n(total).

nperc

Percentiles of the distribution of n(total).

ntable

Object of class "table" summarizing the discrete distribution of n(total) via its distinct values and counts of occurences of these values. This component is only given back if usePE==FALSE or otherwise if is.finite(Nmax), i.e., a futility criterion is used.

Author(s)

D. Labes

References

Fuglsang A. Sequential Bioequivalence Approaches for Parallel Design.
AAPS J. 2014; 16(3):373–8. doi: 10.1208/s12248-014-9571-1

Potvin D, DiLiberti CE, Hauck WW, Parr AF, Schuirmann DJ, Smith RA. Sequential design approaches for bioequivalence studies with crossover designs.
Pharm Stat. 2008; 7(4):245–62. doi: 10.1002/pst.294

See Also

power.2stage for analogous calculations for the 2×2 crossover.

Examples

1
2
# using all the defaults
power.tsd.p(n1=48, CV=0.25)

Power2Stage documentation built on Nov. 21, 2021, 1:07 a.m.