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,^{1} 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 TR|RT (a.k.a.
AB|BA) design can be abbreviated as `"2x2"`

. Some call the
`"parallel"`

design a ‘one-sequence’ 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 ^{2} 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.

Example 3 of vignette ABE. Assumed
*CV* 0.20, \(\small{\theta_0}\)
0.92.

```
pa.ABE(CV = 0.20, theta0 = 0.92)
# Sample size plan ABE
# Design alpha CV theta0 theta1 theta2 Sample size Achieved power
# 2x2 0.05 0.2 0.92 0.8 1.25 28 0.822742
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.2377, theta0= 0.9001
# n = 21 (power= 0.7104)
```

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.

Assumed intra-subject *CV* 0.55.

```
pa.scABE(CV = 0.55)
# Sample size plan scABE (EMA/ABEL)
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x3x3 0.05 0.55 0.55 0.9 0.8 1.25 42 0.80848
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.6668, theta0= 0.8689
# n = 33 (power= 0.7085)
```

The idea behind reference-scaling 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 intra-subject *CV* 0.40, 4-period full replicate
design.

```
pa.scABE(CV = 0.40, design = "2x2x4")
# Sample size plan scABE (EMA/ABEL)
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x2x4 0.05 0.4 0.4 0.9 0.8 1.25 30 0.80656
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.6938, theta0= 0.8763
# n = 23 (power= 0.7123)
```

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")
# Sample size plan scABE (HC/ABEL)
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x3x3 0.05 0.55 0.55 0.9 0.8 1.25 39 0.81418
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.7599, theta0= 0.8647
# n = 30 (power= 0.7125)
```

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")
# Sample size plan scABE (GCC/ABEL)
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x3x3 0.05 0.55 0.55 0.9 0.8 1.25 75 0.80214
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.6473, theta0= 0.8786
# n = 57 (power= 0.7018)
```

Since we are far above the switching *CV*_{wR} of 30%,
(fixed) widened BE margins of 75.00–133.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")
# Sample size plan scABE (FDA/RSABE)
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x3x3 0.05 0.55 0.55 0.9 0.8 1.25 30 0.80034
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV= 0.9713, theta0= 0.8652
# n = 23 (power= 0.7001)
```

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 intra-subject *CV* 0.125.

```
pa.NTID(CV = 0.125)
# Sample size plan NTID
# Design alpha CVwT CVwR theta0 theta1 theta2 Sample size Achieved power
# 2x2x4 0.05 0.125 0.125 0.975 0.8 1.25 16 0.82278
# Target power
# 0.8
#
# Power analysis
# CV, theta0 and number of subjects leading to min. acceptable power of ~0.7:
# CV = (0.0716, 0.3059), theta0= 0.9569
# n = 13 (power= 0.7064)
```

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.00–125.00%” cuts in.

The power analysis is not a substitute for
the ‘Sensitivity Analysis’ recommended by the ICH.^{3} 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.

Wickham H.

*Advanced R.*2019-08-08. The S3 object system.↩︎Tóthfalusi L, Endrényi L.

*Sample Sizes for Designing Bioequivalence Studies for Highly Variable Drugs.*J Pharm Pharmaceut Sci. 2011;15(1):73–84. Open access.↩︎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.↩︎