aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NAMESPACE3
-rw-r--r--NEWS.md4
-rw-r--r--R/nlme.mmkin.R9
-rw-r--r--R/plot.mixed.mmkin.R (renamed from R/plot_mixed.R)154
-rw-r--r--R/saemix.R7
-rw-r--r--_pkgdown.yml5
-rw-r--r--docs/dev/news/index.html2
-rw-r--r--docs/dev/pkgdown.yml2
-rw-r--r--docs/dev/reference/Rplot001.pngbin27839 -> 19782 bytes
-rw-r--r--docs/dev/reference/Rplot002.pngbin57363 -> 16877 bytes
-rw-r--r--docs/dev/reference/Rplot003.pngbin56909 -> 28593 bytes
-rw-r--r--docs/dev/reference/index.html12
-rw-r--r--docs/dev/reference/nlme.mmkin-1.pngbin119649 -> 119655 bytes
-rw-r--r--docs/dev/reference/nlme.mmkin-3.pngbin158930 -> 158883 bytes
-rw-r--r--docs/dev/reference/nlme.mmkin-4.pngbin163000 -> 162990 bytes
-rw-r--r--docs/dev/reference/nlme.mmkin.html61
-rw-r--r--docs/dev/reference/plot.mixed.mmkin-1.pngbin0 -> 86076 bytes
-rw-r--r--docs/dev/reference/plot.mixed.mmkin-2.pngbin0 -> 164488 bytes
-rw-r--r--docs/dev/reference/plot.mixed.mmkin-3.pngbin0 -> 164014 bytes
-rw-r--r--docs/dev/reference/plot.mixed.mmkin.html313
-rw-r--r--docs/dev/reference/saem.html39
-rw-r--r--docs/dev/sitemap.xml6
-rw-r--r--man/nlme.mmkin.Rd7
-rw-r--r--man/plot.mixed.mmkin.Rd (renamed from man/plot_mixed.Rd)34
-rw-r--r--man/saem.Rd5
25 files changed, 450 insertions, 213 deletions
diff --git a/NAMESPACE b/NAMESPACE
index e6cbe2a7..a7aa9eeb 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -16,11 +16,10 @@ S3method(nlme,mmkin)
S3method(nobs,mkinfit)
S3method(parms,mkinfit)
S3method(parms,mmkin)
+S3method(plot,mixed.mmkin)
S3method(plot,mkinfit)
S3method(plot,mmkin)
S3method(plot,nafta)
-S3method(plot,nlme.mmkin)
-S3method(plot,saem.mmkin)
S3method(print,mkinds)
S3method(print,mkinmod)
S3method(print,mmkin)
diff --git a/NEWS.md b/NEWS.md
index de421202..01361db4 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,6 +1,8 @@
# mkin 0.9.50.4 (unreleased)
-- 'saem' generic function to fit saemix models, with a method 'saem.mmkin' and a corresponding 'summary.saem.mmkin'
+- 'plot.mixed.mmkin' method used for 'nlme.mmkin' and 'saem.mmkin', both inheriting from 'mixed.mmkin' (currently virtual)
+
+- 'saem' generic function to fit saemix models, with a generator 'saem.mmkin', summary and plot methods
- 'transform_odeparms', 'backtransform_odeparms': Use logit transformation for solitary fractions like the g parameter of the DFOP model, or formation fractions for a pathway to only one target variable
diff --git a/R/nlme.mmkin.R b/R/nlme.mmkin.R
index 695c63e9..8d875fee 100644
--- a/R/nlme.mmkin.R
+++ b/R/nlme.mmkin.R
@@ -43,13 +43,14 @@ get_deg_func <- function() {
#' @param control passed to nlme
#' @param verbose passed to nlme
#' @importFrom stats na.fail as.formula
-#' @return Upon success, a fitted nlme.mmkin object, which is an nlme object
-#' with additional elements
+#' @return Upon success, a fitted 'nlme.mmkin' object, which is an nlme object
+#' with additional elements. It also inherits from 'mixed.mmkin'.
#' @note As the object inherits from [nlme::nlme], there is a wealth of
#' methods that will automatically work on 'nlme.mmkin' objects, such as
#' [nlme::intervals()], [nlme::anova.lme()] and [nlme::coef.lme()].
#' @export
-#' @seealso [nlme_function()]
+#' @seealso [nlme_function()], [plot.mixed.mmkin], [summary.nlme.mmkin],
+#' [parms.nlme.mmkin]
#' @examples
#' ds <- lapply(experimental_data_for_UBA_2019[6:10],
#' function(x) subset(x$data[c("name", "time", "value")], name == "parent"))
@@ -203,7 +204,7 @@ nlme.mmkin <- function(model, data = sys.frame(sys.parent()),
val$nlmeversion <- as.character(utils::packageVersion("nlme"))
val$mkinversion <- as.character(utils::packageVersion("mkin"))
val$Rversion <- paste(R.version$major, R.version$minor, sep=".")
- class(val) <- c("nlme.mmkin", "nlme", "lme")
+ class(val) <- c("nlme.mmkin", "mixed.mmkin", "nlme", "lme")
return(val)
}
diff --git a/R/plot_mixed.R b/R/plot.mixed.mmkin.R
index 68404de4..903c3213 100644
--- a/R/plot_mixed.R
+++ b/R/plot.mixed.mmkin.R
@@ -2,7 +2,6 @@ if(getRversion() >= '2.15.1') utils::globalVariables("ds")
#' Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object
#'
-#' @name plot_mixed
#' @param x An object of class [saem.mmkin] or [nlme.mmkin]
#' @param i A numeric index to select datasets for which to plot the individual predictions,
#' in case plots get too large
@@ -21,7 +20,7 @@ if(getRversion() >= '2.15.1') utils::globalVariables("ds")
#' @param pch_ds Symbols to be used for plotting the data.
#' @param lty_ds Line types to be used for the model predictions.
#' @importFrom stats coefficients
-#' @return The functions are called for their side effect.
+#' @return The function is called for its side effect.
#' @author Johannes Ranke
#' @examples
#' ds <- lapply(experimental_data_for_UBA_2019[6:10],
@@ -33,7 +32,6 @@ if(getRversion() >= '2.15.1') utils::globalVariables("ds")
#' f <- mmkin(list("DFOP-SFO" = dfop_sfo), ds, quiet = TRUE)
#' plot(f[, 3:4], standardized = TRUE)
#'
-#' library(nlme)
#' # For this fit we need to increase pnlsMaxiter, and we increase the
#' # tolerance in order to speed up the fit for this example evaluation
#' f_nlme <- nlme(f, control = list(pnlsMaxIter = 120, tolerance = 1e-3))
@@ -42,9 +40,9 @@ if(getRversion() >= '2.15.1') utils::globalVariables("ds")
#' f_saem <- saem(f)
#' plot(f_saem)
#' }
-#' @rdname plot_mixed
#' @export
-plot.saem.mmkin <- function(x, i = 1:ncol(x$mmkin),
+plot.mixed.mmkin <- function(x,
+ i = 1:ncol(x$mmkin),
obs_vars = names(x$mkinmod$map),
standardized = TRUE,
xlab = "Time",
@@ -58,89 +56,30 @@ plot.saem.mmkin <- function(x, i = 1:ncol(x$mmkin),
pch_ds = 1:length(i),
col_ds = pch_ds + 1,
lty_ds = col_ds,
- frame = TRUE, ...)
+ frame = TRUE, ...
+)
{
+ # Prepare parameters and data
fit_1 <- x$mmkin[[1]]
ds_names <- colnames(x$mmkin)
- degparms_optim <- saemix::psi(x$so)
- rownames(degparms_optim) <- ds_names
- degparms_optim_names <- setdiff(names(fit_1$par), names(fit_1$errparms))
- colnames(degparms_optim) <- degparms_optim_names
-
- residual_type = ifelse(standardized, "iwres", "ires")
-
- residuals <- x$so@results@predictions[[residual_type]]
-
- degparms_pop <- x$so@results@fixed.effects
- names(degparms_pop) <- degparms_optim_names
-
- .plot_mixed(x, i,
- degparms_optim, degparms_pop, residuals,
- obs_vars, standardized, xlab, xlim,
- resplot, ymax, maxabs,
- ncol.legend, nrow.legend,
- rel.height.legend, rel.height.bottom,
- pch_ds, col_ds, lty_ds, frame, ...)
-}
-
-#' @rdname plot_mixed
-#' @export
-plot.nlme.mmkin <- function(x, i = 1:ncol(x$mmkin),
- obs_vars = names(x$mkinmod$map),
- standardized = TRUE,
- xlab = "Time",
- xlim = range(x$data$time),
- resplot = c("predicted", "time"),
- ymax = "auto", maxabs = "auto",
- ncol.legend = ifelse(length(i) <= 3, length(i) + 1, ifelse(length(i) <= 8, 3, 4)),
- nrow.legend = ceiling((length(i) + 1) / ncol.legend),
- rel.height.legend = 0.03 + 0.08 * nrow.legend,
- rel.height.bottom = 1.1,
- pch_ds = 1:length(i),
- col_ds = pch_ds + 1,
- lty_ds = col_ds,
- frame = TRUE, ...)
-{
- degparms_optim <- coefficients(x)
- degparms_pop <- nlme::fixef(x)
-
- residuals <- residuals(x,
- type = ifelse(standardized, "pearson", "response"))
-
- .plot_mixed(x, i,
- degparms_optim, degparms_pop, residuals,
- obs_vars, standardized, xlab, xlim,
- resplot, ymax, maxabs,
- ncol.legend, nrow.legend,
- rel.height.legend, rel.height.bottom,
- pch_ds, col_ds, lty_ds, frame, ...)
-}
-
-.plot_mixed <- function(x, i = 1:ncol(x$mmkin),
- degparms_optim,
- degparms_pop,
- residuals,
- obs_vars = names(x$mkinmod$map),
- standardized = TRUE,
- xlab = "Time",
- xlim = range(x$data$time),
- resplot = c("predicted", "time"),
- ymax = "auto", maxabs = "auto",
- ncol.legend = ifelse(length(i) <= 3, length(i) + 1, ifelse(length(i) <= 8, 3, 4)),
- nrow.legend = ceiling((length(i) + 1) / ncol.legend),
- rel.height.legend = 0.03 + 0.08 * nrow.legend,
- rel.height.bottom = 1.1,
- pch_ds = 1:length(i),
- col_ds = pch_ds + 1,
- lty_ds = col_ds,
- frame = TRUE, ...)
-{
-
- oldpar <- par(no.readonly = TRUE)
+ if (inherits(x, "nlme.mmkin")) {
+ degparms_optim <- coefficients(x)
+ degparms_pop <- nlme::fixef(x)
+ residuals <- residuals(x,
+ type = ifelse(standardized, "pearson", "response"))
+ }
- fit_1 <- x$mmkin[[1]]
- ds_names <- colnames(x$mmkin)
+ if (inherits(x, "saem.mmkin")) {
+ degparms_optim <- saemix::psi(x$so)
+ rownames(degparms_optim) <- ds_names
+ degparms_optim_names <- setdiff(names(fit_1$par), names(fit_1$errparms))
+ colnames(degparms_optim) <- degparms_optim_names
+ residual_type = ifelse(standardized, "iwres", "ires")
+ residuals <- x$so@results@predictions[[residual_type]]
+ degparms_pop <- x$so@results@fixed.effects
+ names(degparms_pop) <- degparms_optim_names
+ }
degparms_fixed <- fit_1$fixed$value
names(degparms_fixed) <- rownames(fit_1$fixed)
@@ -161,29 +100,6 @@ plot.nlme.mmkin <- function(x, i = 1:ncol(x$mmkin),
observed <- cbind(x$data,
residual = residuals)
- n_plot_rows = length(obs_vars)
- n_plots = n_plot_rows * 2
-
- # Set relative plot heights, so the first plot row is the norm
- rel.heights <- if (n_plot_rows > 1) {
- c(rel.height.legend, c(rep(1, n_plot_rows - 1), rel.height.bottom))
- } else {
- c(rel.height.legend, 1)
- }
-
- layout_matrix = matrix(c(1, 1, 2:(n_plots + 1)),
- n_plot_rows + 1, 2, byrow = TRUE)
- layout(layout_matrix, heights = rel.heights)
-
- par(mar = c(0.1, 2.1, 0.6, 2.1))
-
- plot(0, type = "n", axes = FALSE, ann = FALSE)
- legend("center", bty = "n", ncol = ncol.legend,
- legend = c("Population", ds_names[i]),
- lty = c(1, lty_ds), lwd = c(2, rep(1, length(i))),
- col = c(1, col_ds),
- pch = c(NA, pch_ds))
-
solution_type = fit_1$solution_type
outtimes <- sort(unique(c(x$data$time,
@@ -220,6 +136,32 @@ plot.nlme.mmkin <- function(x, i = 1:ncol(x$mmkin),
outtimes, solution_type = solution_type,
atol = fit_1$atol, rtol = fit_1$rtol))
+ # Start of graphical section
+ oldpar <- par(no.readonly = TRUE)
+
+ n_plot_rows = length(obs_vars)
+ n_plots = n_plot_rows * 2
+
+ # Set relative plot heights, so the first plot row is the norm
+ rel.heights <- if (n_plot_rows > 1) {
+ c(rel.height.legend, c(rep(1, n_plot_rows - 1), rel.height.bottom))
+ } else {
+ c(rel.height.legend, 1)
+ }
+
+ layout_matrix = matrix(c(1, 1, 2:(n_plots + 1)),
+ n_plot_rows + 1, 2, byrow = TRUE)
+ layout(layout_matrix, heights = rel.heights)
+
+ par(mar = c(0.1, 2.1, 0.6, 2.1))
+
+ plot(0, type = "n", axes = FALSE, ann = FALSE)
+ legend("center", bty = "n", ncol = ncol.legend,
+ legend = c("Population", ds_names[i]),
+ lty = c(1, lty_ds), lwd = c(2, rep(1, length(i))),
+ col = c(1, col_ds),
+ pch = c(NA, pch_ds))
+
resplot <- match.arg(resplot)
# Loop plot rows
diff --git a/R/saemix.R b/R/saemix.R
index ee68d202..8955aa54 100644
--- a/R/saemix.R
+++ b/R/saemix.R
@@ -24,8 +24,9 @@
#' @param \dots Further parameters passed to [saemix::saemixData]
#' and [saemix::saemixModel].
#' @return An S3 object of class 'saem.mmkin', containing the fitted
-#' [saemix::SaemixObject] as a list component named 'so'.
-#' @seealso [summary.saem.mmkin]
+#' [saemix::SaemixObject] as a list component named 'so'. The
+#' object also inherits from 'mixed.mmkin'.
+#' @seealso [summary.saem.mmkin] [plot.mixed.mmkin]
#' @examples
#' \dontrun{
#' ds <- lapply(experimental_data_for_UBA_2019[6:10],
@@ -134,7 +135,7 @@ saem.mmkin <- function(object,
Rversion = paste(R.version$major, R.version$minor, sep=".")
)
- class(result) <- "saem.mmkin"
+ class(result) <- c("saem.mmkin", "mixed.mmkin")
return(result)
}
diff --git a/_pkgdown.yml b/_pkgdown.yml
index 61c69a9d..75296568 100644
--- a/_pkgdown.yml
+++ b/_pkgdown.yml
@@ -42,11 +42,10 @@ reference:
desc: Create and work with nonlinear mixed effects models
contents:
- nlme.mmkin
- - plot.nlme.mmkin
- - summary.nlme.mmkin
- saem.mmkin
+ - plot.mixed.mmkin
+ - summary.nlme.mmkin
- summary.saem.mmkin
- - plot.saem.mmkin
- nlme_function
- get_deg_func
- saemix_model
diff --git a/docs/dev/news/index.html b/docs/dev/news/index.html
index 4f811b9f..c068b8a4 100644
--- a/docs/dev/news/index.html
+++ b/docs/dev/news/index.html
@@ -146,7 +146,7 @@
<a href="#mkin-0-9-50-4-unreleased" class="anchor"></a>mkin 0.9.50.4 (unreleased)<small> Unreleased </small>
</h1>
<ul>
-<li><p>‘saem’ generic function to fit saemix models, with a method ‘saem.mmkin’ and a corresponding ‘summary.saem.mmkin’</p></li>
+<li><p>‘saem’ generic function to fit saemix models, with a generator ‘saem.mmkin’ and further methods ‘summary.saem.mmkin’, ‘plot.saem.mmkin’</p></li>
<li><p>‘transform_odeparms’, ‘backtransform_odeparms’: Use logit transformation for solitary fractions like the g parameter of the DFOP model, or formation fractions for a pathway to only one target variable</p></li>
<li><p>‘update’ method for ‘mmkin’ objects</p></li>
<li><p>‘plot’, ‘summary’ and ‘print’ methods for ‘nlme.mmkin’ objects</p></li>
diff --git a/docs/dev/pkgdown.yml b/docs/dev/pkgdown.yml
index 4b2b76f7..ef9bb681 100644
--- a/docs/dev/pkgdown.yml
+++ b/docs/dev/pkgdown.yml
@@ -10,7 +10,7 @@ articles:
web_only/NAFTA_examples: NAFTA_examples.html
web_only/benchmarks: benchmarks.html
web_only/compiled_models: compiled_models.html
-last_built: 2020-11-09T15:29Z
+last_built: 2020-11-09T16:21Z
urls:
reference: https://pkgdown.jrwb.de/mkin/reference
article: https://pkgdown.jrwb.de/mkin/articles
diff --git a/docs/dev/reference/Rplot001.png b/docs/dev/reference/Rplot001.png
index cfc5bc2b..fc26276a 100644
--- a/docs/dev/reference/Rplot001.png
+++ b/docs/dev/reference/Rplot001.png
Binary files differ
diff --git a/docs/dev/reference/Rplot002.png b/docs/dev/reference/Rplot002.png
index 8ada7133..48e8698c 100644
--- a/docs/dev/reference/Rplot002.png
+++ b/docs/dev/reference/Rplot002.png
Binary files differ
diff --git a/docs/dev/reference/Rplot003.png b/docs/dev/reference/Rplot003.png
index cd2014eb..b4581e35 100644
--- a/docs/dev/reference/Rplot003.png
+++ b/docs/dev/reference/Rplot003.png
Binary files differ
diff --git a/docs/dev/reference/index.html b/docs/dev/reference/index.html
index 5ed2044b..ada9fb24 100644
--- a/docs/dev/reference/index.html
+++ b/docs/dev/reference/index.html
@@ -325,21 +325,21 @@ of an mmkin object</p></td>
</tr><tr>
<td>
- <p><code><a href="plot_mixed.html">plot(<i>&lt;saem.mmkin&gt;</i>)</a></code> <code><a href="plot_mixed.html">plot(<i>&lt;nlme.mmkin&gt;</i>)</a></code> </p>
+ <p><code><a href="saem.html">saem()</a></code> <code><a href="saem.html">saemix_model()</a></code> <code><a href="saem.html">saemix_data()</a></code> </p>
</td>
- <td><p>Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object</p></td>
+ <td><p>Fit nonlinear mixed models with SAEM</p></td>
</tr><tr>
<td>
- <p><code><a href="summary.nlme.mmkin.html">summary(<i>&lt;nlme.mmkin&gt;</i>)</a></code> <code><a href="summary.nlme.mmkin.html">print(<i>&lt;summary.nlme.mmkin&gt;</i>)</a></code> </p>
+ <p><code><a href="plot.mixed.mmkin.html">plot(<i>&lt;mixed.mmkin&gt;</i>)</a></code> </p>
</td>
- <td><p>Summary method for class "nlme.mmkin"</p></td>
+ <td><p>Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object</p></td>
</tr><tr>
<td>
- <p><code><a href="saem.html">saem()</a></code> <code><a href="saem.html">saemix_model()</a></code> <code><a href="saem.html">saemix_data()</a></code> </p>
+ <p><code><a href="summary.nlme.mmkin.html">summary(<i>&lt;nlme.mmkin&gt;</i>)</a></code> <code><a href="summary.nlme.mmkin.html">print(<i>&lt;summary.nlme.mmkin&gt;</i>)</a></code> </p>
</td>
- <td><p>Fit nonlinear mixed models with SAEM</p></td>
+ <td><p>Summary method for class "nlme.mmkin"</p></td>
</tr><tr>
<td>
diff --git a/docs/dev/reference/nlme.mmkin-1.png b/docs/dev/reference/nlme.mmkin-1.png
index 04d8b234..25bebeca 100644
--- a/docs/dev/reference/nlme.mmkin-1.png
+++ b/docs/dev/reference/nlme.mmkin-1.png
Binary files differ
diff --git a/docs/dev/reference/nlme.mmkin-3.png b/docs/dev/reference/nlme.mmkin-3.png
index 281d6024..46846067 100644
--- a/docs/dev/reference/nlme.mmkin-3.png
+++ b/docs/dev/reference/nlme.mmkin-3.png
Binary files differ
diff --git a/docs/dev/reference/nlme.mmkin-4.png b/docs/dev/reference/nlme.mmkin-4.png
index d504e8f0..6724163f 100644
--- a/docs/dev/reference/nlme.mmkin-4.png
+++ b/docs/dev/reference/nlme.mmkin-4.png
Binary files differ
diff --git a/docs/dev/reference/nlme.mmkin.html b/docs/dev/reference/nlme.mmkin.html
index c3cc53ff..defef75d 100644
--- a/docs/dev/reference/nlme.mmkin.html
+++ b/docs/dev/reference/nlme.mmkin.html
@@ -152,7 +152,7 @@ have been obtained by fitting the same model to a list of datasets.</p>
</div>
<pre class="usage"><span class='co'># S3 method for mmkin</span>
-<span class='fu'>nlme</span><span class='op'>(</span>
+<span class='fu'><a href='https://rdrr.io/pkg/nlme/man/nlme.html'>nlme</a></span><span class='op'>(</span>
<span class='va'>model</span>,
data <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/sys.parent.html'>sys.frame</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/sys.parent.html'>sys.parent</a></span><span class='op'>(</span><span class='op'>)</span><span class='op'>)</span>,
<span class='va'>fixed</span>,
@@ -253,8 +253,8 @@ parameters taken from the mmkin object are used</p></td>
<h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>
- <p>Upon success, a fitted nlme.mmkin object, which is an nlme object
-with additional elements</p>
+ <p>Upon success, a fitted 'nlme.mmkin' object, which is an nlme object
+with additional elements. It also inherits from 'mixed.mmkin'.</p>
<h2 class="hasAnchor" id="note"><a class="anchor" href="#note"></a>Note</h2>
<p>As the object inherits from <a href='https://rdrr.io/pkg/nlme/man/nlme.html'>nlme::nlme</a>, there is a wealth of
@@ -262,7 +262,8 @@ methods that will automatically work on 'nlme.mmkin' objects, such as
<code><a href='https://rdrr.io/pkg/nlme/man/intervals.html'>nlme::intervals()</a></code>, <code><a href='https://rdrr.io/pkg/nlme/man/anova.lme.html'>nlme::anova.lme()</a></code> and <code><a href='https://rdrr.io/pkg/nlme/man/coef.lme.html'>nlme::coef.lme()</a></code>.</p>
<h2 class="hasAnchor" id="see-also"><a class="anchor" href="#see-also"></a>See also</h2>
- <div class='dont-index'><p><code><a href='nlme_function.html'>nlme_function()</a></code></p></div>
+ <div class='dont-index'><p><code><a href='nlme_function.html'>nlme_function()</a></code>, <a href='plot.mixed.mmkin.html'>plot.mixed.mmkin</a>, <a href='summary.nlme.mmkin.html'>summary.nlme.mmkin</a>,
+parms.nlme.mmkin</p></div>
<h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
<pre class="examples"><div class='input'><span class='va'>ds</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/r/base/lapply.html'>lapply</a></span><span class='op'>(</span><span class='va'>experimental_data_for_UBA_2019</span><span class='op'>[</span><span class='fl'>6</span><span class='op'>:</span><span class='fl'>10</span><span class='op'>]</span>,
@@ -288,21 +289,21 @@ methods that will automatically work on 'nlme.mmkin' objects, such as
#&gt; Log-likelihood: -238.5635
#&gt;
#&gt; Fixed effects:
-#&gt; list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_ilr ~ 1)
-#&gt; parent_0 log_k1 log_k2 g_ilr
-#&gt; 94.17015133 -1.80015306 -4.14738870 0.02290935
+#&gt; list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_qlogis ~ 1)
+#&gt; parent_0 log_k1 log_k2 g_qlogis
+#&gt; 94.17015185 -1.80015278 -4.14738834 0.03239833
#&gt;
#&gt; Random effects:
-#&gt; Formula: list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_ilr ~ 1)
+#&gt; Formula: list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_qlogis ~ 1)
#&gt; Level: ds
#&gt; Structure: Diagonal
-#&gt; parent_0 log_k1 log_k2 g_ilr Residual
-#&gt; StdDev: 2.488249 0.8447273 1.32965 0.3289311 2.321364
+#&gt; parent_0 log_k1 log_k2 g_qlogis Residual
+#&gt; StdDev: 2.488249 0.8447275 1.32965 0.4651789 2.321364
#&gt; </div><div class='input'><span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span><span class='va'>f_nlme_dfop</span><span class='op'>)</span>
</div><div class='img'><img src='nlme.mmkin-1.png' alt='' width='700' height='433' /></div><div class='input'><span class='fu'><a href='endpoints.html'>endpoints</a></span><span class='op'>(</span><span class='va'>f_nlme_dfop</span><span class='op'>)</span>
</div><div class='output co'>#&gt; $distimes
#&gt; DT50 DT90 DT50back DT50_k1 DT50_k2
-#&gt; parent 10.79857 100.7937 30.34193 4.193938 43.85443
+#&gt; parent 10.79857 100.7937 30.34192 4.193937 43.85442
#&gt; </div><div class='input'>
<span class='co'># \dontrun{</span>
<span class='va'>f_nlme_2</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/pkg/nlme/man/nlme.html'>nlme</a></span><span class='op'>(</span><span class='va'>f</span><span class='op'>[</span><span class='st'>"SFO"</span>, <span class='op'>]</span>, start <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span>parent_0 <span class='op'>=</span> <span class='fl'>100</span>, log_k_parent <span class='op'>=</span> <span class='fl'>0.1</span><span class='op'>)</span><span class='op'>)</span>
@@ -353,35 +354,35 @@ methods that will automatically work on 'nlme.mmkin' objects, such as
control <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span>pnlsMaxIter <span class='op'>=</span> <span class='fl'>120</span>, tolerance <span class='op'>=</span> <span class='fl'>5e-4</span><span class='op'>)</span>, verbose <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
</div><div class='output co'>#&gt;
#&gt; **Iteration 1
-#&gt; LME step: Loglik: -404.9582, nlminb iterations: 1
+#&gt; LME step: Loglik: -404.9583, nlminb iterations: 1
#&gt; reStruct parameters:
#&gt; ds1 ds2 ds3 ds4 ds5 ds6
-#&gt; -0.4114355 0.9798697 1.6990037 0.7293315 0.3354323 1.7113046
+#&gt; -0.4114356 0.9798646 1.3524300 0.7293315 0.3354323 1.3647313
#&gt; Beginning PNLS step: .. completed fit_nlme() step.
-#&gt; PNLS step: RSS = 630.3644
-#&gt; fixed effects: 93.82269 -5.455991 -0.6788957 -1.862196 -4.199671 0.05532828
+#&gt; PNLS step: RSS = 630.3633
+#&gt; fixed effects: 93.82269 -5.455993 -0.9601037 -1.862196 -4.199671 0.07824609
#&gt; iterations: 120
#&gt; Convergence crit. (must all become &lt;= tolerance = 0.0005):
#&gt; fixed reStruct
-#&gt; 0.7885368 0.5822683
+#&gt; 0.7897284 0.5822782
#&gt;
#&gt; **Iteration 2
#&gt; LME step: Loglik: -407.7755, nlminb iterations: 11
#&gt; reStruct parameters:
-#&gt; ds1 ds2 ds3 ds4 ds5 ds6
-#&gt; -0.371224133 0.003056179 1.789939402 0.724671158 0.301602977 1.754200729
+#&gt; ds1 ds2 ds3 ds4 ds5 ds6
+#&gt; -0.37122411 0.00305562 1.44336560 0.72467122 0.30160310 1.40762692
#&gt; Beginning PNLS step: .. completed fit_nlme() step.
-#&gt; PNLS step: RSS = 630.3633
-#&gt; fixed effects: 93.82269 -5.455992 -0.6788958 -1.862196 -4.199671 0.05532831
+#&gt; PNLS step: RSS = 630.3637
+#&gt; fixed effects: 93.82269 -5.455992 -0.9601036 -1.862196 -4.199671 0.0782462
#&gt; iterations: 120
#&gt; Convergence crit. (must all become &lt;= tolerance = 0.0005):
#&gt; fixed reStruct
-#&gt; 4.789774e-07 2.200661e-05 </div><div class='input'>
+#&gt; 1.375673e-06 9.758294e-06 </div><div class='input'>
<span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span><span class='va'>f_nlme_dfop_sfo</span><span class='op'>)</span>
</div><div class='img'><img src='nlme.mmkin-4.png' alt='' width='700' height='433' /></div><div class='input'>
<span class='fu'><a href='https://rdrr.io/r/stats/anova.html'>anova</a></span><span class='op'>(</span><span class='va'>f_nlme_dfop_sfo</span>, <span class='va'>f_nlme_sfo_sfo</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Model df AIC BIC logLik Test L.Ratio p-value
-#&gt; f_nlme_dfop_sfo 1 13 843.8547 884.6201 -408.9273
+#&gt; f_nlme_dfop_sfo 1 13 843.8547 884.6201 -408.9274
#&gt; f_nlme_sfo_sfo 2 9 1085.1821 1113.4043 -533.5910 1 vs 2 249.3274 &lt;.0001</div><div class='input'>
<span class='fu'><a href='endpoints.html'>endpoints</a></span><span class='op'>(</span><span class='va'>f_nlme_sfo_sfo</span><span class='op'>)</span>
</div><div class='output co'>#&gt; $ff
@@ -400,7 +401,7 @@ methods that will automatically work on 'nlme.mmkin' objects, such as
#&gt; $distimes
#&gt; DT50 DT90 DT50back DT50_k1 DT50_k2
#&gt; parent 11.07091 104.6320 31.49738 4.462384 46.20825
-#&gt; A1 162.30536 539.1667 NA NA NA
+#&gt; A1 162.30523 539.1663 NA NA NA
#&gt; </div><div class='input'>
<span class='kw'>if</span> <span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='fu'>findFunction</span><span class='op'>(</span><span class='st'>"varConstProp"</span><span class='op'>)</span><span class='op'>)</span> <span class='op'>&gt;</span> <span class='fl'>0</span><span class='op'>)</span> <span class='op'>{</span> <span class='co'># tc error model for nlme available</span>
<span class='co'># Attempts to fit metabolite kinetics with the tc error model are possible,</span>
@@ -425,23 +426,23 @@ methods that will automatically work on 'nlme.mmkin' objects, such as
#&gt; Log-likelihood: -238.4298
#&gt;
#&gt; Fixed effects:
-#&gt; list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_ilr ~ 1)
-#&gt; parent_0 log_k1 log_k2 g_ilr
-#&gt; 94.04774463 -1.82339924 -4.16715509 0.04020161
+#&gt; list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_qlogis ~ 1)
+#&gt; parent_0 log_k1 log_k2 g_qlogis
+#&gt; 94.04774566 -1.82339808 -4.16715311 0.05685186
#&gt;
#&gt; Random effects:
-#&gt; Formula: list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_ilr ~ 1)
+#&gt; Formula: list(parent_0 ~ 1, log_k1 ~ 1, log_k2 ~ 1, g_qlogis ~ 1)
#&gt; Level: ds
#&gt; Structure: Diagonal
-#&gt; parent_0 log_k1 log_k2 g_ilr Residual
-#&gt; StdDev: 2.473883 0.8499901 1.337187 0.3294411 1
+#&gt; parent_0 log_k1 log_k2 g_qlogis Residual
+#&gt; StdDev: 2.473881 0.8499884 1.337185 0.4659005 1
#&gt;
#&gt; Variance function:
#&gt; Structure: Constant plus proportion of variance covariate
#&gt; Formula: ~fitted(.)
#&gt; Parameter estimates:
#&gt; const prop
-#&gt; 2.23222625 0.01262414 </div><div class='input'>
+#&gt; 2.23224114 0.01262341 </div><div class='input'>
<span class='va'>f_2_obs</span> <span class='op'>&lt;-</span> <span class='fu'><a href='mmkin.html'>mmkin</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span><span class='st'>"SFO-SFO"</span> <span class='op'>=</span> <span class='va'>m_sfo_sfo</span>,
<span class='st'>"DFOP-SFO"</span> <span class='op'>=</span> <span class='va'>m_dfop_sfo</span><span class='op'>)</span>,
<span class='va'>ds_2</span>, quiet <span class='op'>=</span> <span class='cn'>TRUE</span>, error_model <span class='op'>=</span> <span class='st'>"obs"</span><span class='op'>)</span>
diff --git a/docs/dev/reference/plot.mixed.mmkin-1.png b/docs/dev/reference/plot.mixed.mmkin-1.png
new file mode 100644
index 00000000..5cb33214
--- /dev/null
+++ b/docs/dev/reference/plot.mixed.mmkin-1.png
Binary files differ
diff --git a/docs/dev/reference/plot.mixed.mmkin-2.png b/docs/dev/reference/plot.mixed.mmkin-2.png
new file mode 100644
index 00000000..c0d67204
--- /dev/null
+++ b/docs/dev/reference/plot.mixed.mmkin-2.png
Binary files differ
diff --git a/docs/dev/reference/plot.mixed.mmkin-3.png b/docs/dev/reference/plot.mixed.mmkin-3.png
new file mode 100644
index 00000000..67058e6c
--- /dev/null
+++ b/docs/dev/reference/plot.mixed.mmkin-3.png
Binary files differ
diff --git a/docs/dev/reference/plot.mixed.mmkin.html b/docs/dev/reference/plot.mixed.mmkin.html
new file mode 100644
index 00000000..4108aea3
--- /dev/null
+++ b/docs/dev/reference/plot.mixed.mmkin.html
@@ -0,0 +1,313 @@
+<!-- Generated by pkgdown: do not edit by hand -->
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+<title>Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object — plot.mixed.mmkin • mkin</title>
+
+
+<!-- jquery -->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
+<!-- Bootstrap -->
+
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha256-bZLfwXAP04zRMK2BjiO8iu9pf4FbLqX6zitd+tIvLhE=" crossorigin="anonymous" />
+
+<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script>
+
+<!-- bootstrap-toc -->
+<link rel="stylesheet" href="../bootstrap-toc.css">
+<script src="../bootstrap-toc.js"></script>
+
+<!-- Font Awesome icons -->
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous" />
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous" />
+
+<!-- clipboard.js -->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script>
+
+<!-- headroom.js -->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script>
+
+<!-- pkgdown -->
+<link href="../pkgdown.css" rel="stylesheet">
+<script src="../pkgdown.js"></script>
+
+
+
+
+<meta property="og:title" content="Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object — plot.mixed.mmkin" />
+<meta property="og:description" content="Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object" />
+
+
+<meta name="robots" content="noindex">
+
+<!-- mathjax -->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script>
+
+<!--[if lt IE 9]>
+<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
+<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+<![endif]-->
+
+
+
+ </head>
+
+ <body data-spy="scroll" data-target="#toc">
+ <div class="container template-reference-topic">
+ <header>
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <span class="navbar-brand">
+ <a class="navbar-link" href="../index.html">mkin</a>
+ <span class="version label label-info" data-toggle="tooltip" data-placement="bottom" title="In-development version">0.9.50.4</span>
+ </span>
+ </div>
+
+ <div id="navbar" class="navbar-collapse collapse">
+ <ul class="nav navbar-nav">
+ <li>
+ <a href="../reference/index.html">Functions and data</a>
+</li>
+<li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
+ Articles
+
+ <span class="caret"></span>
+ </a>
+ <ul class="dropdown-menu" role="menu">
+ <li>
+ <a href="../articles/mkin.html">Introduction to mkin</a>
+ </li>
+ <li>
+ <a href="../articles/FOCUS_D.html">Example evaluation of FOCUS Example Dataset D</a>
+ </li>
+ <li>
+ <a href="../articles/FOCUS_L.html">Example evaluation of FOCUS Laboratory Data L1 to L3</a>
+ </li>
+ <li>
+ <a href="../articles/web_only/FOCUS_Z.html">Example evaluation of FOCUS Example Dataset Z</a>
+ </li>
+ <li>
+ <a href="../articles/web_only/compiled_models.html">Performance benefit by using compiled model definitions in mkin</a>
+ </li>
+ <li>
+ <a href="../articles/twa.html">Calculation of time weighted average concentrations with mkin</a>
+ </li>
+ <li>
+ <a href="../articles/web_only/NAFTA_examples.html">Example evaluation of NAFTA SOP Attachment examples</a>
+ </li>
+ <li>
+ <a href="../articles/web_only/benchmarks.html">Some benchmark timings</a>
+ </li>
+ </ul>
+</li>
+<li>
+ <a href="../news/index.html">News</a>
+</li>
+ </ul>
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="https://github.com/jranke/mkin/">
+ <span class="fab fa fab fa-github fa-lg"></span>
+
+ </a>
+</li>
+ </ul>
+
+ </div><!--/.nav-collapse -->
+ </div><!--/.container -->
+</div><!--/.navbar -->
+
+
+
+ </header>
+
+<div class="row">
+ <div class="col-md-9 contents">
+ <div class="page-header">
+ <h1>Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object</h1>
+ <small class="dont-index">Source: <a href='https://github.com/jranke/mkin/blob/master/R/plot.mixed.mmkin.R'><code>R/plot.mixed.mmkin.R</code></a></small>
+ <div class="hidden name"><code>plot.mixed.mmkin.Rd</code></div>
+ </div>
+
+ <div class="ref-description">
+ <p>Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object</p>
+ </div>
+
+ <pre class="usage"><span class='co'># S3 method for mixed.mmkin</span>
+<span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span>
+ <span class='va'>x</span>,
+ i <span class='op'>=</span> <span class='fl'>1</span><span class='op'>:</span><span class='fu'><a href='https://rdrr.io/r/base/nrow.html'>ncol</a></span><span class='op'>(</span><span class='va'>x</span><span class='op'>$</span><span class='va'>mmkin</span><span class='op'>)</span>,
+ obs_vars <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/names.html'>names</a></span><span class='op'>(</span><span class='va'>x</span><span class='op'>$</span><span class='va'>mkinmod</span><span class='op'>$</span><span class='va'>map</span><span class='op'>)</span>,
+ standardized <span class='op'>=</span> <span class='cn'>TRUE</span>,
+ xlab <span class='op'>=</span> <span class='st'>"Time"</span>,
+ xlim <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/range.html'>range</a></span><span class='op'>(</span><span class='va'>x</span><span class='op'>$</span><span class='va'>data</span><span class='op'>$</span><span class='va'>time</span><span class='op'>)</span>,
+ resplot <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"predicted"</span>, <span class='st'>"time"</span><span class='op'>)</span>,
+ ymax <span class='op'>=</span> <span class='st'>"auto"</span>,
+ maxabs <span class='op'>=</span> <span class='st'>"auto"</span>,
+ ncol.legend <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/ifelse.html'>ifelse</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='va'>i</span><span class='op'>)</span> <span class='op'>&lt;=</span> <span class='fl'>3</span>, <span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='va'>i</span><span class='op'>)</span> <span class='op'>+</span> <span class='fl'>1</span>, <span class='fu'><a href='https://rdrr.io/r/base/ifelse.html'>ifelse</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='va'>i</span><span class='op'>)</span> <span class='op'>&lt;=</span> <span class='fl'>8</span>, <span class='fl'>3</span>, <span class='fl'>4</span><span class='op'>)</span><span class='op'>)</span>,
+ nrow.legend <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/Round.html'>ceiling</a></span><span class='op'>(</span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='va'>i</span><span class='op'>)</span> <span class='op'>+</span> <span class='fl'>1</span><span class='op'>)</span><span class='op'>/</span><span class='va'>ncol.legend</span><span class='op'>)</span>,
+ rel.height.legend <span class='op'>=</span> <span class='fl'>0.03</span> <span class='op'>+</span> <span class='fl'>0.08</span> <span class='op'>*</span> <span class='va'>nrow.legend</span>,
+ rel.height.bottom <span class='op'>=</span> <span class='fl'>1.1</span>,
+ pch_ds <span class='op'>=</span> <span class='fl'>1</span><span class='op'>:</span><span class='fu'><a href='https://rdrr.io/r/base/length.html'>length</a></span><span class='op'>(</span><span class='va'>i</span><span class='op'>)</span>,
+ col_ds <span class='op'>=</span> <span class='va'>pch_ds</span> <span class='op'>+</span> <span class='fl'>1</span>,
+ lty_ds <span class='op'>=</span> <span class='va'>col_ds</span>,
+ frame <span class='op'>=</span> <span class='cn'>TRUE</span>,
+ <span class='va'>...</span>
+<span class='op'>)</span></pre>
+
+ <h2 class="hasAnchor" id="arguments"><a class="anchor" href="#arguments"></a>Arguments</h2>
+ <table class="ref-arguments">
+ <colgroup><col class="name" /><col class="desc" /></colgroup>
+ <tr>
+ <th>x</th>
+ <td><p>An object of class <a href='saem.html'>saem.mmkin</a> or <a href='nlme.mmkin.html'>nlme.mmkin</a></p></td>
+ </tr>
+ <tr>
+ <th>i</th>
+ <td><p>A numeric index to select datasets for which to plot the individual predictions,
+in case plots get too large</p></td>
+ </tr>
+ <tr>
+ <th>obs_vars</th>
+ <td><p>A character vector of names of the observed variables for
+which the data and the model should be plotted. Defauls to all observed
+variables in the model.</p></td>
+ </tr>
+ <tr>
+ <th>standardized</th>
+ <td><p>Should the residuals be standardized? Only takes effect if
+<code>resplot = "time"</code>.</p></td>
+ </tr>
+ <tr>
+ <th>xlab</th>
+ <td><p>Label for the x axis.</p></td>
+ </tr>
+ <tr>
+ <th>xlim</th>
+ <td><p>Plot range in x direction.</p></td>
+ </tr>
+ <tr>
+ <th>resplot</th>
+ <td><p>Should the residuals plotted against time or against
+predicted values?</p></td>
+ </tr>
+ <tr>
+ <th>ymax</th>
+ <td><p>Vector of maximum y axis values</p></td>
+ </tr>
+ <tr>
+ <th>maxabs</th>
+ <td><p>Maximum absolute value of the residuals. This is used for the
+scaling of the y axis and defaults to "auto".</p></td>
+ </tr>
+ <tr>
+ <th>ncol.legend</th>
+ <td><p>Number of columns to use in the legend</p></td>
+ </tr>
+ <tr>
+ <th>nrow.legend</th>
+ <td><p>Number of rows to use in the legend</p></td>
+ </tr>
+ <tr>
+ <th>rel.height.legend</th>
+ <td><p>The relative height of the legend shown on top</p></td>
+ </tr>
+ <tr>
+ <th>rel.height.bottom</th>
+ <td><p>The relative height of the bottom plot row</p></td>
+ </tr>
+ <tr>
+ <th>pch_ds</th>
+ <td><p>Symbols to be used for plotting the data.</p></td>
+ </tr>
+ <tr>
+ <th>col_ds</th>
+ <td><p>Colors used for plotting the observed data and the
+corresponding model prediction lines for the different datasets.</p></td>
+ </tr>
+ <tr>
+ <th>lty_ds</th>
+ <td><p>Line types to be used for the model predictions.</p></td>
+ </tr>
+ <tr>
+ <th>frame</th>
+ <td><p>Should a frame be drawn around the plots?</p></td>
+ </tr>
+ <tr>
+ <th>...</th>
+ <td><p>Further arguments passed to <code><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></code>.</p></td>
+ </tr>
+ </table>
+
+ <h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>
+
+ <p>The function is called for its side effect.</p>
+ <h2 class="hasAnchor" id="author"><a class="anchor" href="#author"></a>Author</h2>
+
+ <p>Johannes Ranke</p>
+
+ <h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
+ <pre class="examples"><div class='input'><span class='va'>ds</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/r/base/lapply.html'>lapply</a></span><span class='op'>(</span><span class='va'>experimental_data_for_UBA_2019</span><span class='op'>[</span><span class='fl'>6</span><span class='op'>:</span><span class='fl'>10</span><span class='op'>]</span>,
+ <span class='kw'>function</span><span class='op'>(</span><span class='va'>x</span><span class='op'>)</span> <span class='va'>x</span><span class='op'>$</span><span class='va'>data</span><span class='op'>[</span><span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"name"</span>, <span class='st'>"time"</span>, <span class='st'>"value"</span><span class='op'>)</span><span class='op'>]</span><span class='op'>)</span>
+<span class='fu'><a href='https://rdrr.io/r/base/names.html'>names</a></span><span class='op'>(</span><span class='va'>ds</span><span class='op'>)</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/r/base/paste.html'>paste0</a></span><span class='op'>(</span><span class='st'>"ds "</span>, <span class='fl'>6</span><span class='op'>:</span><span class='fl'>10</span><span class='op'>)</span>
+<span class='va'>dfop_sfo</span> <span class='op'>&lt;-</span> <span class='fu'><a href='mkinmod.html'>mkinmod</a></span><span class='op'>(</span>parent <span class='op'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span><span class='op'>(</span><span class='st'>"DFOP"</span>, <span class='st'>"A1"</span><span class='op'>)</span>,
+ A1 <span class='op'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span><span class='op'>(</span><span class='st'>"SFO"</span><span class='op'>)</span>, quiet <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
+<span class='co'># \dontrun{</span>
+<span class='va'>f</span> <span class='op'>&lt;-</span> <span class='fu'><a href='mmkin.html'>mmkin</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span><span class='st'>"DFOP-SFO"</span> <span class='op'>=</span> <span class='va'>dfop_sfo</span><span class='op'>)</span>, <span class='va'>ds</span>, quiet <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
+<span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span><span class='va'>f</span><span class='op'>[</span>, <span class='fl'>3</span><span class='op'>:</span><span class='fl'>4</span><span class='op'>]</span>, standardized <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
+</div><div class='img'><img src='plot.mixed.mmkin-1.png' alt='' width='700' height='433' /></div><div class='input'>
+<span class='co'># For this fit we need to increase pnlsMaxiter, and we increase the</span>
+<span class='co'># tolerance in order to speed up the fit for this example evaluation</span>
+<span class='va'>f_nlme</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/pkg/nlme/man/nlme.html'>nlme</a></span><span class='op'>(</span><span class='va'>f</span>, control <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span>pnlsMaxIter <span class='op'>=</span> <span class='fl'>120</span>, tolerance <span class='op'>=</span> <span class='fl'>1e-3</span><span class='op'>)</span><span class='op'>)</span>
+<span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span><span class='va'>f_nlme</span><span class='op'>)</span>
+</div><div class='img'><img src='plot.mixed.mmkin-2.png' alt='' width='700' height='433' /></div><div class='input'>
+<span class='va'>f_saem</span> <span class='op'>&lt;-</span> <span class='fu'><a href='saem.html'>saem</a></span><span class='op'>(</span><span class='va'>f</span><span class='op'>)</span>
+</div><div class='output co'>#&gt; Running main SAEM algorithm
+#&gt; [1] "Mon Nov 9 17:18:17 2020"
+#&gt; ....
+#&gt; Minimisation finished
+#&gt; [1] "Mon Nov 9 17:18:26 2020"</div><div class='input'><span class='fu'><a href='https://rdrr.io/r/graphics/plot.default.html'>plot</a></span><span class='op'>(</span><span class='va'>f_saem</span><span class='op'>)</span>
+</div><div class='img'><img src='plot.mixed.mmkin-3.png' alt='' width='700' height='433' /></div><div class='input'><span class='co'># }</span>
+</div></pre>
+ </div>
+ <div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
+ <nav id="toc" data-toggle="toc" class="sticky-top">
+ <h2 data-toc-skip>Contents</h2>
+ </nav>
+ </div>
+</div>
+
+
+ <footer>
+ <div class="copyright">
+ <p>Developed by Johannes Ranke.</p>
+</div>
+
+<div class="pkgdown">
+ <p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
+</div>
+
+ </footer>
+ </div>
+
+
+
+
+ </body>
+</html>
+
+
diff --git a/docs/dev/reference/saem.html b/docs/dev/reference/saem.html
index 26f4c3e3..f1b4c421 100644
--- a/docs/dev/reference/saem.html
+++ b/docs/dev/reference/saem.html
@@ -206,7 +206,8 @@ by the saemix function?</p></td>
<h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>
<p>An S3 object of class 'saem.mmkin', containing the fitted
-<a href='https://rdrr.io/pkg/saemix/man/SaemixObject-class.html'>saemix::SaemixObject</a> as a list component named 'so'.</p>
+<a href='https://rdrr.io/pkg/saemix/man/SaemixObject-class.html'>saemix::SaemixObject</a> as a list component named 'so'. The
+object also inherits from 'mixed.mmkin'.</p>
<p>An <a href='https://rdrr.io/pkg/saemix/man/SaemixModel-class.html'>saemix::SaemixModel</a> object.</p>
<p>An <a href='https://rdrr.io/pkg/saemix/man/SaemixData-class.html'>saemix::SaemixData</a> object.</p>
<h2 class="hasAnchor" id="details"><a class="anchor" href="#details"></a>Details</h2>
@@ -218,7 +219,7 @@ psi0 of <code><a href='https://rdrr.io/pkg/saemix/man/saemixModel.html'>saemix::
using <a href='mmkin.html'>mmkin</a>.</p>
<h2 class="hasAnchor" id="see-also"><a class="anchor" href="#see-also"></a>See also</h2>
- <div class='dont-index'><p><a href='summary.saem.mmkin.html'>summary.saem.mmkin</a></p></div>
+ <div class='dont-index'><p><a href='summary.saem.mmkin.html'>summary.saem.mmkin</a> <a href='plot.mixed.mmkin.html'>plot.mixed.mmkin</a></p></div>
<h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
<pre class="examples"><div class='input'><span class='co'># \dontrun{</span>
@@ -229,27 +230,27 @@ using <a href='mmkin.html'>mmkin</a>.</p>
state.ini <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span>parent <span class='op'>=</span> <span class='fl'>100</span><span class='op'>)</span>, fixed_initials <span class='op'>=</span> <span class='st'>"parent"</span>, quiet <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
<span class='va'>f_saem_p0_fixed</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent_p0_fixed</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:11 2020"
+#&gt; [1] "Mon Nov 9 17:18:28 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:13 2020"</div><div class='input'>
+#&gt; [1] "Mon Nov 9 17:18:30 2020"</div><div class='input'>
<span class='va'>f_mmkin_parent</span> <span class='op'>&lt;-</span> <span class='fu'><a href='mmkin.html'>mmkin</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"SFO"</span>, <span class='st'>"FOMC"</span>, <span class='st'>"DFOP"</span><span class='op'>)</span>, <span class='va'>ds</span>, quiet <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
<span class='va'>f_saem_sfo</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent</span><span class='op'>[</span><span class='st'>"SFO"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:14 2020"
+#&gt; [1] "Mon Nov 9 17:18:31 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:16 2020"</div><div class='input'><span class='va'>f_saem_fomc</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent</span><span class='op'>[</span><span class='st'>"FOMC"</span>, <span class='op'>]</span><span class='op'>)</span>
+#&gt; [1] "Mon Nov 9 17:18:33 2020"</div><div class='input'><span class='va'>f_saem_fomc</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent</span><span class='op'>[</span><span class='st'>"FOMC"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:16 2020"
+#&gt; [1] "Mon Nov 9 17:18:33 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:18 2020"</div><div class='input'><span class='va'>f_saem_dfop</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent</span><span class='op'>[</span><span class='st'>"DFOP"</span>, <span class='op'>]</span><span class='op'>)</span>
+#&gt; [1] "Mon Nov 9 17:18:35 2020"</div><div class='input'><span class='va'>f_saem_dfop</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent</span><span class='op'>[</span><span class='st'>"DFOP"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:19 2020"
+#&gt; [1] "Mon Nov 9 17:18:36 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:22 2020"</div><div class='input'>
+#&gt; [1] "Mon Nov 9 17:18:39 2020"</div><div class='input'>
<span class='co'># The returned saem.mmkin object contains an SaemixObject, therefore we can use</span>
<span class='co'># functions from saemix</span>
<span class='kw'><a href='https://rdrr.io/r/base/library.html'>library</a></span><span class='op'>(</span><span class='va'>saemix</span><span class='op'>)</span>
@@ -295,10 +296,10 @@ using <a href='mmkin.html'>mmkin</a>.</p>
<span class='va'>f_mmkin_parent_tc</span> <span class='op'>&lt;-</span> <span class='fu'><a href='https://rdrr.io/r/stats/update.html'>update</a></span><span class='op'>(</span><span class='va'>f_mmkin_parent</span>, error_model <span class='op'>=</span> <span class='st'>"tc"</span><span class='op'>)</span>
<span class='va'>f_saem_fomc_tc</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin_parent_tc</span><span class='op'>[</span><span class='st'>"FOMC"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:24 2020"
+#&gt; [1] "Mon Nov 9 17:18:41 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:29 2020"</div><div class='input'><span class='fu'><a href='https://rdrr.io/pkg/saemix/man/compare.saemix.html'>compare.saemix</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span><span class='va'>f_saem_fomc</span><span class='op'>$</span><span class='va'>so</span>, <span class='va'>f_saem_fomc_tc</span><span class='op'>$</span><span class='va'>so</span><span class='op'>)</span><span class='op'>)</span>
+#&gt; [1] "Mon Nov 9 17:18:46 2020"</div><div class='input'><span class='fu'><a href='https://rdrr.io/pkg/saemix/man/compare.saemix.html'>compare.saemix</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/list.html'>list</a></span><span class='op'>(</span><span class='va'>f_saem_fomc</span><span class='op'>$</span><span class='va'>so</span>, <span class='va'>f_saem_fomc_tc</span><span class='op'>$</span><span class='va'>so</span><span class='op'>)</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Likelihoods computed by importance sampling </div><div class='output co'>#&gt; AIC BIC
#&gt; 1 467.7644 465.0305
#&gt; 2 469.4862 466.3617</div><div class='input'>
@@ -318,20 +319,20 @@ using <a href='mmkin.html'>mmkin</a>.</p>
<span class='co'># solutions written for mkin this took around four minutes</span>
<span class='va'>f_saem_sfo_sfo</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin</span><span class='op'>[</span><span class='st'>"SFO-SFO"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:31 2020"
+#&gt; [1] "Mon Nov 9 17:18:48 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:36 2020"</div><div class='input'><span class='va'>f_saem_dfop_sfo</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin</span><span class='op'>[</span><span class='st'>"DFOP-SFO"</span>, <span class='op'>]</span><span class='op'>)</span>
+#&gt; [1] "Mon Nov 9 17:18:53 2020"</div><div class='input'><span class='va'>f_saem_dfop_sfo</span> <span class='op'>&lt;-</span> <span class='fu'>saem</span><span class='op'>(</span><span class='va'>f_mmkin</span><span class='op'>[</span><span class='st'>"DFOP-SFO"</span>, <span class='op'>]</span><span class='op'>)</span>
</div><div class='output co'>#&gt; Running main SAEM algorithm
-#&gt; [1] "Mon Nov 9 09:03:37 2020"
+#&gt; [1] "Mon Nov 9 17:18:54 2020"
#&gt; ....
#&gt; Minimisation finished
-#&gt; [1] "Mon Nov 9 09:03:46 2020"</div><div class='input'><span class='fu'><a href='https://rdrr.io/pkg/saemix/man/summary-methods.html'>summary</a></span><span class='op'>(</span><span class='va'>f_saem_dfop_sfo</span>, data <span class='op'>=</span> <span class='cn'>FALSE</span><span class='op'>)</span>
+#&gt; [1] "Mon Nov 9 17:19:03 2020"</div><div class='input'><span class='fu'><a href='https://rdrr.io/pkg/saemix/man/summary-methods.html'>summary</a></span><span class='op'>(</span><span class='va'>f_saem_dfop_sfo</span>, data <span class='op'>=</span> <span class='cn'>FALSE</span><span class='op'>)</span>
</div><div class='output co'>#&gt; saemix version used for fitting: 3.1.9000
#&gt; mkin version used for pre-fitting: 0.9.50.4
#&gt; R version used for fitting: 4.0.3
-#&gt; Date of fit: Mon Nov 9 09:03:47 2020
-#&gt; Date of summary: Mon Nov 9 09:03:47 2020
+#&gt; Date of fit: Mon Nov 9 17:19:04 2020
+#&gt; Date of summary: Mon Nov 9 17:19:04 2020
#&gt;
#&gt; Equations:
#&gt; d_parent/dt = - ((k1 * g * exp(-k1 * time) + k2 * (1 - g) * exp(-k2 *
@@ -346,7 +347,7 @@ using <a href='mmkin.html'>mmkin</a>.</p>
#&gt;
#&gt; Model predictions using solution type analytical
#&gt;
-#&gt; Fitted in 9.758 s using 300, 100 iterations
+#&gt; Fitted in 9.941 s using 300, 100 iterations
#&gt;
#&gt; Variance model: Constant variance
#&gt;
diff --git a/docs/dev/sitemap.xml b/docs/dev/sitemap.xml
index 5cfca07a..02fca7f9 100644
--- a/docs/dev/sitemap.xml
+++ b/docs/dev/sitemap.xml
@@ -148,6 +148,9 @@
<loc>https://pkgdown.jrwb.de/mkin/reference/parms.html</loc>
</url>
<url>
+ <loc>https://pkgdown.jrwb.de/mkin/reference/plot.mixed.mmkin.html</loc>
+ </url>
+ <url>
<loc>https://pkgdown.jrwb.de/mkin/reference/plot.mkinfit.html</loc>
</url>
<url>
@@ -157,9 +160,6 @@
<loc>https://pkgdown.jrwb.de/mkin/reference/plot.nafta.html</loc>
</url>
<url>
- <loc>https://pkgdown.jrwb.de/mkin/reference/plot_mixed.html</loc>
- </url>
- <url>
<loc>https://pkgdown.jrwb.de/mkin/reference/print.mkinds.html</loc>
</url>
<url>
diff --git a/man/nlme.mmkin.Rd b/man/nlme.mmkin.Rd
index 85bd74f6..9526a427 100644
--- a/man/nlme.mmkin.Rd
+++ b/man/nlme.mmkin.Rd
@@ -66,8 +66,8 @@ parameters taken from the mmkin object are used}
\item{object}{An nlme.mmkin object to update}
}
\value{
-Upon success, a fitted nlme.mmkin object, which is an nlme object
-with additional elements
+Upon success, a fitted 'nlme.mmkin' object, which is an nlme object
+with additional elements. It also inherits from 'mixed.mmkin'.
}
\description{
This functions sets up a nonlinear mixed effects model for an mmkin row
@@ -150,5 +150,6 @@ endpoints(f_nlme_dfop)
}
}
\seealso{
-\code{\link[=nlme_function]{nlme_function()}}
+\code{\link[=nlme_function]{nlme_function()}}, \link{plot.mixed.mmkin}, \link{summary.nlme.mmkin},
+\link{parms.nlme.mmkin}
}
diff --git a/man/plot_mixed.Rd b/man/plot.mixed.mmkin.Rd
index d3cee7c9..66e79f09 100644
--- a/man/plot_mixed.Rd
+++ b/man/plot.mixed.mmkin.Rd
@@ -1,33 +1,10 @@
% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/plot_mixed.R
-\name{plot_mixed}
-\alias{plot_mixed}
-\alias{plot.saem.mmkin}
-\alias{plot.nlme.mmkin}
+% Please edit documentation in R/plot.mixed.mmkin.R
+\name{plot.mixed.mmkin}
+\alias{plot.mixed.mmkin}
\title{Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object}
\usage{
-\method{plot}{saem.mmkin}(
- x,
- i = 1:ncol(x$mmkin),
- obs_vars = names(x$mkinmod$map),
- standardized = TRUE,
- xlab = "Time",
- xlim = range(x$data$time),
- resplot = c("predicted", "time"),
- ymax = "auto",
- maxabs = "auto",
- ncol.legend = ifelse(length(i) <= 3, length(i) + 1, ifelse(length(i) <= 8, 3, 4)),
- nrow.legend = ceiling((length(i) + 1)/ncol.legend),
- rel.height.legend = 0.03 + 0.08 * nrow.legend,
- rel.height.bottom = 1.1,
- pch_ds = 1:length(i),
- col_ds = pch_ds + 1,
- lty_ds = col_ds,
- frame = TRUE,
- ...
-)
-
-\method{plot}{nlme.mmkin}(
+\method{plot}{mixed.mmkin}(
x,
i = 1:ncol(x$mmkin),
obs_vars = names(x$mkinmod$map),
@@ -93,7 +70,7 @@ corresponding model prediction lines for the different datasets.}
\item{...}{Further arguments passed to \code{\link{plot}}.}
}
\value{
-The functions are called for their side effect.
+The function is called for its side effect.
}
\description{
Plot predictions from a fitted nonlinear mixed model obtained via an mmkin row object
@@ -108,7 +85,6 @@ dfop_sfo <- mkinmod(parent = mkinsub("DFOP", "A1"),
f <- mmkin(list("DFOP-SFO" = dfop_sfo), ds, quiet = TRUE)
plot(f[, 3:4], standardized = TRUE)
-library(nlme)
# For this fit we need to increase pnlsMaxiter, and we increase the
# tolerance in order to speed up the fit for this example evaluation
f_nlme <- nlme(f, control = list(pnlsMaxIter = 120, tolerance = 1e-3))
diff --git a/man/saem.Rd b/man/saem.Rd
index 56b54fbf..17f777c4 100644
--- a/man/saem.Rd
+++ b/man/saem.Rd
@@ -44,7 +44,8 @@ by the saemix function?}
}
\value{
An S3 object of class 'saem.mmkin', containing the fitted
-\link[saemix:SaemixObject-class]{saemix::SaemixObject} as a list component named 'so'.
+\link[saemix:SaemixObject-class]{saemix::SaemixObject} as a list component named 'so'. The
+object also inherits from 'mixed.mmkin'.
An \link[saemix:SaemixModel-class]{saemix::SaemixModel} object.
@@ -114,5 +115,5 @@ summary(f_saem_dfop_sfo, data = FALSE)
}
}
\seealso{
-\link{summary.saem.mmkin}
+\link{summary.saem.mmkin} \link{plot.mixed.mmkin}
}

Contact - Imprint