opm.package {opm} | R Documentation |
Package for analysing OmniLog(R) phenotype microarray (PM) data, as well as similar kinetic data such as growth curves.
Here is a brief guideline for using this manual. In
addition to this manual, tutorials (vignettes) are
available together with the package, as well as code
examples accessible via demo
.
All functions and methods belong to a family of functions and methods with similar purposes. The respective other family members are found in each ‘See Also’ entry.
Users normally will create at least one
object of the class OPM
or derived classes.
All these classes store PM data; they differ in
whether they also contain aggregated values
(OPMA
) or aggregated and discretised values
(OPMD
), and whether they contain more than
a single plate of the same plate type
(OPMS
) or of potentially many different
plate types (MOPMX
). Example objects are
available via vaas_1
and
vaas_4
.
Most opm users will start by inputting
data using read_opm
, which create the
appropriate objects.
OmniLog(R)
phenotype microarray data are structured in
plates. Each plate has 12 x 8 well
layout, and each well contains the respiration
measurements on one substrate or inhibitor, or
combination of substrates or inhibitors. For input
example files, see opm_files
.
In addition to PM data,
kinetics from other kinds of kinetic information, such as
growth curves, can be analysed. The method of choice for
converting such data to the objects suitable for
opm is opmx
, which accepts a variety
of data-frame formats.
Options affecting the default
parameters of a number of opm functions can be set
and queried for using opm_opt
.
Some names should be used with
caution when annotating opm objects; see
param_names
for details.
Input and output of YAML files is
based on the yaml package. Up to opm version
0.7, this package was not required for the installation
of opm. It is now mandatory to install one of the
newer versions of yaml (>= v2.1.5). These are based
on libyaml as parser instead of Syck, are
faster and contain some bug fixes. The
YAML-related functions of opm are
to_yaml
and batch_opm
.
Optionally, JSON code can be output, which uses
a subset of the YAML format.
Computations on such high-dimensional
data may take some time. The limiting steps are
aggregating (curve-parameter estimation) and plotting
many curves together. The former step can be conducted in
parallel if mclapply
from the parallel
package can be run with more than 1 core (basically
anywhere except for Windows). Moreover, the particularly
time-consuming bootstrapping can usually be turned off.
There is also a fast estimation method for the parameters
‘area under the curve’ and ‘maximum
height’. See do_aggr
and the methods it
refers to for details.
The gplots package is also
not required for the installation of opm but can be
used to draw more advanced heat maps. See
heat_map
and its accompanying methods for
details. The other customised plotting functions of the
package are contained in the same method family.
Working with relational and other
databases is easily possible with opm provided that
such databases exist, are correctly set up and accessible
by the user. SQL code for setting up the
suggested (extensible) scheme for a relational database
comes with the package. See opm_dbput
for
details.
Bochner, B. R., Gadzinski, P., Panomitros, E. 2001 Phenotype MicroArrays for high throughput phenotypic testing and assay of gene function. Genome Research 11, 1246–1255 (http://dx.doi.org/10.1101/gr.186501).
Bochner, B. R. 2009 Global phenotypic characterization of bacteria. FEMS Microbiological Reviews 33, 191–205.
Vaas, L. A. I., Sikorski, J., Michael, V., Goeker, M., Klenk H.-P. 2012 Visualization and curve parameter estimation strategies for efficient exploration of Phenotype Microarray kinetics. PLoS ONE 7, e34846 (http://dx.doi.org/10.1371/journal.pone.0034846).
Vaas, L. A. I., Sikorski, J., Hofner, B., Goeker, M., Klenk H.-P. 2013 opm: An R package for analysing OmniLog(R) Phenotype MicroArray Data. Bioinformatics 29, 1823–1824 (http://dx.doi.org/10.1093/bioinformatics/btt291).
## Not run:
##D ## show the vignettes
##D vignette("opm-tutorial")
##D vignette("opm-substrates")
##D vignette("opm-growth-curves")
## End(Not run)
## Not run:
##D ## demo of some I/O, plotting, text and table generation options
##D
##D # Beforehand, set 'my.csv.dir' to the name of a directory that contains
##D # CSV files with input data (and *no* other kinds of CSV files) either
##D # directly or within its subdirectories.
##D setwd(my.csv.dir)
##D demo("multiple-plate-types", package = "opm")
## End(Not run)
# the other demos require additional libraries to be installed
if (interactive())
demo(package = "opm")
# list all classes, methods and functions exported by the package
ls("package:opm")
## [1] "%K%" "%Q%" "%k%"
## [4] "%q%" "aggr_settings" "aggregated"
## [7] "annotated" "anyDuplicated" "as.data.frame"
## [10] "batch_collect" "batch_opm" "batch_process"
## [13] "best_cutoff" "boccuto_et_al" "borders"
## [16] "calinski" "ci_plot" "collect_template"
## [19] "contains" "csv_data" "disc_settings"
## [22] "discrete" "discretized" "do_aggr"
## [25] "do_disc" "duplicated" "edit"
## [28] "explode_dir" "extract" "extract_columns"
## [31] "file_pattern" "find_positions" "find_substrate"
## [34] "flatten" "gen_iii" "glob_to_regex"
## [37] "has_aggr" "has_disc" "heat_map"
## [40] "hours" "html_args" "include_metadata"
## [43] "level_plot" "listing" "map_metadata"
## [46] "map_values" "measurements" "merge"
## [49] "metadata" "metadata<-" "metadata_chars"
## [52] "minmax" "oapply" "opm_dbcheck"
## [55] "opm_dbclass" "opm_dbclear" "opm_dbfind"
## [58] "opm_dbget" "opm_dbnext" "opm_dbput"
## [61] "opm_files" "opm_mcp" "opm_opt"
## [64] "opms" "opmx" "parallel_plot"
## [67] "parallelplot" "param_names" "phylo_data"
## [70] "plate_type" "plates" "potato"
## [73] "radial_plot" "read_opm" "read_single_opm"
## [76] "register_plate" "rev" "run_kmeans"
## [79] "safe_labels" "select_colors" "separate"
## [82] "seq" "set_spline_options" "sort"
## [85] "split" "split_files" "str"
## [88] "subset" "substrate_info" "summary"
## [91] "thin_out" "to_kmeans" "to_metadata"
## [94] "to_yaml" "unique" "vaas_1"
## [97] "vaas_4" "well" "wells"
## [100] "xy_plot"