scABEL.ad: Iteratively adjusted alpha for ABEL

View source: R/scABEL.ad.R

scABEL.adR Documentation

Iteratively adjusted alpha for ABEL

Description

This function iteratively adjusts alpha for the BE decision via Average Bioequivalence with Expanding Limits (ABEL) based on simulations in order to maintain the consumer risk at the nominal level.

Usage

scABEL.ad(alpha = 0.05, theta0, theta1, theta2, CV,
          design = c("2x3x3", "2x2x4", "2x2x3"), regulator,
          n, alpha.pre = 0.05, imax = 100, tol, print = TRUE,
          details = FALSE, setseed = TRUE, nsims = 1e+06,
          sdsims = FALSE, progress)

Arguments

alpha

Type I Error (TIE) probability (nominal level of the test). Per convention commonly set to 0.05.

theta0

‘True’ or assumed T/R ratio. Defaults to 0.90 according to the two Lászlós 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

Intra-subject coefficient(s) of variation as ratio (not percent).

  • If given as a scalar (length(CV) == 1) the same CV of Test and Reference is assumed (homoscedasticity, CVwT==CVwR).

  • If given as a vector (length(CV) == 2), i.e., assuming heteroscedasticity, the CV of the Test must be given in CV[1] and the one of the Reference in the CV[2].

design

Design of the study.
"2x3x3" is the partial replicate design.
"2x2x4" is a full replicate design with 2 sequences and 4 periods.
"2x2x3" is a full replicate design with 2 sequences and 3 periods.
Defaults to "2x3x3". Details are given the section about Designs.

regulator

Regulatory settings for the expanding of the BE acceptance limits. Choose from "EMA" (default), "HC", "GCC", or "FDA". This argument may also be given in lower case.

n

Total sample size of the study or a vector of sample size / sequences. If n leads to an unbalanced design (i.e., is not a multiple of two in the full replicate designs or not a multiple of three in the partial replicate), the code tries to keep subjects / sequence as balanced as possible.
In evaluating a particular unbalanced study always give n as a vector.
Only if design = "2x2x3" (TRT|RTR) the order of sample sizes is important. n[1] is for sequence TRT and n[2] for sequence RTR.
If n is missing, a sample size is estimated with target power 0.80 and pre-specified alpha if defined. Otherwise, alpha is used.

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 alternative in the critical region of maximum inflation of the TIE. In certain scenarios Bonferroni’s 0.025 is not sufficient to preserve the Type I Error (e.g., the third example).
Not recommended if CVwR >= 0.45 due to poor power characteristics.

imax

Maximum number of steps in sample size search. Defaults to 100.

tol

Desired accuracy (convergence tolerance). Defaults to 1E-6.

print

If ⁠TRUE⁠ (default), the function sends its results to the console.

details

If TRUE, the relative change of the consumer risk in percent is shown. Additionally information about the impact on power (for specified theta0 and target power 0.80), runtime, and number of simulations (iterations) are given. Defaults to FALSE.

setseed

Simulations are dependent on the starting point of the (pseudo) random number generator. To avoid differences in power for different runs set.seed(123456) is issued if setseed=TRUE (default).

nsims

Number of simulations to be performed to estimate the (empirical) TIE error and in each iteration of adjusting alpha. The default value 1,000,000 = 1E+6 should not be lowered.

sdsims

If FALSE (default) power is estimated by the respective ‘key’ statistics. Recommended for speed reasons.
Set to TRUE if results of power.scABEL are expected to be inaccurate (partial replicate design with unbalanced sequences and/or heteroscedasticity where CVwT > CVwR) and subject data via power.scABEL.sdsims should be simulated instead. Very time consuming (easily 100times slower)! Subject data simulations are only supported for regulator = "EMA" and regulator = "GCC".

progress

Set to TRUE if a progress bar should be displayed. Ignored if sdsims = FALSE.

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. Due to the symmetry around 1 results are valid for the lower (expanded) limit L as well.
U at the EMA’s and Health Canada’s CVcap, the GCC’s for any CVwR > 0.3:

scABEL(CV = 0.5, reg = "EMA")[["upper"]]
[1] 1.43191
scABEL(CV = 0.57382, reg = "HC")[["upper"]]
[1] 1.5
scABEL(CV = 0.5, reg = "GCC")[["upper"]]
[1] 1.333333

Simulated studies are evaluated by ANOVA (Method A) as recommended in the EMA’ Q&A-document and by intra-subject contrasts if regulator = "HC". Health Canada requires a mixed-effects model which cannot be implemented in R. However, intra-subjects contrasts are a sufficiently close approximation.
The Type I Error in ABEL depends only on CVwR and – to a minor degree – the sample size. Algorithm:

  1. The TIE is assessed based on alpha (or alpha.pre) and compared to the nominal level of the test alpha.

  2. If no inflation of the TIE is found, the algorithm stops.

  3. Otherwise, alpha is iteratively adjusted (i.e., alpha.adj <alpha) until no more relevant inflation of the TIE is detected (i.e., abs(TIE - alpha) <= tol).

