peakPantheR Graphical User Interface

Package: peakPantheR
Authors: Arnaud Wolfer, Goncalo Correia

Introduction

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:

  • Detail the step-by-step use of the graphical user interface
  • Apply the GUI to a subset of pre-defined features in the faahKO dataset

Abbreviations

  • ROI: Regions Of Interest
    • reference RT / m/z windows in which to search for a feature
  • uROI: updated Regions Of Interest
    • modifed ROI adapted to the current dataset which override the reference ROI
  • FIR: Fallback Integration Regions
    • RT / m/z window to integrate if no peak is found

Example Data

This vignette employ the .csv or .RData files generated from faahKO in the vignette Getting Started with peakPantheR.

Getting Started

The graphical user interface is started as follow:

library(peakPantheR)

peakPantheR_start_GUI(browser = TRUE)
#  To exit press ESC in the command line

The graphical interface is divided in 5 main tabs, Import Data, Run annotation, Diagnostic: plot & update, View results and Export results.

 

Graphical User Interface

Import

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.

 

Run Annotation

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.

 

Diagnostic: plot & update

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 supplant ROI. uROI can for example be manually defined to “tighten” or correct the ROI and avoid erroneous integration. Another use of uROI 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).

 

View 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.

 

Export

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.

 

Final Note

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 Information

