Title: | Diagnostics for Pharmacometric Models |
---|---|
Description: | Diagnostics for non-linear mixed-effects (population) models from 'NONMEM' <https://www.iconplc.com/solutions/technologies/nonmem/>. 'xpose' facilitates data import, creation of numerical run summary and provide 'ggplot2'-based graphics for data exploration and model diagnostics. |
Authors: | Benjamin Guiastrennec [aut, cre, cph], Andrew C. Hooker [aut, cph], Sebastian Ueckert [aut, cph], Mike K. Smith [ctb], Mats O. Karlsson [aut, cph] |
Maintainer: | Benjamin Guiastrennec <[email protected]> |
License: | LGPL-3 |
Version: | 0.4.18.9000 |
Built: | 2024-11-11 06:01:45 UTC |
Source: | https://github.com/uupharmacometrics/xpose |
Plot of the change in compartment amounts over the independent variable
amt_vs_idv( xpdb, mapping = NULL, group = "ID", drop_fixed = TRUE, type = "l", title = "Compartments amount vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, facets, .problem, quiet, ... )
amt_vs_idv( xpdb, mapping = NULL, group = "ID", drop_fixed = TRUE, type = "l", title = "Compartments amount vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
drop_fixed |
Should columns that only have a single unique value (i.e. fixed) be dropped. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
amt_vs_idv(xpdb_ex_pk, nrow = 2, ncol = 1)
amt_vs_idv(xpdb_ex_pk, nrow = 2, ncol = 1)
Provide a list of options to the general plotting functions such as
xplot_scatter
in order to create appropriate data input for ggplot2.
data_opt( .problem = NULL, .subprob = NULL, .method = NULL, .source = "data", simtab = FALSE, filter = NULL, tidy = FALSE, index_col = NULL, value_col = NULL, post_processing = NULL )
data_opt( .problem = NULL, .subprob = NULL, .method = NULL, .source = "data", simtab = FALSE, filter = NULL, tidy = FALSE, index_col = NULL, value_col = NULL, post_processing = NULL )
.problem |
The problem to be used, by default returns the last one. |
.subprob |
The subproblem to be used, by default returns the last one. |
.method |
The estimation method to be used, by default returns the last one. |
.source |
Define the location of the data in the xpdb. Should be either 'data' to use the output tables or the name of an output file attached to the xpdb. |
simtab |
Only used when 'data' is defined as the source and '.problem' is default. Should the data be coming from an estimation or a simulation table. |
filter |
A function used to filter the data e.g. filter = function(x) x[x$TIME > 20, ] where x is the data. |
tidy |
Logical, whether the data should be transformed to tidy data. |
index_col |
Only used when 'tidy' is defined a |
value_col |
Only used when 'tidy' is defined a |
post_processing |
A function used to modify the data after it has been tidied up e.g. post_processing = function(x) dplyr::mutate(.data = x, variable = as.factor(.$variable)) where x is the tidy data. |
xplot_distrib
xplot_qq
xplot_scatter
data_opt(.problem = 1, .source = 'data', simtab = TRUE)
data_opt(.problem = 1, .source = 'data', simtab = TRUE)
Histograms and density plots of the ETA and parameter values.
prm_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Parameter distribution | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) eta_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Eta distribution | @run", subtitle = "Based on @nind individuals, Eta shrink: @etashk", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) res_distrib( xpdb, mapping = NULL, res = "CWRES", type = "hr", title = "@x distribution | @run", subtitle = "Based on @nobs observations", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) cov_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Continuous covariates distribution | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
prm_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Parameter distribution | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) eta_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Eta distribution | @run", subtitle = "Based on @nind individuals, Eta shrink: @etashk", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) res_distrib( xpdb, mapping = NULL, res = "CWRES", type = "hr", title = "@x distribution | @run", subtitle = "Based on @nobs observations", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... ) cov_distrib( xpdb, mapping = NULL, drop_fixed = TRUE, type = "hr", title = "Continuous covariates distribution | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
drop_fixed |
Should columns that only have a single unique value (i.e. fixed) be dropped. |
type |
String setting the type of plot to be used. Can be histogram 'h', density 'd', rug 'r' or any combination of the three. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Should the guide (e.g. reference distribution) be displayed. |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
res |
Only used for |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. histogram_fill = 'blue', rug_sides = 'b', etc.
histogram: options to geom_histogram
density: options to geom_density
rug: options to geom_rug
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
# Histogram of parameters prm_distrib(xpdb_ex_pk, type = 'h') # Density plot of etas with a rug eta_distrib(xpdb_ex_pk, type = 'dr') # Histogram of different residuals res_distrib(xpdb_ex_pk, type = 'hr', res = c('IWRES', 'CWRES')) # Density plot of continuous covariates cov_distrib(xpdb_ex_pk, type = 'd')
# Histogram of parameters prm_distrib(xpdb_ex_pk, type = 'h') # Density plot of etas with a rug eta_distrib(xpdb_ex_pk, type = 'dr') # Histogram of different residuals res_distrib(xpdb_ex_pk, type = 'hr', res = c('IWRES', 'CWRES')) # Density plot of continuous covariates cov_distrib(xpdb_ex_pk, type = 'd')
Plot of observations (DV) vs population predictions (PRED), individual predictions (IPRED) or conditional population predictions (CPRED).
dv_vs_ipred( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) dv_vs_pred( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... )
dv_vs_ipred( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) dv_vs_pred( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Enable guide display (e.g. unity line). |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
dv_vs_pred(xpdb_ex_pk) dv_vs_ipred(xpdb_ex_pk)
dv_vs_pred(xpdb_ex_pk) dv_vs_ipred(xpdb_ex_pk)
Access model code from an xpdb object.
get_code(xpdb, .problem = NULL)
get_code(xpdb, .problem = NULL)
xpdb |
An |
.problem |
The problem to be used, in addition, problem 0 is attributed to general output (e.g. NM-TRAN warnings in NONMEM). By default returns the entire code. |
A tibble of the parsed model.
parsed_model <- get_code(xpdb_ex_pk) parsed_model
parsed_model <- get_code(xpdb_ex_pk) parsed_model
Access model output table data from an xpdb object.
get_data(xpdb, table = NULL, .problem = NULL, quiet)
get_data(xpdb, table = NULL, .problem = NULL, quiet)
xpdb |
An |
table |
Name of the output table to be extracted from the xpdb e.g. 'sdtab001'. Alternative to the '.problem' argument. |
.problem |
Accesses all tables from the specified problem. Alternative to the 'table' argument. |
quiet |
Logical, if |
By default returns data from the last estimation problem. If only simulation problems are present then the data from last simulation will be returned instead. Object returned as tibble for single tables/problems or a named list for multiple tables/problems.
list_data
, xpose_data
, read_nm_tables
# By table name sdtab <- get_data(xpdb_ex_pk, 'sdtab001') sdtab # By problem tables <- get_data(xpdb_ex_pk, .problem = 1) tables # Tip to list available tables in the xpdb print(xpdb_ex_pk)
# By table name sdtab <- get_data(xpdb_ex_pk, 'sdtab001') sdtab # By problem tables <- get_data(xpdb_ex_pk, .problem = 1) tables # Tip to list available tables in the xpdb print(xpdb_ex_pk)
Access model output file data from an xpdb object.
get_file( xpdb, file = NULL, ext = NULL, .problem = NULL, .subprob = NULL, .method = NULL, quiet )
get_file( xpdb, file = NULL, ext = NULL, .problem = NULL, .subprob = NULL, .method = NULL, quiet )
xpdb |
An |
file |
Full name of the file to be extracted from the xpdb e.g. 'run001.phi'. Alternative to the 'ext' argument. |
ext |
Extension of the file to be extracted from the xpdb e.g. 'phi'. Alternative to the 'file' argument. |
.problem |
The problem to be used, by default returns the last one for each file. |
.subprob |
The subproblem to be used, by default returns the last one for each file. |
.method |
The estimation method to be used (e.g. 'foce', 'imp', 'saem'), by default returns the last one for each file. |
quiet |
Logical, if |
A tibble for single file or a named list for multiple files.
list_files
, xpose_data
, read_nm_files
# Single file (returns a tibble) ext_file <- get_file(xpdb_ex_pk, file = 'run001.ext') ext_file # Multiple files (returns a list) files <- get_file(xpdb_ex_pk, file = c('run001.ext', 'run001.phi')) files # Tip to list available files in the xpdb print(xpdb_ex_pk)
# Single file (returns a tibble) ext_file <- get_file(xpdb_ex_pk, file = 'run001.ext') ext_file # Multiple files (returns a list) files <- get_file(xpdb_ex_pk, file = c('run001.ext', 'run001.phi')) files # Tip to list available files in the xpdb print(xpdb_ex_pk)
Access model parameter estimates from an xpdb object.
get_prm( xpdb, .problem = NULL, .subprob = NULL, .method = NULL, digits = 4, transform = TRUE, show_all = FALSE, quiet )
get_prm( xpdb, .problem = NULL, .subprob = NULL, .method = NULL, digits = 4, transform = TRUE, show_all = FALSE, quiet )
xpdb |
An |
.problem |
The problem to be used, by default returns the last one for each file. |
.subprob |
The subproblem to be used, by default returns the last one for each file. |
.method |
The estimation method to be used, by default returns the last one for each file |
digits |
The number of significant digits to be displayed. |
transform |
Should diagonal OMEGA and SIGMA elements be transformed to standard deviation and off diagonal elements be transformed to correlations. |
show_all |
Logical, whether the 0 fixed off-diagonal elements should be removed from the output. |
quiet |
Logical, if |
A tibble for single problem/subprob or a named list for multiple problem|subprob.
# Store the parameter table prm <- get_prm(xpdb_ex_pk, .problem = 1) # Display parameters to the console prm_table(xpdb_ex_pk, .problem = 1)
# Store the parameter table prm <- get_prm(xpdb_ex_pk, .problem = 1) # Display parameters to the console prm_table(xpdb_ex_pk, .problem = 1)
Access special model data from an xpdb object.
get_special(xpdb, .problem = NULL, quiet)
get_special(xpdb, .problem = NULL, quiet)
xpdb |
An |
.problem |
The problem to be used, by default returns the last one. |
quiet |
Logical, if |
A list.
special <- get_summary(xpdb_ex_pk) special
special <- get_summary(xpdb_ex_pk) special
Access model summary data from an xpdb object.
get_summary(xpdb, .problem = NULL, .subprob = NULL, only_last = FALSE)
get_summary(xpdb, .problem = NULL, .subprob = NULL, only_last = FALSE)
xpdb |
An |
.problem |
The .problem to be used, by default returns the last one for each label. |
.subprob |
The subproblem to be used, by default returns the last one for each label. |
only_last |
Logical, if |
A tibble of model summary.
xpose_data
, template_titles
, summary.xpose_data
run_summary <- get_summary(xpdb_ex_pk) run_summary
run_summary <- get_summary(xpdb_ex_pk) run_summary
An additional set of complete ggplot2 themes intended to make ggplot2 more readable
when used in presentation or publications. These themes also bring the legend_position
option
without having to call the ggplot2 theme() function to modify a complete theme.
theme_bw2
: Black and white theme inspired by a theme from Gunnar Yngman.
theme_readable
: Light grey theme, with dimmed background and grid lines
intended to bring the focus on the data.
theme_bw2(base_size = 11, base_family = "", legend_position = "right") theme_readable(base_size = 11, base_family = "", legend_position = "right")
theme_bw2(base_size = 11, base_family = "", legend_position = "right") theme_readable(base_size = 11, base_family = "", legend_position = "right")
base_size |
Base font size. |
base_family |
Base font family. |
legend_position |
The position of legends defined as 'none', 'left', 'right', 'bottom', 'top', or a two-element numeric vector. |
# With the gg_theme theme_readable() (default) dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # With the gg_theme theme_bw2() xpdb_ex_pk %>% update_themes(gg_theme = theme_bw2()) %>% dv_vs_ipred(facets = 'SEX')
# With the gg_theme theme_readable() (default) dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # With the gg_theme theme_bw2() xpdb_ex_pk %>% update_themes(gg_theme = theme_bw2()) %>% dv_vs_ipred(facets = 'SEX')
Observations (DV), individual predictions (IPRED) and population predictions (PRED) plotted against the independent variable for every individual
ind_plots( xpdb, mapping = NULL, group = "variable", type = "lp", title = "Individual plots | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir | Page @page of @lastpage", tag = NULL, log = NULL, facets, .problem, quiet, color = c("grey60", "deepskyblue4", "deepskyblue3"), point_alpha = c(0.8, 0, 0), line_linetype = c("blank", "solid", "55"), ... )
ind_plots( xpdb, mapping = NULL, group = "variable", type = "lp", title = "Individual plots | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir | Page @page of @lastpage", tag = NULL, log = NULL, facets, .problem, quiet, color = c("grey60", "deepskyblue4", "deepskyblue3"), point_alpha = c(0.8, 0, 0), line_linetype = c("blank", "solid", "55"), ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
color |
Changes the **lines, points and text** color. Should be a vector of 3 values
(i.e. DV, IPRED, PRED). This |
point_alpha |
Points alpha, should be a vector of 3 values (i.e. DV, IPRED, PRED). |
line_linetype |
Lines linetype, should be a vector of 3 values (i.e. DV, IPRED, PRED). |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
## Not run: # Basic example ind_plots(xpdb_ex_pk, page = 1, ncol = 2, nrow = 2) ## End(Not run)
## Not run: # Basic example ind_plots(xpdb_ex_pk, page = 1, ncol = 2, nrow = 2) ## End(Not run)
Add a column containing a simulation counter (irep). A new simulation is counted everytime a value in x is lower than its previous value.
irep(x, quiet = FALSE)
irep(x, quiet = FALSE)
x |
The column to be used for computing simulation number, usually the ID column. |
quiet |
Logical, if |
xpdb_ex_pk_2 <- xpdb_ex_pk %>% mutate(sim_id = irep(ID), .problem = 2)
xpdb_ex_pk_2 <- xpdb_ex_pk %>% mutate(sim_id = irep(ID), .problem = 2)
List NONMEM output tables file names from a nm_model
object.
list_nm_tables(nm_model = NULL)
list_nm_tables(nm_model = NULL)
nm_model |
An xpose nm_model object generated with |
## Not run: read_nm_model(file = 'run001.lst') %>% list_nm_tables() ## End(Not run)
## Not run: read_nm_model(file = 'run001.lst') %>% list_nm_tables() ## End(Not run)
Function listing all available variables in an xpdb object.
list_vars(xpdb, .problem = NULL)
list_vars(xpdb, .problem = NULL)
xpdb |
An |
.problem |
The problem to be used, by lists all available problems. |
list_vars(xpdb_ex_pk)
list_vars(xpdb_ex_pk)
Function providing a detailed listing of all available datasets in an xpdb object.
list_data(xpdb) list_files(xpdb) list_special(xpdb)
list_data(xpdb) list_files(xpdb) list_special(xpdb)
xpdb |
An |
get_data
, get_file
, get_special
# List output tables data list_data(xpdb_ex_pk) # List output files data list_files(xpdb_ex_pk) # List special data xpdb_ex_pk %>% vpc_data(quiet = TRUE) %>% list_special()
# List output tables data list_data(xpdb_ex_pk) # List output files data list_files(xpdb_ex_pk) # List special data xpdb_ex_pk %>% vpc_data(quiet = TRUE) %>% list_special()
Manually provide names of the table files to be imported by xpose_data
.
manual_nm_import( tab_names = c("sdtab", "mutab", "patab", "catab", "cotab", "mytab", "extra", "xptab", "cwtab"), tab_suffix = "", sim_suffix = "sim" )
manual_nm_import( tab_names = c("sdtab", "mutab", "patab", "catab", "cotab", "mytab", "extra", "xptab", "cwtab"), tab_suffix = "", sim_suffix = "sim" )
tab_names |
Provide the name of the tables to import e.g. 'sdtab', 'patab', 'cotab', 'catab' for NONMEM. |
tab_suffix |
Default is ”, but can be changed to any character string to be used as suffix in the table names. |
sim_suffix |
Default is 'sim', but can be changed to any character string to be used as suffix in the simulation table names e.g. sdtab001sim. |
In order to be imported manually, table names must follow the following convention:
<tab_names><runno><tab/sim_suffix>
e.g. sdtab001sim. When the argument 'file' is used in
xpose_data
, the <runno>
part is guessed by taking the portion of the string starting
by any digit and ending at the file extension e.g. file = run001a.mod
will guess <runno> as
'001a'. If no valid <runno> can be guessed, xpose will return an error. In this case it is advised
to use the xpose_data
argument 'runno' directly rather than 'file' hence preventing xpose
from having to guess <runno>.
Note that with manual table import xpose still reads in the NONMEM model file in order to generate the run summary.
## Not run: # Import all names specified by default as in xpose4 xpose_data(runno = '001', manual_import = manual_nm_import()) # Import a specific table name xpose_data(runno = '001', manual_import = manual_nm_import(tab_names = 'mytab')) ## End(Not run)
## Not run: # Import all names specified by default as in xpose4 xpose_data(runno = '001', manual_import = manual_nm_import()) # Import a specific table name xpose_data(runno = '001', manual_import = manual_nm_import(tab_names = 'mytab')) ## End(Not run)
Change of parameter value or gradient vs. iterations.
prm_vs_iteration( xpdb, mapping = NULL, group = "variable", type = "l", title = "Parameter @y vs. @x | @run", subtitle = "Method: @method, minimization time: @runtime\nTermination message: @term", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, .subprob, .method, quiet, ... ) grd_vs_iteration( xpdb, mapping = NULL, group = "variable", type = "l", title = "Gradient @y vs. @x | @run", subtitle = "Method: @method, minimization time: @runtime\nTermination message: @term", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, .subprob, .method, quiet, ... )
prm_vs_iteration( xpdb, mapping = NULL, group = "variable", type = "l", title = "Parameter @y vs. @x | @run", subtitle = "Method: @method, minimization time: @runtime\nTermination message: @term", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, .subprob, .method, quiet, ... ) grd_vs_iteration( xpdb, mapping = NULL, group = "variable", type = "l", title = "Gradient @y vs. @x | @run", subtitle = "Method: @method, minimization time: @runtime\nTermination message: @term", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, .subprob, .method, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Enable guide display (e.g. unity line). |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
.subprob |
The sub-problem number to be used. By default returns the last sub-problem associated with the selected problem. |
.method |
The estimation method to be used, by default returns the last one for each file |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
prm_vs_iteration(xpdb_ex_pk) grd_vs_iteration(xpdb_ex_pk)
prm_vs_iteration(xpdb_ex_pk) grd_vs_iteration(xpdb_ex_pk)
mutate()
adds new variables and preserves existing ones.
select()
keeps only the listed variables; rename()
keeps all variables.
## S3 method for class 'xpose_data' mutate(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' select(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' rename(.data, ..., .problem, .source, .where)
## S3 method for class 'xpose_data' mutate(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' select(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' rename(.data, ..., .problem, .source, .where)
.data |
An xpose database object. |
... |
Name-value pairs of expressions. Use These arguments are automatically quoted and evaluated in the context of the data frame. They support unquoting and splicing. See the dplyr vignette("programming") for an introduction to these concepts. |
.problem |
The problem from which the data will be modified |
.source |
The source of the data in the xpdb. Can either be 'data' or an output file extension e.g. 'phi'. |
.where |
A vector of element names to be edited in special (e.g.
|
# Mutate columns xpdb_ex_pk %>% mutate(lnDV = log(DV), sim_count = irep(ID), .problem = 1) %>% dv_vs_idv(aes(y = lnDV)) # Rename/select columns xpdb_ex_pk %>% select(ID:TAD, DV, EVID) %>% rename(TSLD = TAD) %>% dv_vs_idv(aes(x = TSLD))
# Mutate columns xpdb_ex_pk %>% mutate(lnDV = log(DV), sim_count = irep(ID), .problem = 1) %>% dv_vs_idv(aes(y = lnDV)) # Rename/select columns xpdb_ex_pk %>% select(ID:TAD, DV, EVID) %>% rename(TSLD = TAD) %>% dv_vs_idv(aes(x = TSLD))
Plot of observations (DV), individual model predictions (IPRED) and/or population predictions (PRED) plotted against the independent variable (IDV).
dv_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, facets, .problem, quiet, ... ) ipred_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "@y vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... ) pred_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... ) dv_preds_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "Observations, Individual and Population Predictions vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... )
dv_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, facets, .problem, quiet, ... ) ipred_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "@y vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... ) pred_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... ) dv_preds_vs_idv( xpdb, mapping = NULL, group = "ID", type = "pls", facets, title = "Observations, Individual and Population Predictions vs. @x | @run", subtitle = "Ofv: @ofv, Eps shrink: @epsshk", caption = "@dir", tag = NULL, log = NULL, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
dv_vs_idv(xpdb_ex_pk) ipred_vs_idv(xpdb_ex_pk) pred_vs_idv(xpdb_ex_pk) dv_preds_vs_idv(xpdb_ex_pk)
dv_vs_idv(xpdb_ex_pk) ipred_vs_idv(xpdb_ex_pk) pred_vs_idv(xpdb_ex_pk) dv_preds_vs_idv(xpdb_ex_pk)
This function returns to the console a list of the files and options
attached to an xpose_data
object.
## S3 method for class 'xpose_data' print(x, ...)
## S3 method for class 'xpose_data' print(x, ...)
x |
An |
... |
Ignored in this function |
# Using the print function print(xpdb_ex_pk) # Or simply by writing the xpdb name xpdb_ex_pk
# Using the print function print(xpdb_ex_pk) # Or simply by writing the xpdb name xpdb_ex_pk
This function explicitly draw an xpose_plot and interprets keywords contained in labels.
## S3 method for class 'xpose_plot' print(x, page, ...)
## S3 method for class 'xpose_plot' print(x, page, ...)
x |
An |
page |
The page number to be drawn. Can be specified as vector or range of integer values. |
... |
Options to be passed on to the ggplot2 print method. |
my_plot <- dv_vs_ipred(xpdb_ex_pk) + labs(title = 'A label with keywords: @nind individuals & @nobs observations') # Using the print function print(my_plot) # Or simply by writting the plot object name my_plot
my_plot <- dv_vs_ipred(xpdb_ex_pk) + labs(title = 'A label with keywords: @nind individuals & @nobs observations') # Using the print function print(my_plot) # Or simply by writting the plot object name my_plot
Display parameter estimates from an xpdb object to the console.
prm_table( xpdb, .problem = NULL, .subprob = NULL, .method = NULL, digits = 4, transform = TRUE, show_all = FALSE )
prm_table( xpdb, .problem = NULL, .subprob = NULL, .method = NULL, digits = 4, transform = TRUE, show_all = FALSE )
xpdb |
An |
.problem |
The problem to be used, by default returns the last one for each file. |
.subprob |
The subproblem to be used, by default returns the last one for each file. |
.method |
The estimation method to be used, by default returns the last one for each file |
digits |
The number of significant digits to be displayed. |
transform |
Should diagonal OMEGA and SIGMA elements be transformed to standard deviation and off diagonal elements be transformed to correlations. |
show_all |
Logical, whether the 0 fixed off-diagonal elements should be removed from the output. |
## Not run: # Store the parameter table prm <- get_prm(xpdb_ex_pk, .problem = 1) # Display parameters to the console prm_table(xpdb_ex_pk, .problem = 1) ## End(Not run)
## Not run: # Store the parameter table prm <- get_prm(xpdb_ex_pk, .problem = 1) # Display parameters to the console prm_table(xpdb_ex_pk, .problem = 1) ## End(Not run)
QQ plots of the ETA and model residuals.
prm_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of parameters | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) eta_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of etas | @run", subtitle = "Based on @nind individuals, Eta shrink: @etashk", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) res_qq( xpdb, mapping = NULL, res = "CWRES", type = "p", title = "QQ plot of @sample | @run", subtitle = "Based on @nobs observations", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) cov_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of continuous covariates | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... )
prm_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of parameters | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) eta_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of etas | @run", subtitle = "Based on @nind individuals, Eta shrink: @etashk", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) res_qq( xpdb, mapping = NULL, res = "CWRES", type = "p", title = "QQ plot of @sample | @run", subtitle = "Based on @nobs observations", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) cov_qq( xpdb, mapping = NULL, drop_fixed = TRUE, type = "p", title = "QQ plot of continuous covariates | @run", subtitle = "Based on @nind individuals", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
drop_fixed |
Should columns that only have a single unique value (i.e. fixed) be dropped. |
type |
String setting the type of plot. Can only be points 'p'. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Should the guide (e.g. reference line) be displayed. |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
res |
Only used for |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', etc.
point: options to geom_point
guide: options to geom_abline
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
# QQ plot of parameters prm_qq(xpdb_ex_pk) # QQ plot of eta eta_qq(xpdb_ex_pk) # QQ plot of residuals res_qq(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # QQ plot of continuous covariates cov_qq(xpdb_ex_pk)
# QQ plot of parameters prm_qq(xpdb_ex_pk) # QQ plot of eta eta_qq(xpdb_ex_pk) # QQ plot of residuals res_qq(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # QQ plot of continuous covariates cov_qq(xpdb_ex_pk)
Quickly import NONMEM output files into R.
read_nm_files( runno = NULL, prefix = "run", ext = c(".ext", ".cor", ".cov", ".phi", ".grd", ".shk"), file = NULL, dir = NULL, quiet = FALSE )
read_nm_files( runno = NULL, prefix = "run", ext = c(".ext", ".cor", ".cov", ".phi", ".grd", ".shk"), file = NULL, dir = NULL, quiet = FALSE )
runno |
Run number to be evaluated. |
prefix |
Prefix of the model file names. |
ext |
A vector of the file extension to import. By default '.ext', '.cor', '.cov', '.phi', '.grd', '.shk' files are listed. |
file |
Names of the model output file to be imported. Alternative argument to |
dir |
Location of the model files. |
quiet |
Logical, if |
The rules for model file names generation are as follow:
with runno
: the full path is generated as
<dir>/<prefix><runno>.<ext>
e.g. with dir = 'model/pk'
,
prefix = 'run'
, runno = '001'
, ext = '.lst'
the
resulting path would be model/pk/run001.lst
with file
:
the full path is generated as <dir>/<file>
e.g. with dir =
'model/pk'
, file = 'run001.lst'
the resulting path would also be
model/pk/run001.lst
. Note: in this case the file extension should be
provided as part of the 'file' argument.
## Not run: # Using the `file` argument to import a model file: ext_file <- read_nm_files(file = 'run001.ext', dir = 'models') # Using the `runno` argument to import a model file: ext_file <- read_nm_files(runno = '001', ext = '.ext', dir = 'models') ## End(Not run)
## Not run: # Using the `file` argument to import a model file: ext_file <- read_nm_files(file = 'run001.ext', dir = 'models') # Using the `runno` argument to import a model file: ext_file <- read_nm_files(runno = '001', ext = '.ext', dir = 'models') ## End(Not run)
Parse NONMEM model files in R format
read_nm_model( runno = NULL, prefix = "run", ext = ".lst", file = NULL, dir = NULL, check_ext = TRUE )
read_nm_model( runno = NULL, prefix = "run", ext = ".lst", file = NULL, dir = NULL, check_ext = TRUE )
runno |
Run number to be used to generate model file name. Used in
combination with |
prefix |
Prefix to be used to generate model file name. Used in
combination with |
ext |
Extension to be used to generate model file name. Should be one of '.lst' (default), '.out', '.res', '.mod' or '.ctl' for NONMEM. |
file |
Model file name (preferably a '.lst' file) containing the file
extension. Alternative to |
dir |
Location of the model files. |
check_ext |
Logical, if |
A NONMEM model output file (i.e. .lst, .out or .res) should preferably be provided to read_nm_model
to allow for a more extensive xpose
summary. However in some cases these output files may not contain the model code, thus preventing xpose from identifying the associated output
tables names. In such cases xpose will attempt to read the associated model file (i.e. .mod or .ctl) instead to find the model code. Note: it
is important that between the naming convention between the NONMEM output and the model file remains consistent e.g. run001.lst should be
associated with run001.mod.
A tibble
of class model
containing the following columns:
problem: a numeric identifier for the $PROBLEM associated with the code.
level: a unique numeric identifier to each subroutine block associated with the code.
subroutine: a character identifier named after the 3 first letters of the subroutine name e.g. '$THETA' and '$TABLE' will become 'the' and 'tab' respectively. In addition all output from the .lst is labeled 'lst', the general nonmem output e.g. NM-TRAN messages are labelled 'oth'. With priors thp, tpv, omp, opd, sip, spd abbreviations are given to the THETAP, THETAPV, OMEGAP, etc.
code: the code without comments or subroutine names e.g. '$THETA 0.5 ; TVCL' will return '0.5'.
comment: the last comment of a record e.g. '0.5 ; Clearance (L/h) ; TVCL' will return 'TVCL'.
The rules for model file names generation are as follow:
with runno
: the full path is generated as
<dir>/<prefix><runno>.<ext>
e.g. with dir = 'model/pk'
,
prefix = 'run'
, runno = '001'
, ext = '.lst'
the
resulting path would be model/pk/run001.lst
with file
:
the full path is generated as <dir>/<file>
e.g. with dir =
'model/pk'
, file = 'run001.lst'
the resulting path would also be
model/pk/run001.lst
. Note: in this case the file extension should be
provided as part of the 'file' argument.
## Not run: # Using the `file` argument to import a model file: nm_model <- read_nm_model(file = 'run001.lst', dir = 'models') # Using the `runno` argument to import a model file: nm_model <- read_nm_model(runno = '001', ext = '.lst', dir = 'models') ## End(Not run)
## Not run: # Using the `file` argument to import a model file: nm_model <- read_nm_model(file = 'run001.lst', dir = 'models') # Using the `runno` argument to import a model file: nm_model <- read_nm_model(runno = '001', ext = '.lst', dir = 'models') ## End(Not run)
Quickly import NONMEM output tables into R. This function automatically detects the optimal settings to import the tables from nonmem.
read_nm_tables( file = NULL, dir = NULL, combined = TRUE, rm_duplicates = TRUE, quiet = FALSE, simtab = NULL, ziptab = TRUE, ... )
read_nm_tables( file = NULL, dir = NULL, combined = TRUE, rm_duplicates = TRUE, quiet = FALSE, simtab = NULL, ziptab = TRUE, ... )
file |
A character vector of path to the files or a |
dir |
Location of the model files. |
combined |
Logical value indicating whether multiple tables should be combined into a single one. If the number of rows does not match an error will be returned. |
rm_duplicates |
Logical value indicating whether duplicated columns should be removed. |
quiet |
Logical, if |
simtab |
If |
ziptab |
If |
... |
Additional arguments to be passed to the |
When using read_nm_tables
with the combined
argument set to FALSE
an ID
column
must be present in all data tables. When combined
is set to TRUE
instead an ID
column must be
present in at least one table for each problem and for each 'firstonly' category. ID
columns are required
to properly combine/merge tables and removing NA
records. If the ID
column is missing from a table and
combined = FALSE
read_nm_tables
will return the following warning: Unknown variables: `ID`
. While
the data is returned beware that NA
records might be left in the data and the output should be checked carefully.
If combined = TRUE
read_nm_tables
xpose is more strict and will return the following warning instead:
Dropped `<tablenames>` due to missing required `ID` column.
.
## Not run: # Import tables manually and return them as a list of individual tables nm_tables <- read_nm_tables(file = c('sdtab001', 'patab001'), dir = 'models', combined = FALSE) # Import tables manually and return them as a single merged table nm_tables <- read_nm_tables(file = c('sdtab001', 'patab001'), dir = 'models', combined = TRUE) # Import tables automatically (used internally by xpose_data()) nm_tables <- read_nm_model(file = 'run001.lst', dir = 'models') %>% list_nm_tables() %>% read_nm_tables() # Passing arguments to readr via `...` # (e.g. import columns as character and only first 10 rows) nm_tables <- read_nm_tables(file = 'sdtab001', dir = 'models', col_type = readr::cols(.default = 'c'), n_max = 10) ## End(Not run)
## Not run: # Import tables manually and return them as a list of individual tables nm_tables <- read_nm_tables(file = c('sdtab001', 'patab001'), dir = 'models', combined = FALSE) # Import tables manually and return them as a single merged table nm_tables <- read_nm_tables(file = c('sdtab001', 'patab001'), dir = 'models', combined = TRUE) # Import tables automatically (used internally by xpose_data()) nm_tables <- read_nm_model(file = 'run001.lst', dir = 'models') %>% list_nm_tables() %>% read_nm_tables() # Passing arguments to readr via `...` # (e.g. import columns as character and only first 10 rows) nm_tables <- read_nm_tables(file = 'sdtab001', dir = 'models', col_type = readr::cols(.default = 'c'), n_max = 10) ## End(Not run)
Model residuals plotted against the independent variable (IDV).
The residuals can be one of:
RES: model residuals
WRES: weighted model residuals
CWRES: conditional weighted model residuals
EWRES/ECWRES: Monte Carlo based model residuals
NPDE: Normalized prediction distribution error
res_vs_idv( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) absval_res_vs_idv( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
res_vs_idv( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) absval_res_vs_idv( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
res |
Type of residual to be used. Default is "CWRES". |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Enable guide display (e.g. unity line). |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
# Standard residual res_vs_idv(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # Absolute value of the residuals absval_res_vs_idv(xpdb_ex_pk, res = 'CWRES')
# Standard residual res_vs_idv(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # Absolute value of the residuals absval_res_vs_idv(xpdb_ex_pk, res = 'CWRES')
Model residuals plotted against population predictions (PRED).
The residuals can be one of:
RES: model residuals
WRES: weighted model residuals
CWRES: conditional weighted model residuals
EWRES/ECWRES: Monte Carlo based model residuals
NPDE: Normalized prediction distribution error
res_vs_pred( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) absval_res_vs_pred( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
res_vs_pred( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = TRUE, facets, .problem, quiet, ... ) absval_res_vs_pred( xpdb, mapping = NULL, res = "CWRES", group = "ID", type = "pls", title = "@y vs. @x | @run", subtitle = "Ofv: @ofv", caption = "@dir", tag = NULL, log = NULL, guide = FALSE, facets, .problem, quiet, ... )
xpdb |
An xpose database object. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
res |
Type of residual to be used. Default is "CWRES". |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', smooth 's' and text 't' or any combination of the four. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Enable guide display (e.g. unity line). |
facets |
Either a character string to use |
.problem |
The $problem number to be used. By default returns the last estimation problem. |
quiet |
Logical, if |
... |
Any additional aesthetics to be passed on |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
# Standard residual res_vs_pred(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # Absolute value of the residuals absval_res_vs_pred(xpdb_ex_pk, res = 'CWRES')
# Standard residual res_vs_pred(xpdb_ex_pk, res = c('IWRES', 'CWRES')) # Absolute value of the residuals absval_res_vs_pred(xpdb_ex_pk, res = 'CWRES')
Function designed to change the type, label or unit associated with variables.
set_var_types(xpdb, .problem = NULL, ..., auto_factor = TRUE, quiet) set_var_labels(xpdb, .problem = NULL, ..., quiet) set_var_units(xpdb, .problem = NULL, ..., quiet)
set_var_types(xpdb, .problem = NULL, ..., auto_factor = TRUE, quiet) set_var_labels(xpdb, .problem = NULL, ..., quiet) set_var_units(xpdb, .problem = NULL, ..., quiet)
xpdb |
An |
.problem |
The problem number to which the edits will be applied. |
... |
Specifications of the edits to be made to the xpdb index. Edits are made as type and variable pairs e.g. idv = 'TAD' will assign TAD to the type idv (independent variable). |
auto_factor |
With |
quiet |
Logical, if |
An xpose_data object
a: Compartments' amount
amt: Dose amount
catcov: Categorical covariate
contcov: Continuous covariate
dv: Dependent variable
dvid: DV identifier
eta: Eta
evid: Event identifier
id: Subject identifier
idv: Independent variable
ipred: Individual model predictions
mdv: Missing dependent variable
na: Not attributed
occ: Occasion flag
param: Model parameter
pred: Typical model predictions
res: Residuals
# Change variable type xpdb_2 <- set_var_types(xpdb_ex_pk, .problem = 1, idv = 'TAD') # Change labels xpdb_2 <- set_var_labels(xpdb_2, .problem = 1, ALAG1 = 'Lag time', CL = 'Clearance', V = 'Volume') # Change units xpdb_2 <- set_var_units(xpdb_2, .problem = 1, ALAG1 = 'h', CL = 'L/h', V = 'L')
# Change variable type xpdb_2 <- set_var_types(xpdb_ex_pk, .problem = 1, idv = 'TAD') # Change labels xpdb_2 <- set_var_labels(xpdb_2, .problem = 1, ALAG1 = 'Lag time', CL = 'Clearance', V = 'Volume') # Change units xpdb_2 <- set_var_units(xpdb_2, .problem = 1, ALAG1 = 'h', CL = 'L/h', V = 'L')
Use filter()
to select rows/cases where conditions are true.
Unlike base subsetting, rows where the condition evaluates to NA are dropped.
Use slice()
to select row/cases by their position
## S3 method for class 'xpose_data' filter(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' slice(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' distinct(.data, ..., .problem, .source, .where)
## S3 method for class 'xpose_data' filter(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' slice(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' distinct(.data, ..., .problem, .source, .where)
.data |
An xpose database object. |
... |
Name-value pairs of expressions. Use These arguments are automatically quoted and evaluated in the context of the data frame. They support unquoting and splicing. See the dplyr vignette("programming") for an introduction to these concepts. |
.problem |
The problem from which the data will be modified |
.source |
The source of the data in the xpdb. Can either be 'data' or an output file extension e.g. 'phi'. |
.where |
A vector of element names to be edited in special (e.g.
|
# Subset by condition xpdb_ex_pk %>% filter(DV < 1, .problem = 1) %>% dv_vs_ipred() # Subset by positions xpdb_ex_pk %>% slice(1:100, .problem = 1) %>% dv_vs_ipred() # Deduplicate rows xpdb_ex_pk %>% distinct(TIME, .problem = 1) %>% dv_vs_ipred()
# Subset by condition xpdb_ex_pk %>% filter(DV < 1, .problem = 1) %>% dv_vs_ipred() # Subset by positions xpdb_ex_pk %>% slice(1:100, .problem = 1) %>% dv_vs_ipred() # Deduplicate rows xpdb_ex_pk %>% distinct(TIME, .problem = 1) %>% dv_vs_ipred()
group_by()
takes an existing table and converts it into a
grouped table where operations are performed "by group". ungroup()
removes grouping.
summarize()
reduces multiple values down to a single value.
## S3 method for class 'xpose_data' group_by(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' ungroup(x, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' summarise(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' summarize(.data, ..., .problem, .source, .where)
## S3 method for class 'xpose_data' group_by(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' ungroup(x, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' summarise(.data, ..., .problem, .source, .where) ## S3 method for class 'xpose_data' summarize(.data, ..., .problem, .source, .where)
.data |
An xpose database object. |
... |
Name-value pairs of expressions. Use These arguments are automatically quoted and evaluated in the context of the data frame. They support unquoting and splicing. See the dplyr vignette("programming") for an introduction to these concepts. |
.problem |
The problem from which the data will be modified |
.source |
The source of the data in the xpdb. Can either be 'data' or an output file extension e.g. 'phi'. |
.where |
A vector of element names to be edited in special (e.g.
|
x |
Same as .data (used for consistency with dplyr functions). |
# Create a distribution plot of Cmax xpdb_ex_pk %>% group_by(ID, SEX, .problem = 1) %>% summarize(CMAX = max(DV), .problem = 1) %>% ungroup(.problem = 1) %>% xplot_distrib(aes(x = CMAX, density_fill = SEX), type = 'dr')
# Create a distribution plot of Cmax xpdb_ex_pk %>% group_by(ID, SEX, .problem = 1) %>% summarize(CMAX = max(DV), .problem = 1) %>% ungroup(.problem = 1) %>% xplot_distrib(aes(x = CMAX, density_fill = SEX), type = 'dr')
This function returns a summary of an xpose_data
to the console.
## S3 method for class 'xpose_data' summary(object, .problem = NULL, ...)
## S3 method for class 'xpose_data' summary(object, .problem = NULL, ...)
object |
An |
.problem |
The problem to be used, by default returns the last one for each label. |
... |
Ignored in this function |
summary(xpdb_ex_pk)
summary(xpdb_ex_pk)
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and the filename when saving
with the xpose_save
function.
Template titles are defined via a single string containing key variables staring with a @ (e.g. @ofv) which will be replaced by their actual value when rendering the plot. For example '@run, @nobs observations in @nind subjects' would become 'run001, 1022 observations in 74 subjects'
Many key variables are available:
Condition number
Covariance matrix runtime
Model input data used
Model description
Model directory
Epsilon shrinkage
Run errors (e.g termination error)
ESAMPLE seed number (used in NPDE)
Eta shrinkage
Model file name
Model label
Estimation method or sim
Number of ESAMPLE (used in NPDE)
Number of individuals
Number of observations
Number of significant digits
Number of simulations
Objective function value
Are respectively the page number and the number of the last page when faceting on multiple pages
Problem number
Name of the plot function
Reference model
Model run name
Estimation/Sim runtime
Software used (e.g. NONMEM)
Simulation seed
Differential equation solver
Run start time
Run stop time
Time of the plot rendering
Termination message
Software version (e.g. 7.3)
VPC confidence interval
VPC data directory
VPC lower limit of quantification
Number of simulations for VPC
VPC prediction interval
VPC upper limit of quantification
Run warnings (e.g. boundary)
Name of any ggplot2 variable used for mapping in an aes()
type function
# Defined when creating a plot dv_vs_ipred(xpdb_ex_pk, title = '@x vs. @y', subtitle = '@ofv, @nind subjects, @nobs obs.', caption = '@run, @descr') # Any label can be modified later on dv_vs_ipred(xpdb_ex_pk, aes(point_color = SEX, line_color = SEX)) + labs(title = 'This runs is: @descr', color = 'Color scale for @run', x = 'IPRED for @nind subjects', subtitle = NULL)
# Defined when creating a plot dv_vs_ipred(xpdb_ex_pk, title = '@x vs. @y', subtitle = '@ofv, @nind subjects, @nobs obs.', caption = '@run, @descr') # Any label can be modified later on dv_vs_ipred(xpdb_ex_pk, aes(point_color = SEX, line_color = SEX)) + labs(title = 'This runs is: @descr', color = 'Color scale for @run', x = 'IPRED for @nind subjects', subtitle = NULL)
Create an xpose theme. This function will update the theme of an
xpdb object. All plots generated with this xpdb will automatically use the
defined xpose (xp_theme
) and ggplot2 (gg_theme
) themes.
update_themes(xpdb = NULL, gg_theme = NULL, xp_theme = NULL, quiet)
update_themes(xpdb = NULL, gg_theme = NULL, xp_theme = NULL, quiet)
xpdb |
An |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
quiet |
Logical, if |
# Before default theme dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # Updating the gg_theme and xp_theme xpdb_ex_pk %>% update_themes(gg_theme = theme(legend.position = 'top'), xp_theme = list(point_color = 'blue', line_color = 'blue')) %>% dv_vs_ipred(facets = 'SEX')
# Before default theme dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # Updating the gg_theme and xp_theme xpdb_ex_pk %>% update_themes(gg_theme = theme(legend.position = 'top'), xp_theme = list(point_color = 'blue', line_color = 'blue')) %>% dv_vs_ipred(facets = 'SEX')
Generate visual predictive checks (VPC)
vpc( xpdb, vpc_type = NULL, mapping = NULL, smooth = TRUE, type = "alpr", title = "Visual predictive checks | @run", subtitle = "Number of simulations: @vpcnsim, confidence interval: @vpcci%", caption = "@vpcdir", tag = NULL, log = NULL, guide = TRUE, gg_theme, xp_theme, facets, quiet, area_fill = c("steelblue3", "grey60", "steelblue3"), line_linetype = c("93", "solid", "93"), ... )
vpc( xpdb, vpc_type = NULL, mapping = NULL, smooth = TRUE, type = "alpr", title = "Visual predictive checks | @run", subtitle = "Number of simulations: @vpcnsim, confidence interval: @vpcci%", caption = "@vpcdir", tag = NULL, log = NULL, guide = TRUE, gg_theme, xp_theme, facets, quiet, area_fill = c("steelblue3", "grey60", "steelblue3"), line_linetype = c("93", "solid", "93"), ... )
xpdb |
An xpose database object. |
vpc_type |
Only used when multiple vpc data are present in the same xpdb. The type of vpc to be created. Can be one of can be one of: 'continuous', 'categorical', 'censored' or 'time-to-event'. |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
smooth |
Should the bins be smoothed (connect bin midpoints, default) or shown as rectangular boxes. |
type |
String setting the type of plot to be used. Can be points 'p', line 'l', area 'a', rug 'r' and text 't' or any combination of the five. |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
log |
String assigning logarithmic scale to axes, can be either ”, 'x', y' or 'xy'. |
guide |
Enable guide display in vpc continuous (e.g. lloq and uloq lines). |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
facets |
Either a character string to use facet_wrap or a formula to use facet_grid. |
quiet |
Logical, if |
area_fill |
Shaded areas filling color, should be a vector of 3 values (i.e. low, med, high). |
line_linetype |
Lines linetype, should be a vector of 3 values (i.e. low, med, high). |
... |
any additional aesthetics. |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', area_fill = 'green', etc.
point: options to geom_point
line: options to geom_line
area: options to geom_ribbon
(smooth = TRUE) or geom_rect
(smooth = FALSE)
rug: options to geom_rug
text: options to geom_text
guide: options to geom_hline
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
xpdb_ex_pk %>% vpc_data(opt = vpc_opt(n_bins = 7)) %>% vpc()
xpdb_ex_pk %>% vpc_data(opt = vpc_opt(n_bins = 7)) %>% vpc()
Generate visual predictive checks (VPC) data
vpc_data( xpdb, opt, stratify, vpc_type = c("continuous", "categorical", "censored", "time-to-event"), psn_folder = NULL, psn_bins = FALSE, obs_problem = NULL, sim_problem = NULL, quiet )
vpc_data( xpdb, opt, stratify, vpc_type = c("continuous", "categorical", "censored", "time-to-event"), psn_folder = NULL, psn_bins = FALSE, obs_problem = NULL, sim_problem = NULL, quiet )
xpdb |
An xpose database object. |
opt |
A list of options regarding binning, pi and ci computation.
For more information see |
stratify |
Either a character string or a formula to stratify the data. For 'categorical' vpcs the stratification fixed to the different categories. |
vpc_type |
A string specifying the type of VPC to be created, can be one of: 'continuous', 'categorical', 'censored' or 'time-to-event'. |
psn_folder |
Specify a PsN-generated VPC-folder. |
psn_bins |
Only used with argument |
obs_problem |
Alternative to the option 'psn_folder'. The $problem number to be used for observations. By default returns the last estimation problem. |
sim_problem |
Alternative to the option 'psn_folder'. The $problem number to be used for simulations. By default returns the last simulation problem. |
quiet |
Logical, if |
## Not run: xpdb_ex_pk %>% vpc_data() %>% vpc() ## End(Not run)
## Not run: xpdb_ex_pk %>% vpc_data() %>% vpc() ## End(Not run)
Provide a list of options to vpc_data
function.
vpc_opt( bins = "jenks", n_bins = "auto", bin_mid = "mean", pred_corr = FALSE, pred_corr_lower_bnd = 0, pi = c(0.025, 0.975), ci = c(0.025, 0.975), lloq = NULL, uloq = NULL, rtte = FALSE, rtte_calc_diff = TRUE, events = NULL, kmmc = NULL, reverse_prob = FALSE, as_percentage = TRUE )
vpc_opt( bins = "jenks", n_bins = "auto", bin_mid = "mean", pred_corr = FALSE, pred_corr_lower_bnd = 0, pi = c(0.025, 0.975), ci = c(0.025, 0.975), lloq = NULL, uloq = NULL, rtte = FALSE, rtte_calc_diff = TRUE, events = NULL, kmmc = NULL, reverse_prob = FALSE, as_percentage = TRUE )
bins |
Binning method, can be one of 'density', 'time', 'data', 'none', or one of the approaches
available in |
n_bins |
When using the 'auto' binning method, what number of bins to aim for. |
bin_mid |
Specify how to is the mid bin value calculated, can be either 'mean' for the mean of all timepoints (default) or 'middle' to use the average of the bin boundaries. |
pred_corr |
Option reserved to continuous VPC. Logical, should a prediction correction (pcVPC) of the data be used. |
pred_corr_lower_bnd |
Option reserved to continuous VPC. Lower bound for the prediction-correction. |
pi |
Option reserved to continuous VPC. Simulated prediction interval to plot. Default is c(0.05, 0.95). |
ci |
Confidence interval around the percentiles to plot. Default is c(0.05, 0.95) |
lloq |
Number or NULL indicating lower limit of quantification. Default is NULL. |
uloq |
Number or NULL indicating upper limit of quantification. Default is NULL. |
rtte |
Option reserved to time-to-event VPC. Is the data repeated time-to-event (RTTE) |
rtte_calc_diff |
Option reserved to time-to-event VPC. Should the time be recalculated? When simulating in NONMEM,
you will probably need to set this to |
events |
Option reserved to time-to-event VPC. Numeric vector describing which events to show a VPC for when
repeated TTE data, e.g. c(1:4). Default is |
kmmc |
Option reserved to time-to-event VPC. Either NULL for regular TTE VPC (default), or a variable name for a KMMC plot (e.g. 'WT'). |
reverse_prob |
Option reserved to time-to-event VPC. Should the probability be reversed (i.e. plot 1-probability). |
as_percentage |
Should the Y-scale be in percent (0-100) |
vpc_opt()
vpc_opt()
xpose themes are used to consistently apply a set of preference for the plot geoms (e.g. color scales, point size, etc.) whereas ggplot2 theme focus on the plot background, axes, titles etc.
theme_xp_default
: The default xp_theme in xpose
theme_xp_xpose4
: An xp_theme that makes xpose look like xpose4.
theme_xp_default() theme_xp_xpose4()
theme_xp_default() theme_xp_xpose4()
# With the xp_theme theme_xp_default() (default) dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # With the xp_theme theme_xp_xpose4() xpdb_ex_pk %>% update_themes(xp_theme = theme_xp_xpose4()) %>% dv_vs_ipred(facets = 'SEX')
# With the xp_theme theme_xp_default() (default) dv_vs_ipred(xpdb_ex_pk, facets = 'SEX') # With the xp_theme theme_xp_xpose4() xpdb_ex_pk %>% update_themes(xp_theme = theme_xp_xpose4()) %>% dv_vs_ipred(facets = 'SEX')
xpose_data
examplesMoxonidine xpose_data
example.
An xpose_data
object
Moxonidine model: Assumption Testing in Population Pharmacokinetic Models: Illustrated with an Analysis of Moxonidine Data from Congestive Heart Failure Patients. Journal of Pharmacokinetics and Biopharmaceutics. 26(2):207–246 (1998).
print(xpdb_ex_pk)
print(xpdb_ex_pk)
Manually generate distribution plots from an xpdb object.
xplot_distrib( xpdb, mapping = NULL, type = "hr", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "density_plot", gg_theme, xp_theme, opt, quiet, ... )
xplot_distrib( xpdb, mapping = NULL, type = "hr", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "density_plot", gg_theme, xp_theme, opt, quiet, ... )
xpdb |
An |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
type |
String setting the type of plot to be used. Can be histogram 'h', density 'd', rug 'r' or any combination of the three. |
guide |
Should the guide (e.g. reference distribution) be displayed. |
xscale |
Scale type for x axis (e.g. 'continuous', 'discrete', 'log10'). |
yscale |
Scale type for y axis (e.g. 'continuous', 'discrete', 'log10'). |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
plot_name |
Name to be used by |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
opt |
A list of options in order to create appropriate data input for
ggplot2. For more information see |
quiet |
Logical, if |
... |
Any additional aesthetics. |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. histogram_fill = 'blue', rug_sides = 'b', etc.
histogram: options to geom_histogram
density: options to geom_density
rug: options to geom_rug
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
# A simple histogram xplot_distrib(xpdb_ex_pk, aes(x = WT), type = 'hr') # A simple density plot xplot_distrib(xpdb_ex_pk, aes(x = CWRES), type = 'dr')
# A simple histogram xplot_distrib(xpdb_ex_pk, aes(x = WT), type = 'hr') # A simple density plot xplot_distrib(xpdb_ex_pk, aes(x = CWRES), type = 'dr')
Manually generate QQ plots from an xpdb object.
xplot_qq( xpdb, mapping = NULL, type = "p", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "qq_plot", gg_theme, xp_theme, opt, quiet, ... )
xplot_qq( xpdb, mapping = NULL, type = "p", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "qq_plot", gg_theme, xp_theme, opt, quiet, ... )
xpdb |
An |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
type |
String setting the type of plot to be used. Can only be points 'p'. |
guide |
Should the guide (e.g. reference line) be displayed. |
xscale |
Scale type for x axis (e.g. 'continuous', 'discrete', 'log10'). |
yscale |
Scale type for y axis (e.g. 'continuous', 'discrete', 'log10'). |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
plot_name |
Name to be used by |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
opt |
A list of options in order to create appropriate data input for
ggplot2. For more information see |
quiet |
Logical, if |
... |
Any additional aesthetics. |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', etc.
point: options to geom_point
guide: options to geom_abline
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
xplot_qq(xpdb_ex_pk, aes(sample = CWRES), guide = TRUE)
xplot_qq(xpdb_ex_pk, aes(sample = CWRES), guide = TRUE)
Manually generate scatter plots from an xpdb object.
xplot_scatter( xpdb, mapping = NULL, group = "ID", type = "pls", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "scatter_plot", gg_theme, xp_theme, opt, quiet, ... )
xplot_scatter( xpdb, mapping = NULL, group = "ID", type = "pls", guide = FALSE, xscale = "continuous", yscale = "continuous", title = NULL, subtitle = NULL, caption = NULL, tag = NULL, plot_name = "scatter_plot", gg_theme, xp_theme, opt, quiet, ... )
xpdb |
An |
mapping |
List of aesthetics mappings to be used for the xpose plot
(e.g. |
group |
Grouping variable to be used for lines. |
type |
String setting the type of plot to be used. Can be line 'l', point 'p', smooth 's' and text 't' or any combination of the four. |
guide |
Should the guide (e.g. unity line) be displayed. |
xscale |
Scale type for x axis (e.g. 'continuous', 'discrete', 'log10'). |
yscale |
Scale type for y axis (e.g. 'continuous', 'discrete', 'log10'). |
title |
Plot title. Use |
subtitle |
Plot subtitle. Use |
caption |
Page caption. Use |
tag |
Plot identification tag. Use |
plot_name |
Name to be used by |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
opt |
A list of options in order to create appropriate data input for
ggplot2. For more information see |
quiet |
Logical, if |
... |
Any additional aesthetics. |
Plots can be customized by mapping arguments to specific layers. The naming convention is layer_option where layer is one of the names defined in the list below and option is any option supported by this layer e.g. point_color = 'blue', smooth_method = 'lm', etc.
point: options to geom_point
line: options to geom_line
guide: options to geom_abline
smooth: options to geom_smooth
text: options to geom_text
xscale: options to scale_x_continuous
or scale_x_log10
yscale: options to scale_y_continuous
or scale_y_log10
Every xpose plot function has built-in faceting functionalities. Faceting arguments
are passed to the functions facet_wrap_paginate
when the facets
argument is a character string (e.g. facets = c('SEX', 'MED1')
) or
facet_grid_paginate
when facets is a formula (e.g. facets = SEX~MED1
).
All xpose plot functions accept all the arguments for the facet_wrap_paginate
and facet_grid_paginate
functions e.g. dv_vs_ipred(xpdb_ex_pk,
facets = SEX~MED1, ncol = 3, nrow = 3, page = 1, margins = TRUE, labeller = 'label_both')
.
Faceting options can either be defined in plot functions (e.g. dv_vs_ipred(xpdb_ex_pk,
facets = 'SEX')
) or assigned globally to an xpdb object via the xp_theme
(e.g. xpdb
<- update_themes(xpdb_ex_pk, xp_theme = list(facets = 'SEX'))
). In the latter example all plots
generate from this xpdb will automatically be stratified by 'SEX'.
By default, some plot functions use a custom stratifying variable named 'variable', e.g.
eta_distrib()
. When using the facets
argument, 'variable' needs to be added manually
e.g. facets = c('SEX', 'variable')
or facets = c('SEX', 'variable')
, but is optional,
when using the facets
argument in xp_theme
variable is automatically added whenever needed.
Template titles can be used to create highly informative diagnostics plots.
They can be applied to any plot title, subtitle, caption and tag. Template titles
are defined via a single string containing key variables staring with a '@' (e.g. '@ofv')
which will be replaced by their actual value when rendering the plot.
For example ''@run, @nobs observations in @nind subjects'' would become
''run001, 1022 observations in 74 subjects''. The available key variables
are listed under template_titles
.
xplot_scatter(xpdb_ex_pk, aes(x = IPRED, y = DV))
xplot_scatter(xpdb_ex_pk, aes(x = IPRED, y = DV))
Gather model outputs into a R database
xpose_data( runno = NULL, prefix = "run", ext = ".lst", file = NULL, dir = NULL, gg_theme = theme_readable, xp_theme = theme_xp_default(), simtab = NULL, manual_import = NULL, ignore = NULL, check_ext = TRUE, extra_files, quiet, ... )
xpose_data( runno = NULL, prefix = "run", ext = ".lst", file = NULL, dir = NULL, gg_theme = theme_readable, xp_theme = theme_xp_default(), simtab = NULL, manual_import = NULL, ignore = NULL, check_ext = TRUE, extra_files, quiet, ... )
runno |
Run number to be used to generate model file name. Used in
combination with |
prefix |
Prefix to be used to generate model file name. Used in
combination with |
ext |
Extension to be used to generate model file name. Should be one of '.lst' (default), '.out', '.res', '.mod' or '.ctl' for NONMEM. |
file |
Model file name (preferably a '.lst' file) containing the file
extension. Alternative to |
dir |
Location of the model files. |
gg_theme |
A complete ggplot2 theme object (e.g.
|
xp_theme |
A complete xpose theme object (e.g.
|
simtab |
If |
manual_import |
If |
ignore |
Character vector be used to ignore the import/generation of: 'data', 'files', 'summary' or any combination of the three. |
check_ext |
Logical, if |
extra_files |
A vector of additional output file extensions to be imported. Default is '.ext', '.cov', '.cor', '.phi', '.grd' for NONMEM. |
quiet |
Logical, if |
... |
Additional arguments to be passed to the
|
The rules for model file names generation are as follow:
with runno
: the full path is generated as
<dir>/<prefix><runno>.<ext>
e.g. with dir = 'model/pk'
,
prefix = 'run'
, runno = '001'
, ext = '.lst'
the
resulting path would be model/pk/run001.lst
with file
:
the full path is generated as <dir>/<file>
e.g. with dir =
'model/pk'
, file = 'run001.lst'
the resulting path would also be
model/pk/run001.lst
. Note: in this case the file extension should be
provided as part of the 'file' argument.
When importing data, an ID
column
must be present in at least one table for each problem and for each
'firstonly' category. ID
columns are required to properly
combine/merge tables and removing NA
records. If ID
columns
are missing xpose will return the following warning: Dropped
`<tablenames>` due to missing required `ID` column.
## Not run: # Using the `file` argument to point to the model file: xpdb <- xpose_data(file = 'run001.lst', dir = 'models') # Using the `runno` argument to point to the model file: xpdb <- xpose_data(runno = '001', ext = '.lst', dir = 'models') # Using the `extra_files` argument to import specific output files only: xpdb <- xpose_data(file = 'run001.lst', dir = 'models', extra_files = c('.ext', '.phi')) # Using `ignore` to disable import of tables and output files: xpdb <- xpose_data(file = 'run001.lst', dir = 'models', ignore = c('data', 'files')) # Using `simtab` to disable import of simulation tables xpdb <- xpose_data(file = 'run001.lst', dir = 'models', simtab = FALSE) ## End(Not run)
## Not run: # Using the `file` argument to point to the model file: xpdb <- xpose_data(file = 'run001.lst', dir = 'models') # Using the `runno` argument to point to the model file: xpdb <- xpose_data(runno = '001', ext = '.lst', dir = 'models') # Using the `extra_files` argument to import specific output files only: xpdb <- xpose_data(file = 'run001.lst', dir = 'models', extra_files = c('.ext', '.phi')) # Using `ignore` to disable import of tables and output files: xpdb <- xpose_data(file = 'run001.lst', dir = 'models', ignore = c('data', 'files')) # Using `simtab` to disable import of simulation tables xpdb <- xpose_data(file = 'run001.lst', dir = 'models', simtab = FALSE) ## End(Not run)
Built as a wrapper around ggsave, this function facilitates the export of xpose plots.
xpose_save( plot = last_plot(), file = NULL, dir = NULL, device = NULL, scale = 1, width = 7, height = 6, units = c("in", "cm", "mm", "px"), dpi = 200, limitsize = TRUE, bg = NULL, ... )
xpose_save( plot = last_plot(), file = NULL, dir = NULL, device = NULL, scale = 1, width = 7, height = 6, units = c("in", "cm", "mm", "px"), dpi = 200, limitsize = TRUE, bg = NULL, ... )
plot |
A xpose plot object. |
file |
A name with file extension (if device is |
dir |
Directory under which the xpose plots will be saved. Template
variables such as |
device |
Graphical device to use. Can be either be a device function
(e.g. |
scale |
Multiplicative scaling factor. |
width , height , units
|
Plot size in in |
dpi |
Plot resolution. Also accepts a string input: "retina" (320), "print" (300), or "screen" (72). Applies only to raster output types. |
limitsize |
When |
bg |
Background color. If |
... |
Other arguments passed on to the graphics device function, as
specified by |
## Not run: xpdb_ex_pk %>% dv_vs_ipred() %>% xpose_save(file = file.path(tempdir(), "dv_vs_ipred_example.pdf")) ## End(Not run)
## Not run: xpdb_ex_pk %>% dv_vs_ipred() %>% xpose_save(file = file.path(tempdir(), "dv_vs_ipred_example.pdf")) ## End(Not run)