FDA not concerned about the type I error? [Dissolution / BCS / IVIVC]

posted by Helmut Homepage – Vienna, Austria, 2019-06-22 20:11 (1741 d 11:11 ago) – Posting: # 20358
Views: 4,998

Hi Mittyri,

  1. Model-based approach for group sequential and adaptive designs in parallel and cross-over bioequivalence studies

❝ AFAIK this one is the most interesting. Authors are INSERM and FDA people. But it looks like their adaptive design cannot control TIE. How come?


The devil is in the details. :blahblah: and then:
→ type I error α1 (stage 1)=α2 (stage 2)=0.0304 to ensure global α 0.05 [7].

Though [7] lamented that Potvin used 0.0294 (which is Pocock’s α for a one-sided test and the right one for equivalence is 0.0304), they erred.Believing that 0.0304 ‘ensures’ no inflation of the TIE for all TSDs is, well, a deception. Didn’t they read other papers dealing with TSDs? Sim’s at the location of the maximum inflation (CV 0.10–0.80, n1 12–72):

library(Power2Stage)
alpha <- rep(0.0304, 2)
df    <- data.frame(alpha1=alpha[1], alpha2=alpha[2],
                    CV=rep(0.24, 4), n1=c(12, rep(16, 3)),
                    GMR=rep(c(0.95, 0.9), each=2),
                    power=rep(c(0.8, 0.9), 2), TIE=NA, CL.lo=NA, CL.hi=NA)
for (j in 1:nrow(df)) {
  df$TIE[j]  <- power.tsd(alpha=alpha, CV=df$CV[j], n1=df$n1[j],
                          GMR=df$GMR[j], theta0=1.25,
                          targetpower=df$power[j], nsims=1e6)$pBE
  df[j, 8:9] <- binom.test(df$TIE[j]*1e6, 1e6)[["conf.int"]]
}
adj   <- c(0.0302, 0.0286, 0.0273, 0.0269)
ad    <- data.frame(alpha1=adj, alpha2=adj,
                    CV=rep(0.24, 4), n1=c(12, rep(16, 3)),
                    GMR=rep(c(0.95, 0.9), each=2),
                    power=rep(c(0.8, 0.9), 2), TIE=NA,
                    sig.lim=binom.test(0.05*1e6, 1e6,
                                       alternative="less")[["conf.int"]][2])
for (j in 1:nrow(ad)) {
  ad$TIE[j]  <- power.tsd(alpha=rep(adj[j], 2), CV=ad$CV[j], n1=ad$n1[j],
                          GMR=ad$GMR[j], theta0=1.25,
                          targetpower=ad$power[j], nsims=1e6)$pBE
}
cat("\n\u201Cnatural constant\u201D (one size fits all)\n");print(signif(df, 5), row.names=FALSE)
cat("\nadjusted alphas\n");print(signif(ad, 5), row.names=FALSE)

“natural constant” (one size fits all)
 alpha1 alpha2   CV n1  GMR power      TIE    CL.lo    CL.hi
 0.0304 0.0304 0.24 12 0.95   0.8
0.050270 0.049843 0.050700
 0.0304 0.0304 0.24 16 0.95   0.9 0.052329 0.051893 0.052767
 0.0304 0.0304 0.24 16 0.90   0.8 0.055298 0.054851 0.055748
 0.0304 0.0304 0.24 16 0.90   0.9 0.056219 0.055768 0.056672

adjusted alphas
 alpha1 alpha2   CV n1  GMR power      TIE sig.lim

 0.0302 0.0302 0.24 12 0.95   0.8 0.049987 0.05036
 0.0286 0.0286 0.24 16 0.95   0.9 0.049576 0.05036
 0.0273 0.0273 0.24 16 0.90   0.8 0.049789 0.05036
 0.0269 0.0269 0.24 16 0.90   0.9 0.049794 0.05036


Furthermore, they performed 500 (‼) simulations for the type I error, …

Quote:
→ In most cases TSS and TSA type 1 error estimates
are within the 0.05 prediction interval [0.0326-0.0729]

… which is just a joke.

round(as.numeric(binom.test(0.05*500, 500)[["conf.int"]]), 4)
[1] 0.0326 0.0729

Common are 1 mio sim’s and a one-sided test of the TIE:

signif(binom.test(0.05*1e6, 1e6, alternative="less")[["conf.int"]][2], 5)
[1] 0.05036

… as in the second data.frame above.

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,957 posts in 4,819 threads, 1,636 registered users;
97 visitors (0 registered, 97 guests [including 6 identified bots]).
Forum time: 06:22 CET (Europe/Vienna)

With four parameters I can fit an elephant,
and with five I can make him wiggle his trunk.    John von Neumann

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