#> ─ Session info ───────────────────────────────────────────────────────────────
#>  setting  value
#>  version  R version 4.4.1 (2024-06-14)
#>  os       Ubuntu 24.04.1 LTS
#>  system   x86_64, linux-gnu
#>  ui       X11
#>  language (EN)
#>  collate  C
#>  ctype    en_US.UTF-8
#>  tz       Etc/UTC
#>  date     2024-10-31
#>  pandoc   3.2.1 @ /usr/local/bin/ (via rmarkdown)
#> 
#> ─ Packages ───────────────────────────────────────────────────────────────────
#>  package              * version   date (UTC) lib source
#>  abind                  1.4-8     2024-09-12 [2] RSPM (R 4.4.0)
#>  affy                   1.85.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  affyio                 1.77.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  AnnotationFilter       1.31.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  Biobase              * 2.67.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  BiocGenerics         * 0.53.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  BiocManager            1.30.25   2024-08-28 [2] RSPM (R 4.4.0)
#>  BiocParallel         * 1.41.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  BiocStyle            * 2.35.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  bslib                  0.8.0     2024-07-29 [2] RSPM (R 4.4.0)
#>  buildtools             1.0.0     2024-10-28 [3] local (/pkg)
#>  cachem                 1.1.0     2024-05-16 [2] RSPM (R 4.4.0)
#>  cli                    3.6.3     2024-06-21 [2] RSPM (R 4.4.0)
#>  clue                   0.3-65    2023-09-23 [2] RSPM (R 4.4.0)
#>  cluster                2.1.6     2023-12-01 [2] RSPM (R 4.4.0)
#>  codetools              0.2-20    2024-03-31 [2] RSPM (R 4.4.0)
#>  colorspace             2.1-1     2024-07-26 [2] RSPM (R 4.4.0)
#>  crayon                 1.5.3     2024-06-20 [2] RSPM (R 4.4.0)
#>  DBI                    1.2.3     2024-06-02 [2] RSPM (R 4.4.0)
#>  DelayedArray           0.33.1    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  devtools               2.4.5     2022-10-11 [2] RSPM (R 4.4.0)
#>  digest                 0.6.37    2024-08-19 [2] RSPM (R 4.4.0)
#>  doParallel           * 1.0.17    2022-02-07 [2] RSPM (R 4.4.0)
#>  dplyr                  1.1.4     2023-11-17 [2] RSPM (R 4.4.0)
#>  DT                     0.33      2024-04-04 [2] RSPM (R 4.4.0)
#>  ellipsis               0.3.2     2021-04-29 [2] RSPM (R 4.4.0)
#>  evaluate               1.0.1     2024-10-10 [2] RSPM (R 4.4.0)
#>  faahKO               * 1.45.0    2024-05-02 [2] Bioconductor 3.20 (R 4.4.1)
#>  fansi                  1.0.6     2023-12-08 [2] RSPM (R 4.4.0)
#>  farver                 2.1.2     2024-05-13 [2] RSPM (R 4.4.0)
#>  fastmap                1.2.0     2024-05-15 [2] RSPM (R 4.4.0)
#>  foreach              * 1.5.2     2022-02-02 [2] RSPM (R 4.4.0)
#>  fs                     1.6.5     2024-10-30 [2] CRAN (R 4.4.1)
#>  generics               0.1.3     2022-07-05 [2] RSPM (R 4.4.0)
#>  GenomeInfoDb           1.43.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  GenomeInfoDbData       1.2.13    2024-10-31 [2] Bioconductor
#>  GenomicRanges          1.59.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  ggplot2                3.5.1     2024-04-23 [2] RSPM (R 4.4.0)
#>  glue                   1.8.0     2024-09-30 [2] RSPM (R 4.4.0)
#>  gtable                 0.3.6     2024-10-25 [2] RSPM (R 4.4.0)
#>  highr                  0.11      2024-05-26 [2] RSPM (R 4.4.0)
#>  hms                    1.1.3     2023-03-21 [2] RSPM (R 4.4.0)
#>  htmltools              0.5.8.1   2024-04-04 [2] RSPM (R 4.4.0)
#>  htmlwidgets            1.6.4     2023-12-06 [2] RSPM (R 4.4.0)
#>  httpuv                 1.6.15    2024-03-26 [2] RSPM (R 4.4.0)
#>  httr                   1.4.7     2023-08-15 [2] RSPM (R 4.4.0)
#>  igraph                 2.1.1     2024-10-19 [2] RSPM (R 4.4.0)
#>  impute                 1.81.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  IRanges                2.41.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  iterators            * 1.0.14    2022-02-05 [2] RSPM (R 4.4.0)
#>  jquerylib              0.1.4     2021-04-26 [2] RSPM (R 4.4.0)
#>  jsonlite               1.8.9     2024-09-20 [2] RSPM (R 4.4.0)
#>  knitr                  1.48      2024-07-07 [2] RSPM (R 4.4.0)
#>  labeling               0.4.3     2023-08-29 [2] RSPM (R 4.4.0)
#>  later                  1.3.2     2023-12-06 [2] RSPM (R 4.4.0)
#>  lattice                0.22-6    2024-03-20 [2] RSPM (R 4.4.0)
#>  lazyeval               0.2.2     2019-03-15 [2] RSPM (R 4.4.0)
#>  lifecycle              1.0.4     2023-11-07 [2] RSPM (R 4.4.0)
#>  limma                  3.63.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  magrittr               2.0.3     2022-03-30 [2] RSPM (R 4.4.0)
#>  maketools              1.3.1     2024-10-28 [3] Github (jeroen/maketools@d46f92c)
#>  MALDIquant             1.22.3    2024-08-19 [2] RSPM (R 4.4.0)
#>  MASS                   7.3-61    2024-06-13 [2] RSPM (R 4.4.0)
#>  MassSpecWavelet        1.73.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  Matrix                 1.7-1     2024-10-18 [2] RSPM (R 4.4.0)
#>  MatrixGenerics         1.19.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  matrixStats            1.4.1     2024-09-08 [2] RSPM (R 4.4.0)
#>  memoise                2.0.1     2021-11-26 [2] RSPM (R 4.4.0)
#>  MetaboCoreUtils        1.15.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  mime                   0.12      2021-09-28 [2] RSPM (R 4.4.0)
#>  miniUI                 0.1.1.1   2018-05-18 [2] RSPM (R 4.4.0)
#>  minpack.lm             1.2-4     2023-09-11 [2] RSPM (R 4.4.0)
#>  MsCoreUtils            1.19.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  MsExperiment           1.9.0     2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  MsFeatures             1.15.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  MSnbase              * 2.33.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  MultiAssayExperiment   1.33.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  munsell                0.5.1     2024-04-01 [2] RSPM (R 4.4.0)
#>  mzID                   1.45.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  mzR                  * 2.41.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  ncdf4                  1.23      2024-08-17 [2] RSPM (R 4.4.0)
#>  pander               * 0.6.5     2022-03-18 [2] RSPM (R 4.4.0)
#>  pcaMethods             1.99.0    2024-10-30 [2] https://bioc.r-universe.dev (R 4.4.1)
#>  peakPantheR          * 1.21.0    2024-10-31 [1] https://bioc.r-universe.dev (R 4.4.1)
#>  pillar                 1.9.0     2023-03-22 [2] RSPM (R 4.4.0)
#>  pkgbuild               1.4.5     2024-10-28 [2] RSPM (R 4.4.0)
#>  pkgconfig              2.0.3     2019-09-22 [2] RSPM (R 4.4.0)
#>  pkgload                1.4.0     2024-06-28 [2] RSPM (R 4.4.0)
#>  plyr                   1.8.9     2023-10-02 [2] RSPM (R 4.4.0)
#>  pracma                 2.4.4     2023-11-10 [2] RSPM (R 4.4.0)
#>  preprocessCore         1.68.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  prettyunits            1.2.0     2023-09-24 [2] RSPM (R 4.4.0)
#>  profvis                0.4.0     2024-09-20 [2] RSPM (R 4.4.0)
#>  progress               1.2.3     2023-12-06 [2] RSPM (R 4.4.0)
#>  promises               1.3.0     2024-04-05 [2] RSPM (R 4.4.0)
#>  ProtGenerics         * 1.38.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  PSMatch                1.10.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  purrr                  1.0.2     2023-08-10 [2] RSPM (R 4.4.0)
#>  QFeatures              1.16.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  R6                     2.5.1     2021-08-19 [2] RSPM (R 4.4.0)
#>  RColorBrewer           1.1-3     2022-04-03 [2] RSPM (R 4.4.0)
#>  Rcpp                 * 1.0.13    2024-07-17 [2] RSPM (R 4.4.0)
#>  remotes                2.5.0     2024-03-17 [2] RSPM (R 4.4.0)
#>  reshape2               1.4.4     2020-04-09 [2] RSPM (R 4.4.0)
#>  rlang                  1.1.4     2024-06-04 [2] RSPM (R 4.4.0)
#>  rmarkdown            * 2.28      2024-08-17 [2] RSPM (R 4.4.0)
#>  S4Arrays               1.6.0     2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  S4Vectors            * 0.44.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  sass                   0.4.9     2024-03-15 [2] RSPM (R 4.4.0)
#>  scales                 1.3.0     2023-11-28 [2] RSPM (R 4.4.0)
#>  sessioninfo            1.2.2     2021-12-06 [2] RSPM (R 4.4.0)
#>  shiny                  1.9.1     2024-08-01 [2] RSPM (R 4.4.0)
#>  shinycssloaders        1.1.0     2024-07-30 [2] RSPM (R 4.4.0)
#>  SparseArray            1.6.0     2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  Spectra                1.16.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  statmod                1.5.0     2023-01-06 [2] RSPM (R 4.4.0)
#>  stringi                1.8.4     2024-05-06 [2] RSPM (R 4.4.0)
#>  stringr                1.5.1     2023-11-14 [2] RSPM (R 4.4.0)
#>  SummarizedExperiment   1.36.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  svglite                2.1.3     2023-12-08 [2] RSPM (R 4.4.0)
#>  sys                    3.4.3     2024-10-04 [2] RSPM (R 4.4.0)
#>  systemfonts            1.1.0     2024-05-15 [2] RSPM (R 4.4.0)
#>  tibble                 3.2.1     2023-03-20 [2] RSPM (R 4.4.0)
#>  tidyr                  1.3.1     2024-01-24 [2] RSPM (R 4.4.0)
#>  tidyselect             1.2.1     2024-03-11 [2] RSPM (R 4.4.0)
#>  UCSC.utils             1.2.0     2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  urlchecker             1.0.1     2021-11-30 [2] RSPM (R 4.4.0)
#>  usethis                3.0.0     2024-07-29 [2] RSPM (R 4.4.0)
#>  utf8                   1.2.4     2023-10-22 [2] RSPM (R 4.4.0)
#>  vctrs                  0.6.5     2023-12-01 [2] RSPM (R 4.4.0)
#>  vsn                    3.74.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  withr                  3.0.2     2024-10-28 [2] RSPM (R 4.4.0)
#>  xcms                 * 4.4.0     2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  xfun                   0.48      2024-10-03 [2] RSPM (R 4.4.0)
#>  XML                    3.99-0.17 2024-06-25 [2] RSPM (R 4.4.0)
#>  xtable                 1.8-4     2019-04-21 [2] RSPM (R 4.4.0)
#>  XVector                0.46.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#>  yaml                   2.3.10    2024-07-26 [2] RSPM (R 4.4.0)
#>  zlibbioc               1.52.0    2024-10-29 [2] Bioconductor 3.20 (R 4.4.1)
#> 
#>  [1] /tmp/RtmpPol8sH/Rinst89dc61c29135
#>  [2] /github/workspace/pkglib
#>  [3] /usr/local/lib/R/site-library
#>  [4] /usr/lib/R/site-library
#>  [5] /usr/lib/R/library
#> 
#> ──────────────────────────────────────────────────────────────────────────────