Package: peakPantheR
Authors: Arnaud Wolfer, Goncalo Correia
The peakPantheR
package is designed for the detection, integration and reporting of pre-defined features in MS files (e.g. compounds, fragments, adducts, …).
The graphical user interface implements all of peakPantheR
’s functionalities and can be preferred to understand the methodology, select the best parameters on a subset of the samples before running the command line, or to visually explore results.
Using the faahKO raw MS dataset as an example, this vignette will:
This vignette employ the .csv
or .RData
files generated from faahKO in the vignette Getting Started with peakPantheR.
The graphical user interface is started as follow:
The graphical interface is divided in 5 main tabs, Import Data, Run annotation, Diagnostic: plot & update, View results and Export results.
\(~\)
The first input format is using a .RData
file containing a peakPantheRAnnotation named annotationObject
. This object can be annotated or not, for example loading a previously run annotation (see the Export section for more details).
\(~\)
The second input format consists of multiple .csv
files describing the targeted features, spectra to process and corresponding metadata (optional). Spectra can also be directly selected on disk.
\(~\)
With the targeted features and spectra defined, Run annotation handles the fitting parameter selection as well as downstream computation. First the use of updated regions of interest (uROI
) and fallback integration regions (FIR
) can be selected if available. If uROI
haven’t been previously defined, the option will be crossed out. Secondly the curve fitting model to use can be selected from the interface. Finally Parallelisation
enables the selection of the number of CPU cores to employ for parallel file access and processing.
\(~\)
Note:
The targeted regions of interest (
ROI
) should represent a good starting point for feature integration, however it might be necessary to refine these boundary box to the specific analytical run considered. This ensures a successful integration over all the spectra irrespective of potential chromatographic equilibration differences or retention time drift.Updated regions of interest (
uROI
) can be defined and will supplantROI
.uROI
can for example be manually defined to “tighten” or correct theROI
and avoid erroneous integration. Another use ofuROI
is to encompass the integration region in each sample throughout the run without targeting any excess spectral region that would interfere with the correct analysis.Fallback integration regions (
FIR
) are defined as spectral regions that will be integrated (i.e. integrating the baseline signal) when no successful chromatographic peak could be detected in a sample.FIR
shouldn’t reasonably stretch further than the minimum and maximum bound (RT / m/z) of all found peaks across all samples for a given feature: this way no excess signal will be considered.
\(~\)
With all features integrated in all samples, Diagnostic provide tools to assess the quality of the peak integration and refine integration boundaries by setting uROI
and FIR
adapted to the specific chromatographic run being processed.
\(~\)
Annotation statistics
summarises the success in integrating each targeted feature. The ratio of peaks found (%)
, ratio of peaks filled (%)
and the average ppm error
and RT deviation (s)
will highlight a feature that wasn’t reliably integrated over a large number of samples. Visual evaluation (see below) and the adjustment of uROI
or FIR
might assist in tuning the integration of said feature.
\(~\)
Update uROI/FIR
automatically sets uROI
and FIR
for each feature based on the RT / m/z boundaries of the peaks successfully integrated.
\(~\)
Diagnostic plot
offer a visualisation of a selected feature across all samples in order of analysis. This visualisation highlights the fitting of the feature in each sample, as well as the change in RT / m/z (of the peak apex) and peak area through time. Samples can be automatically coloured based on a sample metadata column.
\(~\)
Once uROI
and FIR
are successfully set, it is possible to go back to the Run annotation tab and refit all features in all samples (Note: this will overwrite the current results).
\(~\)
If the features integration are satisfactory, View results regroups all the integration results
\(~\)
Overall results
displays a fitting property for all targeted features (as columns) and all spectra (as rows).
\(~\)
Results per targeted feature
displays all fitting properties (as columns) for all samples (as rows) for a selected targeted feature.
\(~\)
Results per sample
displays all fitting properties (as columns) for all targeted features (as rows) for a selected sample.
\(~\)
The Export tab manages the saving of input parameters, annotation results and automated reporting.
The peakPantheRAnnotation
in it’s current state can be saved as a .RData
file which can subsequently be reloaded. The .csv
files defining the current analysis can also be exported to reproduce the current processing.
All diagnostic plots from the Diagnostic
tab can be automatically saved to disk for rapid evaluation. This can be executed in parallel if a large number of plots have to be generated.
Finally each fitting property can be saved as a .csv
file with all samples as rows and all targeted features as columns. Additionally a summary table will present the integration success rate for each targeted feature.
\(~\)
If a very high number of targeted features and samples are to be processed, peakPantheR
’s command line functions are more efficient, as they can be integrated in scripts and the reporting automated.
\(~\)
#> ─ Session info ───────────────────────────────────────────────────────────────
#> setting value
#> version R version 4.3.0 RC (2023-04-13 r84269)
#> os Ubuntu 22.04.2 LTS
#> system x86_64, linux-gnu
#> ui X11
#> language (EN)
#> collate C
#> ctype en_US.UTF-8
#> tz America/New_York
#> date 2023-04-25
#> pandoc 2.7.3 @ /usr/bin/ (via rmarkdown)
#>
#> ─ Packages ───────────────────────────────────────────────────────────────────
#> package * version date (UTC) lib source
#> affy 1.78.0 2023-04-25 [2] Bioconductor
#> affyio 1.70.0 2023-04-25 [2] Bioconductor
#> Biobase * 2.60.0 2023-04-25 [2] Bioconductor
#> BiocGenerics * 0.46.0 2023-04-25 [2] Bioconductor
#> BiocManager 1.30.20 2023-02-24 [2] CRAN (R 4.3.0)
#> BiocParallel * 1.34.0 2023-04-25 [2] Bioconductor
#> BiocStyle * 2.28.0 2023-04-25 [2] Bioconductor
#> bitops 1.0-7 2021-04-24 [2] CRAN (R 4.3.0)
#> bookdown 0.33 2023-03-06 [2] CRAN (R 4.3.0)
#> bslib 0.4.2 2022-12-16 [2] CRAN (R 4.3.0)
#> cachem 1.0.7 2023-02-24 [2] CRAN (R 4.3.0)
#> callr 3.7.3 2022-11-02 [2] CRAN (R 4.3.0)
#> cli 3.6.1 2023-03-23 [2] CRAN (R 4.3.0)
#> clue 0.3-64 2023-01-31 [2] CRAN (R 4.3.0)
#> cluster 2.1.4 2022-08-22 [3] CRAN (R 4.3.0)
#> codetools 0.2-19 2023-02-01 [3] CRAN (R 4.3.0)
#> colorspace 2.1-0 2023-01-23 [2] CRAN (R 4.3.0)
#> crayon 1.5.2 2022-09-29 [2] CRAN (R 4.3.0)
#> DelayedArray 0.26.0 2023-04-25 [2] Bioconductor
#> DEoptimR 1.0-12 2023-04-08 [2] CRAN (R 4.3.0)
#> devtools 2.4.5 2022-10-11 [2] CRAN (R 4.3.0)
#> digest 0.6.31 2022-12-11 [2] CRAN (R 4.3.0)
#> doParallel * 1.0.17 2022-02-07 [2] CRAN (R 4.3.0)
#> dplyr 1.1.2 2023-04-20 [2] CRAN (R 4.3.0)
#> DT 0.27 2023-01-17 [2] CRAN (R 4.3.0)
#> ellipsis 0.3.2 2021-04-29 [2] CRAN (R 4.3.0)
#> evaluate 0.20 2023-01-17 [2] CRAN (R 4.3.0)
#> faahKO * 1.39.0 2023-04-25 [2] Bioconductor
#> fansi 1.0.4 2023-01-22 [2] CRAN (R 4.3.0)
#> farver 2.1.1 2022-07-06 [2] CRAN (R 4.3.0)
#> fastmap 1.1.1 2023-02-24 [2] CRAN (R 4.3.0)
#> foreach * 1.5.2 2022-02-02 [2] CRAN (R 4.3.0)
#> fs 1.6.2 2023-04-25 [2] CRAN (R 4.3.0)
#> generics 0.1.3 2022-07-05 [2] CRAN (R 4.3.0)
#> GenomeInfoDb 1.36.0 2023-04-25 [2] Bioconductor
#> GenomeInfoDbData 1.2.10 2023-04-17 [2] Bioconductor
#> GenomicRanges 1.52.0 2023-04-25 [2] Bioconductor
#> ggplot2 3.4.2 2023-04-03 [2] CRAN (R 4.3.0)
#> glue 1.6.2 2022-02-24 [2] CRAN (R 4.3.0)
#> gtable 0.3.3 2023-03-21 [2] CRAN (R 4.3.0)
#> highr 0.10 2022-12-22 [2] CRAN (R 4.3.0)
#> htmltools 0.5.5 2023-03-23 [2] CRAN (R 4.3.0)
#> htmlwidgets 1.6.2 2023-03-17 [2] CRAN (R 4.3.0)
#> httpuv 1.6.9 2023-02-14 [2] CRAN (R 4.3.0)
#> impute 1.74.0 2023-04-25 [2] Bioconductor
#> IRanges 2.34.0 2023-04-25 [2] Bioconductor
#> iterators * 1.0.14 2022-02-05 [2] CRAN (R 4.3.0)
#> jquerylib 0.1.4 2021-04-26 [2] CRAN (R 4.3.0)
#> jsonlite 1.8.4 2022-12-06 [2] CRAN (R 4.3.0)
#> knitr 1.42 2023-01-25 [2] CRAN (R 4.3.0)
#> labeling 0.4.2 2020-10-20 [2] CRAN (R 4.3.0)
#> later 1.3.0 2021-08-18 [2] CRAN (R 4.3.0)
#> lattice 0.21-8 2023-04-05 [3] CRAN (R 4.3.0)
#> lifecycle 1.0.3 2022-10-07 [2] CRAN (R 4.3.0)
#> limma 3.56.0 2023-04-25 [2] Bioconductor
#> magick 2.7.4 2023-03-09 [2] CRAN (R 4.3.0)
#> magrittr 2.0.3 2022-03-30 [2] CRAN (R 4.3.0)
#> MALDIquant 1.22.1 2023-03-20 [2] CRAN (R 4.3.0)
#> MASS 7.3-59 2023-04-21 [3] CRAN (R 4.3.0)
#> MassSpecWavelet 1.66.0 2023-04-25 [2] Bioconductor
#> Matrix 1.5-4 2023-04-04 [3] CRAN (R 4.3.0)
#> MatrixGenerics 1.12.0 2023-04-25 [2] Bioconductor
#> matrixStats 0.63.0 2022-11-18 [2] CRAN (R 4.3.0)
#> memoise 2.0.1 2021-11-26 [2] CRAN (R 4.3.0)
#> mime 0.12 2021-09-28 [2] CRAN (R 4.3.0)
#> miniUI 0.1.1.1 2018-05-18 [2] CRAN (R 4.3.0)
#> minpack.lm 1.2-3 2023-01-26 [2] CRAN (R 4.3.0)
#> MsCoreUtils 1.12.0 2023-04-25 [2] Bioconductor
#> MsFeatures 1.8.0 2023-04-25 [2] Bioconductor
#> MSnbase * 2.26.0 2023-04-25 [2] Bioconductor
#> multtest 2.56.0 2023-04-25 [2] Bioconductor
#> munsell 0.5.0 2018-06-12 [2] CRAN (R 4.3.0)
#> mzID 1.38.0 2023-04-25 [2] Bioconductor
#> mzR * 2.34.0 2023-04-25 [2] Bioconductor
#> ncdf4 1.21 2023-01-07 [2] CRAN (R 4.3.0)
#> pander * 0.6.5 2022-03-18 [2] CRAN (R 4.3.0)
#> pcaMethods 1.92.0 2023-04-25 [2] Bioconductor
#> peakPantheR * 1.14.0 2023-04-25 [1] Bioconductor
#> pillar 1.9.0 2023-03-22 [2] CRAN (R 4.3.0)
#> pkgbuild 1.4.0 2022-11-27 [2] CRAN (R 4.3.0)
#> pkgconfig 2.0.3 2019-09-22 [2] CRAN (R 4.3.0)
#> pkgload 1.3.2 2022-11-16 [2] CRAN (R 4.3.0)
#> plyr 1.8.8 2022-11-11 [2] CRAN (R 4.3.0)
#> pracma 2.4.2 2022-09-22 [2] CRAN (R 4.3.0)
#> preprocessCore 1.62.0 2023-04-25 [2] Bioconductor
#> prettyunits 1.1.1 2020-01-24 [2] CRAN (R 4.3.0)
#> processx 3.8.1 2023-04-18 [2] CRAN (R 4.3.0)
#> profvis 0.3.7 2020-11-02 [2] CRAN (R 4.3.0)
#> promises 1.2.0.1 2021-02-11 [2] CRAN (R 4.3.0)
#> ProtGenerics * 1.32.0 2023-04-25 [2] Bioconductor
#> ps 1.7.5 2023-04-18 [2] CRAN (R 4.3.0)
#> purrr 1.0.1 2023-01-10 [2] CRAN (R 4.3.0)
#> R6 2.5.1 2021-08-19 [2] CRAN (R 4.3.0)
#> RANN 2.6.1 2019-01-08 [2] CRAN (R 4.3.0)
#> RColorBrewer 1.1-3 2022-04-03 [2] CRAN (R 4.3.0)
#> Rcpp * 1.0.10 2023-01-22 [2] CRAN (R 4.3.0)
#> RCurl 1.98-1.12 2023-03-27 [2] CRAN (R 4.3.0)
#> remotes 2.4.2 2021-11-30 [2] CRAN (R 4.3.0)
#> rlang 1.1.0 2023-03-14 [2] CRAN (R 4.3.0)
#> rmarkdown 2.21 2023-03-26 [2] CRAN (R 4.3.0)
#> robustbase 0.95-1 2023-03-29 [2] CRAN (R 4.3.0)
#> S4Vectors * 0.38.0 2023-04-25 [2] Bioconductor
#> sass 0.4.5 2023-01-24 [2] CRAN (R 4.3.0)
#> scales 1.2.1 2022-08-20 [2] CRAN (R 4.3.0)
#> sessioninfo 1.2.2 2021-12-06 [2] CRAN (R 4.3.0)
#> shiny 1.7.4 2022-12-15 [2] CRAN (R 4.3.0)
#> shinycssloaders 1.0.0 2020-07-28 [2] CRAN (R 4.3.0)
#> stringi 1.7.12 2023-01-11 [2] CRAN (R 4.3.0)
#> stringr 1.5.0 2022-12-02 [2] CRAN (R 4.3.0)
#> SummarizedExperiment 1.30.0 2023-04-25 [2] Bioconductor
#> survival 3.5-5 2023-03-12 [3] CRAN (R 4.3.0)
#> tibble 3.2.1 2023-03-20 [2] CRAN (R 4.3.0)
#> tidyselect 1.2.0 2022-10-10 [2] CRAN (R 4.3.0)
#> urlchecker 1.0.1 2021-11-30 [2] CRAN (R 4.3.0)
#> usethis 2.1.6 2022-05-25 [2] CRAN (R 4.3.0)
#> utf8 1.2.3 2023-01-31 [2] CRAN (R 4.3.0)
#> vctrs 0.6.2 2023-04-19 [2] CRAN (R 4.3.0)
#> vsn 3.68.0 2023-04-25 [2] Bioconductor
#> withr 2.5.0 2022-03-03 [2] CRAN (R 4.3.0)
#> xcms * 3.22.0 2023-04-25 [2] Bioconductor
#> xfun 0.39 2023-04-20 [2] CRAN (R 4.3.0)
#> XML 3.99-0.14 2023-03-19 [2] CRAN (R 4.3.0)
#> xtable 1.8-4 2019-04-21 [2] CRAN (R 4.3.0)
#> XVector 0.40.0 2023-04-25 [2] Bioconductor
#> yaml 2.3.7 2023-01-23 [2] CRAN (R 4.3.0)
#> zlibbioc 1.46.0 2023-04-25 [2] Bioconductor
#>
#> [1] /tmp/RtmpoMTDLs/Rinst1ae59f1dcfbb35
#> [2] /home/biocbuild/bbs-3.17-bioc/R/site-library
#> [3] /home/biocbuild/bbs-3.17-bioc/R/library
#>
#> ──────────────────────────────────────────────────────────────────────────────