Output of sampleN.scABEL() [Power / Sample Size]

posted by Helmut Homepage – Vienna, Austria, 2022-03-23 13:43 (758 d 17:06 ago) – Posting: # 22863
Views: 2,517

Hi Divyen,

❝ But why the 90% BE range is still 80.00-125.00% where you know that you can apply the HVD concept to widen the boundary?


Seemingly the output of the function sampleN.scABEL() is not clear enough. It gives:

ABE limits / PE constraint = 0.8 ... 1.25
EMA regulatory settings
- CVswitch            = 0.3
- cap on scABEL if CVw(R) > 0.5
- regulatory constant = 0.76
- pe constraint applied

What does it mean? The sample size is based on simulations (by default 100,000 studies; see this article). In a certain fraction of the simulated studies \(\small{CV_\textrm{wR}\le30\%}\) and hence, ABE has to applied, where the conventional limits are 80.00–125.00%. Only if \(\small{CV_\textrm{wR}>30\%}\), ABEL can be applied but additionally to assessing whether the 90% CI lies within the now expanded limits, the point estimate has to lie within 80.00–125.00%.
See this article for the decision scheme.

In coding the function sampleN.scABEL.ad() I tried to be more specific (see also my post below) and it gives for \(\small{CV_\textrm{wT}=CV_\textrm{wR}=0.3532}\):

Regulatory settings: EMA (ABEL)
Switching CVwR     : 0.3
Regulatory constant: 0.76

Expanded limits    : 0.7706 ... 1.2977
Upper scaling cap  : CVwR > 0.5
PE constraints     : 0.8000 ... 1.2500

If you use the function with a substantially lower \(\small{CV_\textrm{wR}}\) you would get:

Regulatory settings: EMA (ABE)
Switching CVwR     : 0.3
BE limits          : 0.8000 ... 1.2500
Upper scaling cap  : CVwR > 0.5
PE constraints     : 0.8000 ... 1.2500


Note that the sample size tables of the ‘The Two Lászlós’* don’t reach below \(\small{CV_\textrm{wR}=30\%}\). They state:

»In view of the consequences of the mixed approach, it could be judicious to consider larger numbers of sub­jects at variations fairly close to 30%.«


You could assess at which \(\small{CV_\textrm{wR}}\) (on the average) we will switch in the simulations.

library(PowerTOST)
fun <- function(x) {
  n.1 <- sampleN.TOST(CV = x, theta0 = theta0,
                      targetpower = target,
                      design = design, details = FALSE,
                      print = FALSE)[["Sample size"]]
  n.2 <- sampleN.scABEL(CV = x, theta0 = theta0,
                        targetpower = target,
                        design = design, details = FALSE,
                        print = FALSE)[["Sample size"]]
  return(n.1 - n.2)
}
theta0 <- 0.90
target <- 0.80
design <- "2x3x3"
cat(design, "design:",
    sprintf("Equal sample sizes for ABE and ABEL at CV = %.2f%%.",
            100 * uniroot(fun, interval = c(0.3, 0.4), extendInt = "yes")$root), "\n")

2x3x3 design: Equal sample sizes for ABE and ABEL at CV = 27.90%.




Dif-tor heh smusma 🖖🏼 Довге життя Україна! [image]
Helmut Schütz
[image]

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes

Complete thread:

UA Flag
Activity
 Admin contact
22,988 posts in 4,825 threads, 1,654 registered users;
91 visitors (0 registered, 91 guests [including 4 identified bots]).
Forum time: 07:50 CEST (Europe/Vienna)

The whole purpose of education is
to turn mirrors into windows.    Sydney J. Harris

The Bioequivalence and Bioavailability Forum is hosted by
BEBAC Ing. Helmut Schütz
HTML5