From 6653ff2507f45eae909f491a9af3f1eb5358a600 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Thu, 1 Mar 2018 14:32:46 +0100 Subject: Static documentation rebuilt using current pkgdown::build_site() --- docs/articles/FOCUS_Z.html | 124 +++++++++++++++++++++++---------------------- 1 file changed, 64 insertions(+), 60 deletions(-) (limited to 'docs/articles/FOCUS_Z.html') diff --git a/docs/articles/FOCUS_Z.html b/docs/articles/FOCUS_Z.html index a5cfc616..52a1db77 100644 --- a/docs/articles/FOCUS_Z.html +++ b/docs/articles/FOCUS_Z.html @@ -8,8 +8,11 @@ Example evaluation of FOCUS dataset Z • mkin - - + + + + @@ -77,7 +80,7 @@

Example evaluation of FOCUS dataset Z

Johannes Ranke

-

2018-01-16

+

2018-03-01

@@ -90,64 +93,64 @@

The following code defines the example dataset from Appendix 7 to the FOCUS kinetics report (FOCUS Work Group on Degradation Kinetics 2014, 354).

library(mkin, quietly = TRUE)
 LOD = 0.5
-FOCUS_2006_Z = data.frame(
+FOCUS_2006_Z = data.frame(
   t = c(0, 0.04, 0.125, 0.29, 0.54, 1, 2, 3, 4, 7, 10, 14, 21,
         42, 61, 96, 124),
   Z0 = c(100, 81.7, 70.4, 51.1, 41.2, 6.6, 4.6, 3.9, 4.6, 4.3, 6.8,
          2.9, 3.5, 5.3, 4.4, 1.2, 0.7),
   Z1 = c(0, 18.3, 29.6, 46.3, 55.1, 65.7, 39.1, 36, 15.3, 5.6, 1.1,
-         1.6, 0.6, 0.5 * LOD, NA, NA, NA),
-  Z2 = c(0, NA, 0.5 * LOD, 2.6, 3.8, 15.3, 37.2, 31.7, 35.6, 14.5,
-         0.8, 2.1, 1.9, 0.5 * LOD, NA, NA, NA),
-  Z3 = c(0, NA, NA, NA, NA, 0.5 * LOD, 9.2, 13.1, 22.3, 28.4, 32.5,
+         1.6, 0.6, 0.5 * LOD, NA, NA, NA),
+  Z2 = c(0, NA, 0.5 * LOD, 2.6, 3.8, 15.3, 37.2, 31.7, 35.6, 14.5,
+         0.8, 2.1, 1.9, 0.5 * LOD, NA, NA, NA),
+  Z3 = c(0, NA, NA, NA, NA, 0.5 * LOD, 9.2, 13.1, 22.3, 28.4, 32.5,
          25.2, 17.2, 4.8, 4.5, 2.8, 4.4))
 
-FOCUS_2006_Z_mkin <- mkin_wide_to_long(FOCUS_2006_Z)
+FOCUS_2006_Z_mkin <- mkin_wide_to_long(FOCUS_2006_Z)

Parent and one metabolite

The next step is to set up the models used for the kinetic analysis. As the simultaneous fit of parent and the first metabolite is usually straightforward, Step 1 (SFO for parent only) is skipped here. We start with the model 2a, with formation and decline of metabolite Z1 and the pathway from parent directly to sink included (default in mkin).

-
Z.2a <- mkinmod(Z0 = mkinsub("SFO", "Z1"),
+
Z.2a <- mkinmod(Z0 = mkinsub("SFO", "Z1"),
                 Z1 = mkinsub("SFO"))
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.2a <- mkinfit(Z.2a, FOCUS_2006_Z_mkin, quiet = TRUE)
-plot_sep(m.Z.2a)
+
m.Z.2a <- mkinfit(Z.2a, FOCUS_2006_Z_mkin, quiet = TRUE)
+plot_sep(m.Z.2a)

-
summary(m.Z.2a, data = FALSE)$bpar
-
##             Estimate se_notrans    t value     Pr(>t)   Lower     Upper
-## Z0_0      9.7015e+01   3.553135 2.7304e+01 1.6792e-21 91.4014 102.62838
-## k_Z0_sink 6.2135e-10   0.226894 2.7385e-09 5.0000e-01  0.0000       Inf
-## k_Z0_Z1   2.2360e+00   0.165073 1.3546e+01 7.3939e-14  1.8374   2.72107
-## k_Z1_sink 4.8212e-01   0.065854 7.3212e+00 3.5520e-08  0.4006   0.58024
+
summary(m.Z.2a, data = FALSE)$bpar
+
##             Estimate se_notrans    t value     Pr(>t) Lower Upper
+## Z0_0      9.7015e+01   3.553140 2.7304e+01 1.6793e-21    NA    NA
+## k_Z0_sink 1.2790e-11   0.226895 5.6368e-11 5.0000e-01    NA    NA
+## k_Z0_Z1   2.2360e+00   0.165073 1.3546e+01 7.3938e-14    NA    NA
+## k_Z1_sink 4.8212e-01   0.065854 7.3212e+00 3.5520e-08    NA    NA

As obvious from the parameter summary (the component of the summary), the kinetic rate constant from parent compound Z to sink is very small and the t-test for this parameter suggests that it is not significantly different from zero. This suggests, in agreement with the analysis in the FOCUS kinetics report, to simplify the model by removing the pathway to sink.

A similar result can be obtained when formation fractions are used in the model formulation:

-
Z.2a.ff <- mkinmod(Z0 = mkinsub("SFO", "Z1"),
+
Z.2a.ff <- mkinmod(Z0 = mkinsub("SFO", "Z1"),
                    Z1 = mkinsub("SFO"),
                    use_of_ff = "max")
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.2a.ff <- mkinfit(Z.2a.ff, FOCUS_2006_Z_mkin, quiet = TRUE)
-plot_sep(m.Z.2a.ff)
+
m.Z.2a.ff <- mkinfit(Z.2a.ff, FOCUS_2006_Z_mkin, quiet = TRUE)
+plot_sep(m.Z.2a.ff)

-
summary(m.Z.2a.ff, data = FALSE)$bpar
+
summary(m.Z.2a.ff, data = FALSE)$bpar
##            Estimate se_notrans t value     Pr(>t) Lower Upper
-## Z0_0       97.01488   3.553146 27.3039 1.6793e-21    NA    NA
-## k_Z0        2.23601   0.216847 10.3114 3.6617e-11    NA    NA
+## Z0_0       97.01488   3.553145 27.3039 1.6793e-21    NA    NA
+## k_Z0        2.23601   0.216849 10.3114 3.6623e-11    NA    NA
 ## k_Z1        0.48212   0.065854  7.3211 3.5520e-08    NA    NA
-## f_Z0_to_Z1  1.00000   0.101473  9.8548 9.7071e-11    NA    NA
+## f_Z0_to_Z1 1.00000 0.101473 9.8548 9.7068e-11 NA NA

Here, the ilr transformed formation fraction fitted in the model takes a very large value, and the backtransformed formation fraction from parent Z to Z1 is practically unity. Here, the covariance matrix used for the calculation of confidence intervals is not returned as the model is overparameterised.

A simplified model is obtained by removing the pathway to the sink.

In the following, we use the parameterisation with formation fractions in order to be able to compare with the results in the FOCUS guidance, and as it makes it easier to use parameters obtained in a previous fit when adding a further metabolite.

Z.3 <- mkinmod(Z0 = mkinsub("SFO", "Z1", sink = FALSE),
                Z1 = mkinsub("SFO"), use_of_ff = "max")
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.3 <- mkinfit(Z.3, FOCUS_2006_Z_mkin, quiet = TRUE)
+
m.Z.3 <- mkinfit(Z.3, FOCUS_2006_Z_mkin, quiet = TRUE)
 plot_sep(m.Z.3)

-
summary(m.Z.3, data = FALSE)$bpar
+
summary(m.Z.3, data = FALSE)$bpar
##      Estimate se_notrans t value     Pr(>t)    Lower   Upper
-## Z0_0 97.01488   2.681771  36.176 2.3636e-25 91.52152 102.508
-## k_Z0  2.23601   0.146862  15.225 2.2470e-15  1.95453   2.558
+## Z0_0 97.01488   2.681772  36.176 2.3636e-25 91.52152 102.508
+## k_Z0  2.23601   0.146861  15.225 2.2464e-15  1.95453   2.558
 ## k_Z1  0.48212   0.042687  11.294 3.0686e-12  0.40216   0.578

As there is only one transformation product for Z0 and no pathway to sink, the formation fraction is internally fixed to unity.

@@ -159,7 +162,7 @@ FOCUS_2006_Z_mkin <- Z1 = mkinsub("SFO", "Z2", sink = FALSE), Z2 = mkinsub("SFO"), use_of_ff = "max")
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.5 <- mkinfit(Z.5, FOCUS_2006_Z_mkin, quiet = TRUE)
+
m.Z.5 <- mkinfit(Z.5, FOCUS_2006_Z_mkin, quiet = TRUE)
 plot_sep(m.Z.5)

Finally, metabolite Z3 is added to the model. We use the optimised differential equation parameter values from the previous fit in order to accelerate the optimization.

@@ -169,25 +172,25 @@ FOCUS_2006_Z_mkin <- Z3 = mkinsub("SFO"), use_of_ff = "max")
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.FOCUS <- mkinfit(Z.FOCUS, FOCUS_2006_Z_mkin,
-                     parms.ini = m.Z.5$bparms.ode,
+
m.Z.FOCUS <- mkinfit(Z.FOCUS, FOCUS_2006_Z_mkin,
+                     parms.ini = m.Z.5$bparms.ode,
                      quiet = TRUE)
## Warning in mkinfit(Z.FOCUS, FOCUS_2006_Z_mkin, parms.ini = m.Z.5$bparms.ode, : Optimisation by method Port did not converge.
 ## Convergence code is 1
plot_sep(m.Z.FOCUS)

-
summary(m.Z.FOCUS, data = FALSE)$bpar
-
##            Estimate se_notrans t value     Pr(>t)     Lower      Upper
-## Z0_0       96.84024   2.058814 47.0369 5.5723e-44 92.706852 100.973637
-## k_Z0        2.21540   0.118128 18.7543 7.7369e-25  1.990504   2.465708
-## k_Z1        0.47836   0.029294 16.3298 3.3443e-22  0.423035   0.540918
-## k_Z2        0.45166   0.044186 10.2218 3.0364e-14  0.371065   0.549767
-## k_Z3        0.05869   0.014290  4.1072 7.2560e-05  0.035983   0.095725
-## f_Z2_to_Z3  0.47147   0.057027  8.2676 2.7790e-11  0.360295   0.585556
+
summary(m.Z.FOCUS, data = FALSE)$bpar
+
##             Estimate se_notrans t value     Pr(>t)     Lower      Upper
+## Z0_0       96.837112   2.058861 47.0343 5.5877e-44 92.703779 100.970445
+## k_Z0        2.215368   0.118098 18.7587 7.6563e-25  1.990525   2.465609
+## k_Z1        0.478302   0.029289 16.3302 3.3408e-22  0.422977   0.540864
+## k_Z2        0.451617   0.044214 10.2144 3.1133e-14  0.371034   0.549702
+## k_Z3        0.058693   0.014296  4.1056 7.2924e-05  0.035994   0.095705
+## f_Z2_to_Z3  0.471516   0.057057  8.2639 2.8156e-11  0.360381   0.585548
endpoints(m.Z.FOCUS)
## $ff
 ##   Z2_Z3 Z2_sink 
-## 0.47147 0.52853 
+## 0.47152 0.52848 
 ## 
 ## $SFORB
 ## logical(0)
@@ -195,9 +198,9 @@ FOCUS_2006_Z_mkin <- 
@@ -210,17 +213,17 @@ FOCUS_2006_Z_mkin <- Z2 = mkinsub("SFO", "Z3"),
                     Z3 = mkinsub("SFORB"))
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.mkin.1 <- mkinfit(Z.mkin.1, FOCUS_2006_Z_mkin, quiet = TRUE)
+
m.Z.mkin.1 <- mkinfit(Z.mkin.1, FOCUS_2006_Z_mkin, quiet = TRUE)
 plot_sep(m.Z.mkin.1)

-
summary(m.Z.mkin.1, data = FALSE)$cov.unscaled
+
summary(m.Z.mkin.1, data = FALSE)$cov.unscaled
## NULL

Therefore, a further stepwise model building is performed starting from the stage of parent and two metabolites, starting from the assumption that the model fit for the parent compound can be improved by using the SFORB model.

Z.mkin.3 <- mkinmod(Z0 = mkinsub("SFORB", "Z1", sink = FALSE),
                     Z1 = mkinsub("SFO", "Z2", sink = FALSE),
                     Z2 = mkinsub("SFO"))
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.mkin.3 <- mkinfit(Z.mkin.3, FOCUS_2006_Z_mkin, quiet = TRUE)
+
m.Z.mkin.3 <- mkinfit(Z.mkin.3, FOCUS_2006_Z_mkin, quiet = TRUE)
 plot_sep(m.Z.mkin.3)

This results in a much better representation of the behaviour of the parent compound Z0.

@@ -230,8 +233,8 @@ FOCUS_2006_Z_mkin <- Z2 = mkinsub("SFO", "Z3"), Z3 = mkinsub("SFO"))
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.mkin.4 <- mkinfit(Z.mkin.4, FOCUS_2006_Z_mkin,
-                      parms.ini = m.Z.mkin.3$bparms.ode,
+
m.Z.mkin.4 <- mkinfit(Z.mkin.4, FOCUS_2006_Z_mkin,
+                      parms.ini = m.Z.mkin.3$bparms.ode,
                       quiet = TRUE)
 plot_sep(m.Z.mkin.4)

@@ -241,36 +244,36 @@ FOCUS_2006_Z_mkin <- Z2 = mkinsub("SFO", "Z3"), Z3 = mkinsub("SFORB"))
## Successfully compiled differential equation model from auto-generated C code.
-
m.Z.mkin.5 <- mkinfit(Z.mkin.5, FOCUS_2006_Z_mkin,
-                      parms.ini = m.Z.mkin.4$bparms.ode[1:4],
+
m.Z.mkin.5 <- mkinfit(Z.mkin.5, FOCUS_2006_Z_mkin,
+                      parms.ini = m.Z.mkin.4$bparms.ode[1:4],
                       quiet = TRUE)
 plot_sep(m.Z.mkin.5)

The summary view of the backtransformed parameters shows that we get no confidence intervals due to overparameterisation. As the optimized is excessively small, it seems reasonable to fix it to zero.

-
m.Z.mkin.5a <- mkinfit(Z.mkin.5, FOCUS_2006_Z_mkin,
-                       parms.ini = c(m.Z.mkin.5$bparms.ode[1:7],
+
m.Z.mkin.5a <- mkinfit(Z.mkin.5, FOCUS_2006_Z_mkin,
+                       parms.ini = c(m.Z.mkin.5$bparms.ode[1:7],
                                      k_Z3_bound_free = 0),
                        fixed_parms = "k_Z3_bound_free",
                        quiet = TRUE)
-plot_sep(m.Z.mkin.5a)
+plot_sep(m.Z.mkin.5a)

As expected, the residual plots for Z0 and Z3 are more random than in the case of the all SFO model for which they were shown above. In conclusion, the model is proposed as the best-fit model for the dataset from Appendix 7 of the FOCUS report.

A graphical representation of the confidence intervals can finally be obtained.

-
mkinparplot(m.Z.mkin.5a)
+
mkinparplot(m.Z.mkin.5a)

The endpoints obtained with this model are

-
endpoints(m.Z.mkin.5a)
+
endpoints(m.Z.mkin.5a)
## $ff
 ##   Z0_free_Z1        Z1_Z2      Z2_sink   Z2_Z3_free Z3_free_sink 
 ##      1.00000      1.00000      0.46344      0.53656      1.00000 
 ## 
 ## $SFORB
 ##     Z0_b1     Z0_b2     Z3_b1     Z3_b2 
-## 2.4471373 0.0075126 0.0800076 0.0000000 
+## 2.4471382 0.0075127 0.0800075 0.0000000 
 ## 
 ## $distimes
 ##      DT50   DT90 DT50_Z0_b1 DT50_Z0_b2 DT50_Z3_b1 DT50_Z3_b2
-## Z0 0.3043 1.1848    0.28325     92.265         NA         NA
+## Z0 0.3043 1.1848    0.28325     92.264         NA         NA
 ## Z1 1.5148 5.0320         NA         NA         NA         NA
 ## Z2 1.6414 5.4526         NA         NA         NA         NA
 ## Z3     NA     NA         NA         NA     8.6635        Inf
@@ -291,7 +294,8 @@ FOCUS_2006_Z_mkin <-
-

Contents

+

+Contents

-- cgit v1.2.1