TTT flawed in case of a lagtime… [🇷 for BE/BA]
Dear all,
TTT is the time of the inflection (tinpt) of the plasma profile (or the minimum of the first derivative = the root of the second derivative). If we have a lagtime, the inflection occurs not at 2×tmax but is shifted by tlag (if you don’t trust me, do some calculus yourself).*
Simple example (noise-free data, parameters of this post differing only in lagtimes – 0 and 2):
tmax in green, tinpt in red.
Although true elimination is identical we get different estimates because in the second case tinpt is not at 6 but already at 4 (=2×tmax–tlag). Cinpt1=Cinpt2=46.228. Therefore, I suggest to introduce a »TTT’« which corrects for lagtimes and gives similar estimates:
Theoretically AUC∞ should be identical for both profiles (not affected by lagtimes), i.e., 75/0.5+25/0.1–100/2=350. Let’s compare estimated AUCs (by the lin-up/log-down trapezoidal rule):
With the second algo bias is smaller and similar for both profiles.
This is not (only) academic nitpicking, but of practical interest. In the recent MR draft EMA considered the possibility of waiving the multiple dose study if the residual area in single dose (truncated at τ) is <10% of AUC∞. For the lagtime-profile we would get 7.48% (TTT) and 7.14% (TTT’).
Does anybody have a clever idea how I can find the lagtime in R without a loop? Essentially I would search backwards from tmax until I find the first NA.
TTT is the time of the inflection (tinpt) of the plasma profile (or the minimum of the first derivative = the root of the second derivative). If we have a lagtime, the inflection occurs not at 2×tmax but is shifted by tlag (if you don’t trust me, do some calculus yourself).*
Simple example (noise-free data, parameters of this post differing only in lagtimes – 0 and 2):
t C1 C2
0 BQL BQL
0.25 29.917 BQL
0.5 45.403 BQL
1 54.577 BQL
1.5 51.966 BQL
2 46.228 BQL ← tinpt1
2.5 40.284 45.403
3 35.007 54.577
4 26.875 46.228 ← tinpt2
6 17.454 26.875 ← picked by TTT-algo: not the inflection point!
9 10.997 14.679
12 7.716 9.702
16 5.073 6.233
24 2.268 2.771
48 0.206 2.251
tlag 0 2 ← simple definition: time point before the first C ≥LLOQ
tmax 1 3
TTT 2 6
λz-range 2–48 6–48
λz 0.115 0.107 ← different estimates
tmax in green, tinpt in red.
Although true elimination is identical we get different estimates because in the second case tinpt is not at 6 but already at 4 (=2×tmax–tlag). Cinpt1=Cinpt2=46.228. Therefore, I suggest to introduce a »TTT’« which corrects for lagtimes and gives similar estimates:
TTT’ 2 4
λz-range 2–48 4–48
λz 0.115 0.113 ← similar estimates
Theoretically AUC∞ should be identical for both profiles (not affected by lagtimes), i.e., 75/0.5+25/0.1–100/2=350. Let’s compare estimated AUCs (by the lin-up/log-down trapezoidal rule):
based on TTT AUC∞ 367.19 371.15
bias +4.91% +6.04%
extrap 5.35% 6.98%
based on TTT’ AUC∞ 367.19 369.88
bias +4.91% +5.37%
extrap 5.35% 6.66%
With the second algo bias is smaller and similar for both profiles.
This is not (only) academic nitpicking, but of practical interest. In the recent MR draft EMA considered the possibility of waiving the multiple dose study if the residual area in single dose (truncated at τ) is <10% of AUC∞. For the lagtime-profile we would get 7.48% (TTT) and 7.14% (TTT’).
Does anybody have a clever idea how I can find the lagtime in R without a loop? Essentially I would search backwards from tmax until I find the first NA.
- Before you go crazy in curve sketching: The equations can be solved only for a one-compartment model (w/wo lagtime) in closed form. In R
optimize()
andderiv()
is the way to go. If you want to take a sledgehammer to crack a nut: Get packagenumDeriv
.
—
Dif-tor heh smusma 🖖🏼 Довге життя Україна!![[image]](https://static.bebac.at/pics/Blue_and_yellow_ribbon_UA.png)
Helmut Schütz
![[image]](https://static.bebac.at/img/CC by.png)
The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Dif-tor heh smusma 🖖🏼 Довге життя Україна!
![[image]](https://static.bebac.at/pics/Blue_and_yellow_ribbon_UA.png)
Helmut Schütz
![[image]](https://static.bebac.at/img/CC by.png)
The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Complete thread:
- ‘Automatic’ selection of time points for λz Helmut 2013-07-22 19:14
- New code Helmut 2013-07-23 02:06
- TTT flawed in case of a lagtime…Helmut 2013-07-23 19:59
- TTT flawed in case of a lagtime… martin 2013-07-23 20:22
- TTT flawed in case of a lagtime… ElMaestro 2013-07-23 22:35
- minimalistic R Helmut 2013-07-24 01:04
- Wow, very efficicient ElMaestro 2013-07-24 10:49
- R’s semantic riddles Helmut 2013-07-24 14:10
- Wow, very efficicient ElMaestro 2013-07-24 10:49
- minimalistic R Helmut 2013-07-24 01:04
- TTT flawed in case of a lagtime…Helmut 2013-07-23 19:59
- New code Helmut 2013-07-23 02:06