Ratio/product of two lognormals [NCA / SHAM]

posted by Helmut Homepage – Vienna, Austria, 2021-10-03 20:29 (356 d 03:35 ago) – Posting: # 22616
Views: 1,302

Dear Detlew,

» » » what do you think is a reasonable assumption about the distribution of the metric AUC*k?
» » Since both are lognormal, their ratio should be lognormal as well. I trust here Martin; will meet him in the evening and ask again.

Answer: The difference of two normal distributions is normal distributed. The ratio and product of two lognormal distributions are lognormal distributed.
Furthermore, the unit of AUC·k is mass/volume.

[image]

[image]



n   <- 2501
x   <- seq(0.01, 2.5, length.out = n)
a   <- dlnorm(x = x, meanlog = log(1),    sdlog = sqrt(log(0.15^2 + 1)))
b   <- dlnorm(x = x, meanlog = log(0.95), sdlog = sqrt(log(0.30^2 + 1)))
c   <- a / b
d   <- a * b
clr <- c("#FF808080", "#8080FF80", "#FF80FF80")
dev.new(width = 4.5, height = 4.5, record = TRUE)
op <- par(no.readonly = TRUE)
par(mar = c(4, 0, 0, 0), cex.axis = 0.9)
plot(x = x, y = a, type = "n", xlab = expression(mu[T]/mu[R]),
     ylab = "", ylim = range(a, b, c), axes = FALSE)
axis(1)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(a)), col = clr[1], border = NA)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(b)), col = clr[2], border = NA)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(c)), col = clr[3], border = NA)
legend("topright", lwd = 5, seg.len = 2, col = clr, cex = 0.8,
       legend = c(expression(italic(a)*" = dlnorm(log(1), CV 0.15)"),
                  expression(italic(b)*" = dlnorm(log(0.95), CV 0.30)"),
                  expression(italic(c==a/b))))
plot(x = x, y = a, type = "n", xlab = expression(mu[T]/mu[R]),
     ylab = "", ylim = range(a, b, d), axes = FALSE)
axis(1)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(a)), col = clr[1], border = NA)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(b)), col = clr[2], border = NA)
polygon(x = c(x, rev(x)), y = c(rep(0, n), rev(d)), col = clr[3], border = NA)
legend("topright", lwd = 5, seg.len = 2, col = clr, cex = 0.8,
       legend = c(expression(italic(a)*" = dlnorm(log(1), CV 0.15)"),
                  expression(italic(b)*" = dlnorm(log(0.95), CV 0.30)"),
                  expression(italic(d==a %.% b))))
par(op)


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,385 posts in 4,684 threads, 1,594 registered users;
online 5 (0 registered, 5 guests [including 4 identified bots]).
Forum time: Sunday 00:05 CEST (Europe/Vienna)

You really don’t know what you don’t know until you write about it.
Then, everyone knows what you don’t know.    Rod Machado

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