# sampleN.scABEL

##### Sample size estimation for BE decision via scaled (expanded) BE acceptance limits

This function performs the sample size estimation via power calculations of the BE decision via scaled (expanded) BE acceptance limits, based on simulations.

##### Usage

```
sampleN.scABEL(alpha = 0.05, targetpower = 0.8, theta0, theta1, theta2, CV,
design = c("2x3x3", "2x2x4", "2x2x3"), regulator,
nsims = 1e+05, nstart, imax = 100, print = TRUE, details = TRUE,
setseed = TRUE)
```

##### Arguments

- alpha
Type I error probability. Per convention mostly set to 0.05.

- targetpower
Power to achieve at least. Must be >0 and <1. Typical values are 0.8 or 0.9.

- theta0
‘True’ or assumed T/R ratio. Defaults to 0.90 according to the two Laszl<U+00F3>s if not given explicitly.

- theta1
Conventional lower ABE limit to be applied in the mixed procedure if

`CVsWR <= CVswitch`

. Also Lower limit for the point estimate constraint. Defaults to 0.8 if not given explicitly.- theta2
Conventional upper ABE limit to be applied in the mixed procedure if

`CVsWR <= 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 to be planned.

`"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`design="2x3x3"`

. Details are given the section about Designs.- regulator
Regulatory settings for the widening of the BE acceptance limits. May be given as character from the choices

`"EMA"`

,`"HC"`

,`"FDA"`

or as an object of class 'regSet' (see`reg_const`

). Defaults to`regulator="EMA"`

if missing. This argument may be given also in lower case if given as character. The former argument`regulator="ANVISA"`

is defunct. Use "EMA" since the ANVISA now recommends the use of EMA regulatory settings.- nsims
Number of simulations to be performed to obtain the (empirical) power. The default value 100,000 = 1e+5 is usually sufficient. Consider to rise this value if theta0<=0.85 or >=1.25. But see the warning section.

- nstart
Set this to a start for the sample size search if a previous run failed. After reworking the start n in version 1.1-05 rarely needed.

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

If

`TRUE`

(default) the function prints its results. If`FALSE`

only the result data.frame will be returned.- details
If set to

`TRUE`

(default), the steps during sample size search are shown.- setseed
Simulations are dependent on the starting point of the (pseudo) random number generator. To avoid differences in power for different runs a

`set.seed(123456)`

is issued if`setseed=TRUE`

, the default.

##### Details

The simulations are done via the distributional properties of the statistical
quantities necessary for deciding BE based on ABEL (‘Average Bioequivalence with Expanded Limits’). For more details see
a description in the `/doc`

sub-directory of the package.
Function `sampleN.scABEL()`

is based on power calculations via simulations
using the distributional characteristics of the ‘key’ statistics obtained from
the EMA recommended evaluation via ANOVA if `regulator="EMA"`

or if the
regulator component `est_method`

is set to `"ANOVA"`

if regulator is an object
of class 'regSet'.
Otherwise, the simulations are based on the distributional characteristis of the
‘key’ statistics obtained from evaluation via intra-subject contrasts (ISC),
as recommended by the FDA.
Function `sampleN.scABEL2()`

is solely based on power calculations via
simulation using the distributional characteristics of the ‘key’ statistics
obtained from evaluation via ISC. This function is deprecated.

##### Value

Returns a data.frame with the input settings and sample size results.
The `Sample size`

column contains the total sample size.
The `nlast`

column contains the last `n`

value. May be useful for restarting.

##### Note

We are doing the sample size estimation only for balanced designs since the
break down of the total subject number in case of unbalanced sequence groups
is not unique. Moreover the formulas used are only for balanced designs.
In case of `regulator="FDA"`

the sample size is only approximate since
the BE decision method is not exactly what is expected by the FDA. But the two Laszl<U+00F3>s state that the scABEL method should be ‘operationally’ equivalent to the
FDA method. Thus the sample size should be comparable.
Consider in case of `regulator="FDA"`

to use the function
`sampleN.RSABE()`

.
In case of `regulator="HC"`

the underlying power is only approximative
since the Health Canada recommends evaluation by a mixed model approach.
But this could only implemented via subject data simulations which are very
time consuming.
The minimum sample size is 6, even if the power is higher than the intended
targetpower.

##### Designs

Although some designs are more ‘popular’ than others, sample size estimations are valid for *all* of the following designs:

`"2x2x4"` |
TRTR | RTRT |

TRRT | RTTR | |

TTRR | RRTT | |

`"2x2x3"` |
TRT | RTR |

TRR | RTT |

##### Warning

The sample size estimation for very extreme theta0 (<0.83 or >1.21) may be very
time consuming and will eventually also fail since the start values chosen are
not really reasonable in that ranges. This is especially true in the range around
CV = 0.3 and regulatory constant according to FDA.
If you really need sample sizes in that range be prepared to restart the sample
size estimation via the argument nstart.
Since the dependence of power from n is very flat in the mentioned region you may
also consider to adapt the number of simulations not to tap in the simulation
error trap.
If results of `power.scABEL`

are expected to be inaccurate (partial
replicate design with unbalanced sequences and/or heteroscedasticity
where CVwT > CVwR), subject data via `sampleN.scABEL.sdsims`

should
be simulated instead. Very time consuming (easily 100times slower)! Subject data
simulations are only supported for `regulator="EMA"`

.

##### References

T<U+00F3>thfalusi L, Endr<U+00E9>nyi L. *Sample Sizes for Designing Bioequivalence Studies for Highly Variable Drugs.* J Pharm Pharmaceut Sci. 2011;15(1):73--84. open access

##### See Also

`power.scABEL`

, `sampleN.scABEL.sdsims`

, `sampleN.RSABE`

,
`reg_const`

##### Examples

```
# NOT RUN {
# using all the defaults:
# partial replicate design, targetpower=80%,
# true assumed ratio = 0.90, 1E+5 simulated studies
# ABE limits, PE constraint 0.8 - 1.25
# EMA regulatory settings
sampleN.scABEL(CV = 0.3)
# should result in a sample size n=54, power=0.8159
#
# now with former (inofficial) ANVISA settings, CVswitch=40%
# (since 2016 ANVISA uses the same settings as EMA)
reg <- reg_const("USER", r_const = 0.76, CVswitch = 0.4, CVcap = 0.5)
reg$name <- "Old ANVISA"
sampleN.scABEL(CV = 0.3, regulator = reg)
# should result in n=60, power=0.8101
# for the full replicate design, target power = 90%
# true assumed ratio = 0.9, FDA regulatory settings
# sims based on evalaution via ISC
sampleN.scABEL(CV = 0.4, targetpower = 0.9, theta0 = 0.9,
design = "2x2x4", regulator = "FDA")
# should result in a sample size n=32, power=0.9125
# }
```

*Documentation reproduced from package PowerTOST, version 1.4-9, License: GPL (>= 2)*