knitr::opts_chunk$set( collapse = TRUE, comment = "#" )
library(PowerTOST) # attach the library
Note that analysis of untransformed data (logscale = FALSE
) is not supported. The terminology of the design
argument follows this pattern: treatments x sequences x periods
.
With x < pa.ABE(...)
, x < pa.scABE(...)
, and x < pa.NTID(...)
results are given as an S3 object,^[Wickham H. Advanced R. 20190808. The S3 object system.] which can be printed, plotted, or both.
The estimated sample sizes give always the total number of subjects (not subject/sequence in crossovers or subjects/group in a parallel design – like in some other software packages).
pa.ABE()
 Parameter  Argument  Purpose  Default 

 CV  CV
 CV  none 
 $\small{\theta_0}$  theta0
 ‘True’ or assumed deviation of T from R  0.95

 $\small{\pi}$  targetpower
 Minimum desired power  0.80

 $\small{\pi}$  minpower
 Minimum acceptable power  0.70

 design  design
 Planned design  "2x2x2"

 passed  ...
 Arguments to power.TOST()
 none 
If no additional arguments are passed, the defaults of power.TOST()
are applied, namely alpha = 0.05
, theta1 = 0.80
, theta2 = 1.25
.
Arguments targetpower
, minpower
, theta0
, theta1
, theta2
, and CV
have to be given as fractions, not in percent.\
CV is generally the within (intra) subject coefficient of variation. In replicate designs only homoscedasticity (CV~wT~ = CV~wR~) is supported. For design = "parallel"
it is the total (a.k.a. pooled) CV.
The conventional TRRT (a.k.a. ABBA) design can be abbreviated as "2x2"
. Some call the "parallel"
design a ‘onesequence’ design. The "paired"
design has two periods but no sequences, e.g., in studying linear pharmacokinetics a single dose is followed by multiple doses. A profile in steady state (T) is compared to the one after the single dose (R). Note that the underlying model assumes no period effects.
pa.scABE()
 Parameter  Argument  Purpose  Default 

 CV  CV
 CV  none 
 $\small{\theta_0}$  theta0
 ‘True’ or assumed deviation of T from R  0.90

 $\small{\pi}$  targetpower
 Minimum desired power  0.80

 $\small{\pi}$  minpower
 Minimum acceptable power  0.70

 design  design
 Planned replicate design  "2x2x3"

 regulator  regulator
 ‘target’ jurisdiction (see below)  "EMA"

 nsims  nsims
 Number of simulations  1e5

 passed  ...
 Arguments to power.scABEL()
or power.RSABE()
 none 
If no additional arguments are passed, the defaults of power.scABEL()
and power.RSABE()
are applied, namely alpha = 0.05
, theta1 = 0.80
, theta2 = 1.25
. Note the recommended ^[Tóthfalusi L, Endrényi L. Sample Sizes for Designing Bioequivalence Studies for Highly Variable Drugs. J Pharm Pharmaceut Sci. 2011;15(1):7384. Open access.] default $\small{\theta_0}$ 0.90 for HVDPs.\
regulator
can be "EMA"
, "HC"
, "GCC"
, or "FDA"
.
Arguments targetpower
, minpower
, theta0
, theta1
, theta2
, and CV
have to be given as fractions, not in percent. CV is the within (intra) subject coefficient of variation, where only homoscedasticity (CV~wT~ = CV~wR~) is supported.
pa.NTIDFDA()
 Parameter  Argument  Purpose  Default 

 CV  CV
 CV  none 
 $\small{\theta_0}$  theta0
 ‘True’ or assumed deviation of T from R  0.975

 $\small{\pi}$  targetpower
 Minimum desired power  0.80

 $\small{\pi}$  minpower
 Minimum acceptable power  0.70

 design  design
 Planned replicate design  "2x2x4"

 nsims  nsims
 Number of simulations  1e5

 passed  ...
 Arguments to power.NTID()
 none 
