The package contains functions to calculate power and estimate sample size for various study designs used in (not only bio-) equivalence studies. Power and sample size can be obtained based on different methods, amongst them prominently the TOST procedure (Two One-Sided t-Tests).
Version 1.5.4 built 2022-02-21 with R 4.1.2.
For an overview of supported designs, methods, and defaults together with some basic examples see
2x2x2
or 2x2
for short.
3x3
and 3x6x3
. Both have the same degrees of freedom (2n–4) in the conventional approach and therefore, require the same number of subjects.
sampleN.RatioF()
and for non-inferiority/-superiority in function sampleN.noninf()
, where it is 0.025). In the functions alpha
.
beta0
.
CV
.
CV
.
CV
). If heteroscedasticity is assumed, CV
has to given as a vector with two elements CV = c(x, y)
, where CV[1]
is CV_{wT} and CV[2]
is CV_{wR}.
CVb
is required in function sampleN.RatioF()
and in function sampleN.dp()
if design = "IBD"
(incomplete block design).
ABEL: Based on the switching coefficient of variation \(\small{CV_0=30\%}\). \(\small{k=\log_{e}1.25/\sqrt{\log_{e}(CV_{0}^{2}+1)}\approx 0.760}\).
\(\small{\left\{ {L,\,U} \right\}=\left[1+\log_{e}0.80/\log_{e}rd,\:1+\log_{e}1.25/\log_{e}rd \right]}\)
logscale = TRUE
where \(\theta_0=\mu_\textrm{T}/\mu_\textrm{R}\)).Non-inferiority: If margin < 1, higher responses are are assumed to be better. \[\small{H_0:\,\theta_0 \leq \log_{e}\textrm{margin}\:vs\:H_1:\,\theta_0>\log_{e}\textrm{margin}}\]
targetpower
.
rd
.
robust
logscale = TRUE
) or difference T – R (logscale = FALSE
). In the functions theta0
.
theta1
and theta2
.
theta0 = theta2
or theta0 = theta1
.power.scABEL()
, power.RSABE()
, power.NTIDFDA()
, power.HVNTID()
).
In all functions sample sizes are estimated based on equivalence margins [\(\small{\theta_1,\theta_2}\)] in full numeric precision. The widened margins for highly variable C_{max} are \(\small{\theta_1=0.75,}\) \(\small{\theta_2=1/\theta_1=1.\dot{3}}\) and not the rounded 75.00 – 133.33% according to the guidelines of the Russian Federation, the EEU, and the GCC. If for a NTID theta1 = 0.90
is specified, \(\small{\theta_2=1/\theta_1=1.\dot{1}}\) and not the rounded 111.11% as in the guidelines. Health Canada requires rounding to only one decimal place with bioequivalence margins for NTIDs of 90.0 – 112.0%.
Estimated sample sizes are generally not affected or – in extremely rare cases – conservative.
Example for a HVDP (\(\small{\theta_0}\) 0.90, design 2x2x4) and a NTID (\(\small{\theta_0}\) 0.975, design 2x2x2):
# CV agency method L U n theta1 theta2 n
# 0.574 EMA ABEL 69.84% 143.19% 30 0.698368 1.431910 30
# 0.574 HC ABEL 66.7 % 150.0 % 28 0.666667 1.500000 28
# 0.574 RU/EEU/GGC ABE 75.00% 133.33% 34 0.750000 1.333333 34
# 0.100 EMA ABE 90.00% 111.11% 22 0.900000 1.111111 22
# 0.100 HC ABE 90.0 % 112.0 % 22 0.900000 1.111111 22
You can install the released version of PowerTOST from CRAN with …
<- "PowerTOST"
package <- package %in% installed.packages()
inst if (length(package[!inst]) > 0) install.packages(package[!inst])
… and the development version from GitHub with
# install.packages("remotes")
remotes::install_github("Detlew/PowerTOST")
Skips installation from a github remote if the SHA-1 has not changed since last install. Use force = TRUE
to force installation.