Single-cell sequencing (SCS) is a fundamental technology in investigating a diverse array of biological fields. Part of the struggle with the high-resolution approach of SCS, is distilling the data down to meaningful scientific hypotheses. escape was created to bridge SCS results, either from raw counts or from popular R-based single-cell pipelines, like Seurat or SingleCellExperiment, with gene set enrichment analyses (GSEA). The escape package allows users to easily incorporate multiple methods of GSEA and offers several visualization and analysis methods. The package accesses the entire Molecular Signature Database v7.0 and enables users to select single, multiple gene sets, and even libraries to perform enrichment analysis on.
- Gene Set Variation Analysis (GSVA) - citation
- Single-sample Gene Set Enrichment Analysis (ssGSEA) - citation
- AUCell - citation
- UCell -citation
More information on each method is available in the escape manual for escape.matrix()
and the citation links. If using these methods, users should cite the original works as well.
escape requires GSVA v1.51.5 (not on Bioconductor 3.18). The easiest way to install is:
devtools::install_github("rcastelo/GSVA")
devtools::install_github("ncborcherding/escape")
For now, the newest version of escape is available in the Bioconductor dev version (3.19).
BiocManager::install(version='devel')
BiocManager::install("escape")
The basic function of enrichment analysis is done using the escape.matrix()
function, with the user defining the method and gene.sets to use.
#Defining Gene Set To Use:
GS <- list(Bcells = c("MS4A1", "CD79B", "CD79A", "IGH1", "IGH2"),
Tcells = c("CD3E", "CD3D", "CD3G", "CD7","CD8A"))
#Using Seurat Built-In Example:
pbmc_small <- SeuratObject::pbmc_small
#Running Enrichment
trial.ssGSEA <- escape.matrix(pbmc_small,
method = "ssGSEA",
gene.sets = GS,
min.size = NULL)
Alternatively, runEscape()
will perform the enrichment calculations as above, but also automatically amend the single-cell object with the values added as an assay, which is named via the new.assay.name parameter. This facilitates easy downstream visualization and analysis.
pbmc_small <- runEscape(pbmc_small,
method = "ssGSEA",
new.assay.name = "escape.ssGSEA",
gene.sets = GS,
min.size = NULL)
A more comprehensive vignette including the visualizations, principal component analysis and differential testing is available here.
If using escape, please cite the article: Borcherding, N., Vishwakarma, A., Voigt, A.P. et al. Mapping the immune environment in clear cell renal carcinoma by single-cell genomics. Commun Biol 4, 122 (2021).
Questions, comments, suggestions, please feel free to contact Nick Borcherding via this repository, email, or using twitter.