If no additional arguments are passed, the defaults of power.NTID()
are applied, namely alpha = 0.05
, theta1 = 0.80
, theta2 = 1.25
. Note the default $\small{\theta_0}$ 0.975 for NTIDs since the FDA requires tighter batch release limits of ±5\% for them.
Arguments targetpower
, minpower
, theta0
, theta1
, theta2
, and CV
have to be given as fractions, not in percent. CV is the within (intra) subject coefficient of variation, where only homoscedasticity (CV~wT~ = CV~wR~) is supported.
pa.ABE(CV = 0.20, theta0 = 0.92)
{height=626px}
The most critical parameter is $\small{\theta_0}$, whereas dropouts are the least important. We will see a similar pattern in other approaches as well.
pa.scABE(CV = 0.55)
{heigth=626px}
The idea behind referencescaling is to preserve power even for high variability without requiring extreme sample sizes. However, we make two interesting observations. At CV~wR~ 0.55 already the upper cap of scaling (50\%) cuts in and the expanded limits are the same as at CV~wR~ 0.50. Therefore, if the variability increases, power decreases. On the other hand, if the CV decreases, power increases first (because being affected by the upper cap is less likely) and then decreases again (because the limits can be less expanded).
Assumed intrasubject CV 0.40, 4period full replicate design.
pa.scABE(CV = 0.40, design = "2x2x4")
{height=626px}
Here we see a different pattern. With increasing variability power increases (due to more expanding) up to the cap of scaling where it starts to decrease like in the previous example. If the variability decreases, power decreases as well (less expanding). However, close the the switching CV~wR~ (30\%) power increases again. Although we cannot scale anymore, with 30 subjects the study is essentially ‘overpowered’ for ABE.
Same assumptions (CV, $\small{\theta_0}$) like in Example 2.
pa.scABE(CV = 0.55, regulator = "HC")
{height=626px}
Since we are close to Health Canada’s upper cap of 57.4\%, power decreases on both sides. Note that three subjects less than for the EMA’s method are required and CV~wR~ can increase to \~0.76 until we reach the minimum acceptable power – which is substantially higher than the \~0.67 for the EMA.
Same assumptions (CV, $\small{\theta_0}$) like in Example 2 and Example 4.
pa.scABE(CV = 0.55, regulator = "GCC")
{height=626px}
Since we are far above the switching CV~wR~ of 30\%, (fixed) widened BE margins of 75.00133.33\% are applicable and the pattern is similar to ABE.
Same assumptions (CV, $\small{\theta_0}$) like in Example 2, Example 4 and Example 5.
pa.scABE(CV = 0.55, regulator = "FDA")
{height=626px}
A similar pattern like the one of Health Canada, although due to the different regulatory constants ($\small{\theta_s\approx0.8926}$ vs $\small{k=0.760}$ for Health Canada and the EMA) nine subjects less (and twelve less than for the EMA) are required. Due to unlimited scaling the CV can increase more.
Assumed intrasubject CV 0.125.
pa.NTID(CV = 0.125)
{height=626px}
With decreasing variability power decreases because the scaled limits become narrower. With increasing variability we gain power because we have to scale less until at \~21.4\% the additional criterion “must pass conventional BE limits of 80.00125.00\%” cuts in.
The power analysis is not a substitute for the ‘Sensitivity Analysis’ recommended by the ICH.^[International Conference on Harmonisation of Technical Requirements for Registration of Pharmaceuticals for Human Use. ICH Harmonised Tripartite Guideline. Statistical Principles for Clinical Trials. 5 February 1998. E9 Step 4.] In a real study a combination of all effects occurs simultaneously. It is up to you to decide on reasonable combinations and analyze their respective power.
functionauthor(s)

pa.ABE
, pa.scABE
Idea and original code by Helmut Schütz with modifications by Detlew Labes
pa.NTID
Detlew Labes acc. to code by Helmut Schütz for pa.ABE
and pa.scABE

r Sys.Date()
Helmut SchützAny scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.