Learn R Programming

PowerTOST (version 1.3-5)

sampleN.scABEL.ad: Sample size estimation for ABEL and iteratively adjusted alpha

Description

This function performs a sample size estimation for the BE decision via Average Bioequivalenc with Expanding Limits (ABEL) based on simulations. Simultaneously alpha is iteratively adjusted in order to maintain the consumer risk at the nominal level.

Usage

sampleN.scABEL.ad(alpha = 0.05, targetpower = 0.8, theta0, theta1,
                  theta2, CV = 0.3, design = c("2x3x3", "2x2x4", "2x2x3"),
                  regulator = c("EMA", "ANVISA"), nstart = NA, nsims = 1e6,
                  imax = 100, tol, print = TRUE, details = FALSE,
                  alpha.pre = 0.05, setseed = TRUE)

Arguments

alpha
Type I error (TIE) probability (nominal level of the test). Per convention commonly set to 0.05. A lower value might be specified (e.g., in order to adjust for multiplicity in dose proportionality studies).
targetpower
Power to achieve at least. Must be {=>0,
theta0
True or assumed bioavailability ratio. Defaults to 0.90 if not given explicitly.
theta1
Conventional lower ABE limit to be applied in the mixed procedure if CVwR = CVswitch. Also lower limit for the point estimate constraint. Defaults to 0.80 if not given explicitly.
theta2
Conventional upper ABE limit to be applied in the mixed procedure if CVwR = CVswitch. Also upper limit for the point estimate constraint. Defaults to 1.25 if not given explicitly.
CV
Coefficient(s) of variation as ratio (not percent). Defaults to 0.30 (i.e., the location of maximum inflation of the TIE for the EMA's ABEL. If length(CV) = 1 the same CV of Test and Reference is assume
design
Design of the study to be planned. "2x3x3" is the partial replicate design (RRT|RTR|TRR). "2x2x3" is the 2-sequence 3-period full replicate design (RTR|TRT). "2x2x4" is the 2-sequence 4-period full replicate design (
regulator
Regulatory body settings for expanding the BE acceptance limits. Defaults to regulator = "EMA". This argument may be given also in lower case.
nstart
Best guess sample size. If not given (default), simulations start with the sample size estimated for alpha (or alpha.pre, if given), theta0, and targetpower. Can also be set to start t
nsims
Number of simulations to be performed to estimate the (empirical) TIE and in each iteration of adjusting alpha. The default value 1,000,000 = 1e+6 should not be lowered.
imax
Maximum number of steps in sample size search. Defaults to 100.
tol
Desired accuracy (convergence tolerance). Defaults to 1e-6 for regulator = "EMA" and to 1e-7 for regulator = "ANVISA".
print
If TRUE (default), the function prints its results.
details
If TRUE (default), the steps during sample size search are shown. Additionally information about the impact on power by adjusting alpha and change of study costs due to the increased sample size is given.
alpha.pre
Pre-specified alpha (optional). Must be <=alpha. ABEL will be performed at level alpha.pre and the TIE assessed at level alpha. Less powerful than adjusting alpha but an alterna
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(123456) is issued if setseed=TRUE (default).

Value

  • Returns a data.frame with the input and results for adjusted alpha, type I error, sample size, and achieved power. The Sample size column contains the total sample size. If no adjustment is necessary, NA will be returned in the adj. alpha column and other results are identical to the ones obtained by sampleN.scABEL.

encoding

utf-8

Warning

The sample size estimation for extreme theta0 (<0.83 or="">1.21) may be time consuming and will eventually also fail since the start values chosen are not really reasonable in that ranges. If you really need sample sizes in that range be prepared to restart the sample size estimation with nstart above the last one before failure. Since the dependence of power from n is very flat in the mentioned region you may also consider to adapt the number of simulations not to tap in the simulation error trap. See also the Warning section of the function power.scABEL concerning the power value agreement to those obtained from simulations via subject data.

Details

The simulations are done via the distributional properties of the statistical quantities necessary for assessing BE based on ABEL. Simulations for the TIE are performed at the upper (expanded) limit U of the acceptance range. Examples of U at EMA's CVswitch and CVcap: scABEL(CV=0.3, regulator="EMA")[["upper"]] [1] 1.25 scABEL(CV=0.5, regulator="EMA")[["upper"]] [1] 1.43191 Due to the symmetry around 1 results are valid for the lower (expanded) limit L as well. If an inflation of the TIE is expected (i.e., > alpha), alpha is iteratively adjusted until at least the target power is reached and the consumer risk is maintained (<= alpha)

References

Tóthfalusi{Tothfalusi}, L., Endrényi{Endrenyi}, L. Sample Sizes for Designing Bioequivalence Studies for Highly Variable Drugs J Pharm Pharmaceut Sci. 2011;15(1):73-84 http://ejournals.library.ualberta.ca/index.php/JPPS/article/download/11612/9489{free download} Wonnemann, M., Frömke{Froemke}, C., Koch, A. Inflation of the Type I Error: Investigations on Regulatory Recommendations for Bioequivalence of Highly Variable Drugs Pharm Res. 2015;32(1):135-43 Labes, D., Schütz{Schuetz}, H. Inflation of Type I Error in the Evaluation of Scaled Average Bioequivalence, and a Method for its Control in preparation 2016

See Also

scABEL.ad, sampleN.scABEL, power.scABEL, scABEL

Examples

Run this code
# --- Not run due to timing policy of CRAN for examples
# each may run some ten seconds or more
# using all the defaults:
# partial replicate design, target power=80\%,
# true assumed ratio = 0.90, 1E+6 simulated studies
# EMA regulatory settings (ABE limits, PE constraint 0.8 - 1.25)
sampleN.scABEL.ad(CV = 0.3)
# should result in n 60, power 0.8022.
# Note: Without adjustment by sampleN.scABEL(): n 54, power 0.8159
# Easier to show the details:
sampleN.scABEL.ad(CV = 0.3, details = TRUE)
#
# same with ANVISA settings, CVswitch = 40\%
sampleN.scABEL.ad(CV = 0.3, regulator = "anvisa")
# should result in n 60, power 0.8094.
#
# full replicate design, target power = 90\%, pre-specified alpha 0.025
sampleN.scABEL.ad(CV = 0.3, targetpower = 0.8, design = "2x2x4", alpha.pre = 0.025)
# should result in n 44, power 0.8040; pre-specified alpha justified.

Run the code above in your browser using DataLab