AUC passes with 0.05 and Cmax with 0.0294 [Two-Stage / GS Designs]
❝ To be in compliance with method C of Potvin, we re-calculate CI for Cmax with α=0,0294. Let`s assume that BE criterion for Cmax is met after this step. […] Otherwise, finally we will have the following in a CSR: BE criterion was met for AUC using α=0,05 (90%CI) and BE criterion was met for Cmax using α=0,0294 (94,12% CI). Does it look OK?
Absolutely. The ideas behind the different alphas in Potvin C are:
- If interim power is ≥80%, essentially your assumptions about the CV were correct. Assess the study like a fixed sample design with α 0.05. You stop anyway (pass/fail).
- If interim power is <80%, your assumptions about the CV were not correct. Assess the study with the adjusted α 0.0294.
- If you pass, stop.
- If you fail, initiate the second stage.
❝ Should we also re-calculate CI for AUC with α=0,0294?
You could but please only “at home”. That’s against the method and what you should have laid down in the protocol. See the end of this post. My study would have passed with the adjusted α as well.
But what if not? See this bizarre case study. If the sponsor would have known before that the agency will not accept Method C, they would have planned for Method B, initiated a second stage with 6 (six!) subjects and happily walked away. Stupid.
What will you do with your ”homework”?
- If the adjusted α passes as well, you sleep well and are prepared to answer a deficiency letter.
- If you fail, I’ll promise you sleepless nights. What can you do? Nothing. Confess that you cherry-picked and think about coming up with an amendment switching from C to B? Too late. If you are religious, pray. If not, get drunk.
I recommended it for years. Well, no more.
IMHO, the small gain in power claimed by the authors is not worth the troubles:
library(PowerTOST)
library(Power2Stage)
CV <- seq(0.15, 0.4, 0.05)
res <- data.frame(CV = CV, fixed = NA, n1 = NA,
B = NA, C = NA, C.B = NA)
n1 <- n <- numeric()
for (j in seq_along(CV)) {
res$fixed[j] <- sampleN.TOST(CV = CV[j],
print = FALSE)[["Sample size"]]
res$n1[j] <- 0.8 * res$fixed[j] # my recommendation
res$n1[j] <- ceiling(res$n1[j] + ceiling(res$n1[j]) %% 2)
if (res$n1[j] < 12) res$n1[j] <- 12
res$B[j] <- power.tsd(method = "B", CV = CV[j],
n1 = res$n1[j])[["pBE"]]
res$C[j] <- power.tsd(method = "C", CV = CV[j],
n1 = res$n1[j])[["pBE"]]
res$C.B[j] <- 100 * (res$C[j] - res$B[j]) / res$B[j]
}
res[, 4:6] <- signif(res[, 4:6], 4)
names(res)[4:6] <- c("Method B", "Method C", "C/B (%)")
cat("Power in the final analysis\n"); print(res, row.names = FALSE)
Power in the final analysis
CV fixed n1 Method B Method C C/B (%)
0.15 12 12 0.8830 0.8994 1.8580
0.20 20 16 0.8521 0.8624 1.2120
0.25 28 24 0.8424 0.8508 0.9924
0.30 40 32 0.8343 0.8411 0.8163
0.35 52 42 0.8315 0.8350 0.4245
0.40 66 54 0.8287 0.8321 0.4067
Dif-tor heh smusma 🖖🏼 Довге життя Україна!
Helmut Schütz
The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Complete thread:
- Appropriate wording for a protocol Elena777 2019-09-09 19:34 [Two-Stage / GS Designs]
- Appropriate wording for a protocol ElMaestro 2019-09-09 21:39
- Appropriate wording for a protocol Helmut 2019-09-09 23:27
- Appropriate wording for a protocol Ohlbe 2019-09-10 10:27
- Which country? Helmut 2019-09-09 23:17
- Which country? Elena777 2019-09-11 20:24
- EEU-rules, TSD-methods (lengthy answer) Helmut 2019-09-12 01:31
- EEU-rules, TSD-methods (lengthy question) Astea 2019-09-14 14:56
- n2 based on PK metric with higher CV Helmut 2019-09-16 11:50
- Q&A ref Astea 2019-09-16 18:28
- The omniscient oracle has spoken Helmut 2019-09-17 12:27
- The omniscient oracle has spoken Astea 2019-09-17 20:34
- OT: Булга́ков Helmut 2019-09-18 12:12
- The omniscient oracle has spoken Astea 2019-09-17 20:34
- The omniscient oracle has spoken Helmut 2019-09-17 12:27
- n2 based on PK metric with higher CV Elena777 2019-09-16 19:48
- AUC passes with 0.05 and Cmax with 0.0294Helmut 2019-09-16 23:30
- AUC passes with 0.05 and Cmax with 0.0294 Mikalai 2019-09-18 16:56
- Hybrid B/C Helmut 2019-09-18 17:09
- AUC passes with 0.05 and Cmax with 0.0294 Elena777 2019-09-19 08:34
- Use data of all dosed subjects Helmut 2019-09-19 15:16
- Use data of all dosed subjects Elena777 2019-09-19 15:27
- ‘Method C’ ⇒ risky Helmut 2019-09-19 16:15
- Use data of all dosed subjects Elena777 2019-09-19 15:27
- Use data of all dosed subjects Helmut 2019-09-19 15:16
- AUC passes with 0.05 and Cmax with 0.0294 Mikalai 2019-09-18 16:56
- AUC passes with 0.05 and Cmax with 0.0294Helmut 2019-09-16 23:30
- Q&A ref Astea 2019-09-16 18:28
- EEU-rules, TSD-methods (lengthy question) Elena777 2019-09-16 19:35
- apple tree for two-stage Astea 2019-09-16 20:39
- overripe apples Helmut 2019-09-16 23:37
- override apples Astea 2019-09-17 06:14
- overripe apples Helmut 2019-09-16 23:37
- apple tree for two-stage Astea 2019-09-16 20:39
- n2 based on PK metric with higher CV Helmut 2019-09-16 11:50
- EEU-rules, TSD-methods (lengthy question) Astea 2019-09-14 14:56
- EEU-rules, TSD-methods (lengthy answer) Helmut 2019-09-12 01:31
- Which country? Elena777 2019-09-11 20:24
- Appropriate wording for a protocol ElMaestro 2019-09-09 21:39