QFeaturesGUI 0.99.3
library(QFeaturesGUI)
QFeaturesGUI is a collection of Shiny applications that provide graphical
user interfaces for the analysis of MS-based proteomics data using the
Bioconductor ecosystem. It builds on the functionality of the
QFeatures and scp
package
(Vanderaa and Gatto (2021)), offering user-friendly tools for both bulk and
single-cell proteomics (SCP) data analysis.
The suite leverages the power of Shiny and shinydashboardPlus to
deliver interactive, modular applications. Rather than a single monolithic app,
QFeaturesGUI is composed of multiple applications, each dedicated to a
specific aspect of proteomics data analysis. These applications are documented
in separate vignettes, making it easy for users to navigate and find
information relevant to their needs.
Currently available applications include:
Additional applications will be added in future releases.
QFeatures and scp PackagesQFeaturesGUI serves as a graphical interface to core Bioconductor data
infrastructures for proteomics. To use the GUI applications effectively, it is
recommended to understand how the underlying packages handle proteomics data.
This section provides a brief overview; refer to the respective package
documentation for more detailed information.
QFeatures PackageThe QFeatures package is
a data framework specifically designed to manipulate and process MS-based
quantitative proteomics data, with a primary focus on bulk proteomics
workflows (Gatto (2020)).
It preserves the relationships between different levels of information, such as
peptide to spectrum match (PSM) data, peptide data, and protein data.
Additionally, the QFeatures package provides an interface to various utility
functions that streamline common MS data processing tasks.
For further details on MS data analysis tools, refer to the RforMassSpectrometry project.
scp PackageThe scp
package extends
QFeatures to support single-cell proteomics (SCP) data analysis
(Vanderaa and Gatto (2021)). It operates on a specialized data structure that wraps
QFeatures objects around
SingleCellExperiment
objects (Amezquita et al. (2020)).
This data structure can be conceptualized as Matryoshka dolls, where
SingleCellExperiment objects are the smaller dolls contained within the
larger QFeatures object.
The SingleCellExperiment class provides a dedicated framework for single-cell
data, acting as an interface to cutting-edge methods for processing,
visualizing, and analyzing single-cell data. By combining
SingleCellExperiment and QFeatures, the scp package enables principled
handling of SCP-specific challenges while maintaining compatibility with the
broader MS-based proteomics ecosystem.
Before diving into proteomics data analysis using QFeaturesGUI, it is
important to note that these applications act as interfaces to the underlying
QFeatures and scp packages.
When errors occur during an analysis, QFeaturesGUI reports the corresponding
error messages in a dropdown menu at the top right of the application
interface. These messages originate from the underlying package functions.
Users are therefore encouraged to consult the documentation of the associated
QFeatures or scp functions to identify and resolve issues.
The error messages provide valuable clues, and searching the package documentation will often help users troubleshoot effectively.
# Check if remotes is installed. Otherwise install it.
if (!require("remotes", quietly = TRUE)) {
install.packages("remotes")
}
# Install the package
remotes::install_github("rformassspectrometry/QFeaturesGUI")
# Load the package
library(QFeaturesGUI)
QFeaturesGUI is composed of multiple Shiny applications, each dedicated to a
specific step of the proteomics data analysis workflow. Applications are
launched independently, depending on the task to be performed.
For example, the application dedicated to importing data into a QFeatures
object can be launched as follows:
app <- importQFeatures()
if (interactive()) {
shiny::runApp(app)
}
Similarly, the application dedicated to data processing can be launched using:
app <- processQFeatures(qfeaturesObject)
if (interactive()) {
shiny::runApp(app)
}
Rather than a single application with multiple sections, QFeaturesGUI provides a set of dedicated applications. Each application addresses one step of the proteomics workflow and exposes functionality through a focused graphical interface.
The use of each application is described in a corresponding vignette:
Data import: importQFeatures
See the importQFeatures vignette
Data processing: processQFeatures
See the processQFeatures vignette
Additional applications will be introduced in future releases and documented in their own vignettes.
sessionInfo()
#> R version 4.6.1 (2026-06-24)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.4 LTS
#>
#> Matrix products: default
#> BLAS: /home/biocbuild/bbs-3.24-bioc/R/lib/libRblas.so
#> LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0 LAPACK version 3.12.0
#>
#> locale:
#> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
#> [3] LC_TIME=en_GB LC_COLLATE=C
#> [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
#> [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
#> [9] LC_ADDRESS=C LC_TELEPHONE=C
#> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
#>
#> time zone: America/New_York
#> tzcode source: system (glibc)
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] QFeaturesGUI_0.99.3 BiocStyle_2.41.0
#>
#> loaded via a namespace (and not attached):
#> [1] tidyselect_1.2.1 viridisLite_0.4.3
#> [3] dplyr_1.2.1 farver_2.1.2
#> [5] S7_0.2.2 fastmap_1.2.0
#> [7] SingleCellExperiment_1.35.2 lazyeval_0.2.3
#> [9] shinyjs_2.1.1 promises_1.5.0
#> [11] nipals_1.2 digest_0.6.39
#> [13] mime_0.13 lifecycle_1.0.5
#> [15] cluster_2.1.8.3 ProtGenerics_1.45.0
#> [17] magrittr_2.0.5 compiler_4.6.1
#> [19] rlang_1.3.0 sass_0.4.10
#> [21] tools_4.6.1 igraph_2.3.3
#> [23] yaml_2.3.12 data.table_1.18.6.1
#> [25] knitr_1.52 S4Arrays_1.13.0
#> [27] htmlwidgets_1.6.4 DelayedArray_0.39.6
#> [29] plyr_1.8.9 RColorBrewer_1.1-3
#> [31] abind_1.4-8 purrr_1.2.2
#> [33] BiocGenerics_0.59.12 grid_4.6.1
#> [35] stats4_4.6.1 xtable_1.8-8
#> [37] waiter_0.2.5.1 ggplot2_4.0.3
#> [39] scales_1.4.0 MASS_7.3-66
#> [41] MultiAssayExperiment_1.39.1 dichromat_2.0-1
#> [43] SummarizedExperiment_1.43.0 cli_3.6.6
#> [45] rmarkdown_2.32 generics_0.1.4
#> [47] otel_0.2.0 httr_1.4.9
#> [49] reshape2_1.4.5 shinydashboardPlus_2.0.6
#> [51] cachem_1.1.0 stringr_1.6.0
#> [53] AnnotationFilter_1.37.0 BiocManager_1.30.27
#> [55] XVector_0.53.0 matrixStats_1.5.0
#> [57] vctrs_0.7.3 Matrix_1.7-6
#> [59] jsonlite_2.0.0 bookdown_0.48
#> [61] IRanges_2.47.5 S4Vectors_0.51.9
#> [63] clue_0.3-68 fontawesome_0.5.3
#> [65] plotly_4.12.1 tidyr_1.3.2
#> [67] jquerylib_0.1.4 glue_1.8.1
#> [69] QFeatures_1.23.2 shinyalert_3.1.0
#> [71] DT_0.34.0 stringi_1.8.9
#> [73] gtable_0.3.6 later_1.4.8
#> [75] GenomicRanges_1.65.4 shinydashboard_0.7.3
#> [77] tibble_3.3.1 pillar_1.11.1
#> [79] htmltools_0.5.9 Seqinfo_1.3.2
#> [81] R6_2.6.1 evaluate_1.0.5
#> [83] shiny_1.14.0 lattice_0.23-1
#> [85] Biobase_2.73.2 shinyFeedback_0.4.0
#> [87] httpuv_1.6.17 bslib_0.12.0
#> [89] Rcpp_1.1.2 SparseArray_1.13.2
#> [91] xfun_0.60 MsCoreUtils_1.25.4
#> [93] MatrixGenerics_1.25.0 pkgconfig_2.0.3