Value

Sends results to the console if argument print=TRUE (default).
Returns a list with the input, adjusted alpha, and Type I Error (for nominal and adjusted alpha) if argument print=FALSE.
If no adjustment is necessary, NAs will be returned for the respective variables (alpha.adj, TIE.adj, rel.change, pwr.adj, rel.loss).

Designs

Although some designs are more ‘popular’ than others, power calculations are valid for all of the following designs:

"2x2x4" TRTR | RTRT
TRRT | RTTR
TTRR | RRTT
"2x2x3" TRT | RTR
TRR | RTT
"2x3x3" TRR | RTR | RRT

Warning

See the Warning section of the function power.scABEL concerning the power value agreement to the one obtained by simulations via subject data.

Note

Specifying theta0 is not necessary.
If theta0 is not given, achievable power for the common target of 0.80 (both for alpha and adjusted alpha) will be estimated. If theta0 is specified, its value will be used; again for target power 0.80.
If you are interested in other levels of power, use sampleN.scABEL.ad.

The EMA’s method is currently recommended in other jurisdictions as well (e.g., by the WHO; in ASEAN States, Australia, Brazil, Egypt, the Eurasian Economic Union, New Zealand, and the East African Community).
If CVwR > 30%, fixed wider limits of 0.7500–1.3333 are recommended by the Gulf Cooperation Council (Bahrain, Kuwait, Oman, Qatar, Saudi Arabia, United Arab Emirates).

Author(s)

H. Schütz

References

Wonnemann M, Frömke 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. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s11095-014-1450-z")}

Muñoz J, Alcaide D, Ocaña J. Consumer’s risk in the EMA and FDA regulatory approaches for bioequivalence in highly variable drugs. Stat Med. 2015;35(12):1933–43. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.6834")}

Labes D, Schütz H. Inflation of Type I Error in the Evaluation of Scaled Average Bioequivalence, and a Method for its Control. Pharm Res. 2016;33(11):2805–14. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s11095-016-2006-1")}

Tóthfalusi L, Endrényi L. Algorithms for Evaluating Reference Scaled Average Bioequivalence: Power, Bias, and Consumer Risk. Stat Med. 2017;36(27):4378–90. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.7440")}

Molins E, Cobo E, Ocaña J. Two-Stage Designs Versus European Scaled Average Designs in Bioequivalence Studies for Highly Variable Drugs: Which to Choose? Stat Med. 2017;36(30):4777–88. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.7452")}

European Medicines Agency, Committee for Medicinal Products for Human Use. Guideline on the Investigation of Bioequivalence. London, 20 January 2010. CPMP/EWP/QWP/1401/98 Rev. 1/ Corr **

European Medicines Agency, Committee for Medicinal Products for Human Use. Questions & Answers: positions on specific questions addressed to the Pharmacokinetics Working Party (PKWP). London, 19 November 2015. EMA/618604/2008 Rev. 13

Health Canada, Therapeutic Products Directorate. Comparative Bioavailability Standards: Formulations Used for Systemic Effects, 2.1.1.8 Highly variable drug products Ottawa, 08 June 2018. online

Executive Board of the Health Ministers’ Council for GCC States. The GCC Guidelines for Bioequivalence. May 2021. Version 3.0 Saudi Food & Drug Authority The GCC Guidelines for Bioequivalence. Version 3.1

See Also

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

Examples

# Using all defaults:
# TRR|RTR|RRT, target power 80% for assumed ratio 0.90 (estimated sample size 54),
# EMA regulatory settings (ABE limits and PE constraint 0.80 - 1.25),
# 1E+6 simulated studies.
# Not run: due to timing policy of CRAN for examples

scABEL.ad(CV = 0.3)
# Should result in adjusted alpha 0.03389 (TIE 0.5000, TIE for nominal alpha 0.07189).
#
# As above but subject data simulations.

scABEL.ad(CV = 0.3, sdsims = TRUE)
# Should result in adjusted alpha 0.03336 (TIE 0.5000, TIE for nominal alpha 0.07237).
#
# TRT|RTR, heteroscedasticity, sample size 48 (unbalanced), subject data simulations.

scABEL.ad(CV = c(0.25, 0.3), design = "2x2x3", n = c(23, 25), sdsims = TRUE)
# Should result in adjusted alpha 0.02465 (TIE 0.5000, TIE for nominal alpha 0.09050).
#
# TRTR|RTRT, CV 0.35, sample size 33 (unbalanced).

scABEL.ad(CV = 0.35, design = "2x2x4", n = c(16, 17))
# Should result in adjusted alpha 0.03632 (TIE 0.5000, TIE for nominal alpha 0.06544).

PowerTOST documentation built on May 29, 2024, 4:40 a.m.