Calculation of time above MIC [R for BE/BA]

posted by Aceto81 – Belgium, 2008-06-26 21:50 (4957 d 01:34 ago) – Posting: # 1976
Views: 30,428

Dear Helmut,

» Actually just start at the beginning of the profile and add all segments which are abobe the MIC up. If the values fall below the MIC and come up again (like in your case) do a linear interpolation. I would use rather R than WinNonlin for that purpose.

Probably I was doing something wrong, maybe sitting too long after the PC, but when I tried this approach, I wasn't even near....

But anyway, with your reply, I started over and finally it works!

Thanks for your help (again)

PS: for anyone who may find it interesting:

The R code for finding time below the threshold:
"dat" is a dataframe containing column "conc", and "time"
th = threshold
f <- function(dat, th = 0.517) {
  under <- 0
    for (i in which(dat$conc < th)) {
      if (!$conc[i-1])) {
        y <- dat$conc[c(i-1, i)]
        x <- dat$time[c(i-1, i)]
        slope <- coef(lm(y ~ x))[2]
        under <- under + x[2]-x[1]-(th-y[1])/slope
      if (!$conc[i+1])) {
        y <- dat$conc[c(i, i+1)]
        x <- dat$time[c(i, i+1)]
        slope <- coef(lm(y ~ x))[2]
        under <- under + (th-y[1])/slope

Edit: Reformatted using BBCodes. [Helmut]

Complete thread:

 Admin contact
21,835 posts in 4,569 threads, 1,554 registered users;
online 6 (0 registered, 6 guests [including 2 identified bots]).
Forum time: Friday 22:24 CET (Europe/Vienna)

No problem can stand the assault of sustained thinking.    Voltaire

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