View source: R/power_scABEL_sdsims.R
power.scABEL.sds | R Documentation |
These function performs the power calculation of the BE decision via
scaled (widened) BE acceptance limits based on subject data simulations.
This function has an alias power.scABEL.sds().
power.scABEL.sdsims(alpha = 0.05, theta1, theta2, theta0, CV, n,
design = c("2x3x3", "2x2x4", "2x2x3"), design_dta=NULL,
regulator, nsims = 1e+05, details = FALSE, setseed = TRUE,
progress)
alpha |
Type I error probability, significance level. Conventionally mostly set to 0.05. |
theta1 |
Conventional lower ABE limit to be applied in the mixed procedure if
|
theta2 |
Conventional upper ABE limit to be applied in the mixed procedure if
|
theta0 |
‘True’ or assumed T/R ratio. |
CV |
Intra-subject coefficient(s) of variation as ratio (not percent).
|
n |
Number of subjects under study. |
design |
Design of the study to be planned. |
design_dta |
Alternatively to using the arguments |
regulator |
Regulatory settings for the widening of the BE acceptance limits. |
nsims |
Number of simulations to be performed to obtain the empirical power.
Defaults to 100,000 = 1e+05. |
details |
If set to |
setseed |
Simulations are dependent on the starting point of the (pseudo) random number
generator. To avoid differences in power for different runs a |
progress |
Should a progressbar be shown? Defaults to |
The methods rely on the analysis of log-transformed data, i.e., assume a
log-normal distribution on the original scale.
The widened BE acceptance limits will be calculated by the formula
[L, U] = exp(± r_const * sWR)
with r_const
the regulatory constant and sWR
the standard deviation of the within
subjects variability of the Reference. r_const = 0.76
(~log(1.25)/0.29356) is used
in case of regulator="EMA"
.
If the CVwR of the Reference is < CVswitch=0.3 the conventional ABE limits
apply (mixed procedure).
In case of regulator="EMA"
a cap is placed on the widened limits if
CVwr>0.5, i.e., the widened limits are held at value calculated for CVwR=0.5.
The simulations are done by simulating subject data (all effects fixed except the
residuals) and evaluating these data via ANOVA of all data to get the point estimate
of T vs. R along with its 90% CI and an ANOVA of the data under R(eference) only
to get an estimate of s2wR.
The data.frame with columns subject, sequence, period
and tmt
necessary for evalution of simulated subject data is constructed internally from
the arguments design
and n
or may be given user defined via the argument
design_dta
. The last option is usefull if missing data have to be considered
or if designs have to be evaluated which are not in the list of argument
design
.
This feature is experimental in the sense that the data.frame is not checked
for complying with the assumed structure.
Returns the value of the (empirical) power if argument details=FALSE
.
Returns a named vector if argument details=TRUE
.
p(BE) is the power, p(BE-wABEL) is the power of the widened ABEL criterion alone
and p(BE-pe) is the power of the criterion 'point estimat within acceptance
range' alone. p(BE-ABE) is the power of the conventional ABE test given for
comparative purposes.
The function is mainly intended for crosscheck of power.scABEL()
results.
But may be mandatory for cases where power.scABEL()
results are inaccurate
(low sample sizes and/or heteroscedasticity).
It is relatively slow. The run-time of this function doing 1 Mio sims is between
~ 7-8 sec for n=12 and ~ 3-4 min for n=120 on a machine with an Intel core i7 processor.
Thus be patient and go for a cup of coffee if you use this function with high
sample sizes!
D. Labes, B. Lang
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 source
power.scABEL, reg_const
# using all the defaults:
# design="2x3x3", EMA regulatory settings
# PE constraint 0.8-1.25, cap on widening if CV>0.5
# true ratio=0.90, 1E+5 simulations
power.scABEL.sdsims(CV = 0.4, n = 36)
# should give:
# [1] 0.74321
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.