Problems with low variability [General Sta­tis­tics]

posted by Helmut Homepage – Vienna, Austria, 2020-10-09 17:04 (1673 d 16:38 ago) – Posting: # 21986
Views: 3,638

Hi Siva Krishna,

❝ I would like to say Thank you sir for your valuable information. This may be helpful to my question.


Welcome. Would you mind answering my previous questions:

❝ ❝ I guess 100% was not contained in the 90% CI, right?

❝ ❝ For which power did you plan the study?


Sometimes statistically significant differences are common, namely if the CV is low (say, <10%) and you plan for 80% power. Then you may end up with a sample size far below the regulatory minimum of twelve. Add more subjects to compensate for potential dropouts and…
In my protocols I state that extremely high power is expected and the CI might well contain not 100%.


[image] script:

library(PowerTOST)
balance <- function(x, seqs) { # gives complete sequences
  x <- ceiling(x) + ceiling(x) %% seqs
  return(x)
}
CV       <- 0.10    # assumed (here 10%)
theta0   <- 0.925   # assumed T/R-ratio
target   <- 0.80    # target (desired) power (here at least 80%)
do.rate  <- 0.10    # anticipated dropout rate (here 10%)
design   <- "2x2x2" # can be any one given by known.designs()
seqs     <- as.integer(substr(design, 3, 3)) # sequences
n        <- sampleN.TOST(CV = CV, theta0 = theta0, targetpower = target,
                         design = design, details = FALSE,
                         print = FALSE)[["Sample size"]]
if (n < 12) n <- 12 # force to minimum acc. to GLs
dosed    <- balance(n / (1 - do.rate), seqs) # adjust for dropout-rate & balance
eligible <- dosed:n; dropouts <- rev(eligible - n)
res      <- data.frame(dosed = dosed, dropouts = dropouts, eligible = eligible,
                       power = NA, CL.lo = NA, CL.hi = NA,
                       p.left = NA, p.right = NA)
for (j in seq_along(eligible)) {
  res$power[j] <- suppressMessages(
                    signif(power.TOST(CV = CV, theta0 = theta0,
                                      design = design, n = eligible[j]), 4))
  res[j, 5:6]  <- round(100*CI.BE(pe = theta0, CV = CV,
                                  design = design, n = eligible[j]), 2)
  res[j, 7:8]  <- suppressMessages(
                    signif(pvalues.TOST(pe = theta0, CV = CV,
                                        design = design, n = eligible[j]), 4))
}
print(res, row.names = FALSE)

Gives (if the assumptions about the CV and T/R-ratio are realized in the study):

 dosed dropouts eligible  power CL.lo CL.hi   p.left   p.right
    14        0       14 0.9760 86.49 98.93 0.001154 1.913e-06
    14        1       13 0.9652 86.22 99.23 0.001752 4.846e-06
    14        2       12 0.9521 85.92 99.59 0.002569 1.166e-05


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
23,424 posts in 4,927 threads, 1,670 registered users;
66 visitors (0 registered, 66 guests [including 4 identified bots]).
Forum time: 09:42 CEST (Europe/Vienna)

We should not speak so that it is possible
for the audience to understand us,
but so that it is impossible
for them to misunderstand us.    Quintilian

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