Learn R Programming

⚠️There's a newer version (3.4) of this package.Take me there.

An R interface to the Enrichr database

Wajid Jawaid 2021-02-01

Installation

enrichR can be installed from Github or from CRAN.

Github

library(devtools)
install_github("wjawaid/enrichR")

CRAN

The package can be downloaded from CRAN using:

install.packages("enrichR")

Usage example

enrichR provides an interface to the Enrichr database [@kuleshov_enrichr:_2016] hosted at https://maayanlab.cloud/Enrichr/.

By default human genes are selected otherwise select your organism of choice. (This functionality was contributed by Alexander Blume)

library(enrichR)
listEnrichrSites()
#> Enrichr ... Connection is Live!
#> FlyEnrichr ... Connection is available!
#> WormEnrichr ... Connection is available!
#> YeastEnrichr ... Connection is available!
#> FishEnrichr ... Connection is available!
setEnrichrSite("Enrichr") # Human genes
#> Connection changed to https://maayanlab.cloud/Enrichr/
#> Connection is Live!

Then find the list of all available databases from Enrichr.

dbs <- listEnrichrDbs()

head(dbs)
geneCoveragegenesPerTermlibraryNamenumTerms
13362275Genome_Browser_PWMs615
278841284TRANSFAC_and_JASPAR_PWMs326
600277Transcription_Factor_PPIs290
471721370ChEA_2013353
47107509Drug_Perturbations_from_GEO_2014701
214933713ENCODE_TF_ChIP-seq_2014498

View and select your favourite databases. Then query enrichr, in this case I have used genes associated with embryonic haematopoiesis.

dbs <- c("GO_Molecular_Function_2015", "GO_Cellular_Component_2015", "GO_Biological_Process_2015")
enriched <- enrichr(c("Runx1", "Gfi1", "Gfi1b", "Spi1", "Gata1", "Kdr"), dbs)
#> Uploading data to Enrichr... Done.
#>   Querying GO_Molecular_Function_2015... Done.
#>   Querying GO_Cellular_Component_2015... Done.
#>   Querying GO_Biological_Process_2015... Done.
#> Parsing results... Done.

Now view the results table.

enriched[["GO_Biological_Process_2015"]]

You can give many genes.

data(genes790)
length(genes790)
head(enrichr(genes790, c('LINCS_L1000_Chem_Pert_up'))[[1]])
TermOverlapP.valueAdjusted.P.valueOld.P.valueOld.Adjusted.P.valueOdds.RatioCombined.ScoreGenes
embryonic hemopoiesis (GO_0035162)3/240.0e+000.000008300951.095216465.833KDR;GATA1;RUNX1
regulation of myeloid cell differentiation (GO_0045637)4/1561.0e-070.000008300261.07894374.968GFI1B;SPI1;GATA1;RUNX1
regulation of erythrocyte differentiation (GO_0045646)3/361.0e-070.000011200604.87889710.235GFI1B;SPI1;GATA1
positive regulation of myeloid cell differentiation (GO_0045639)3/741.0e-060.000076200280.60563886.803GFI1B;GATA1;RUNX1
hemopoiesis (GO_0030097)3/952.1e-060.000129900216.32612832.846KDR;GATA1;RUNX1
hematopoietic progenitor cell differentiation (GO_0002244)3/1062.9e-060.000150700193.11652465.031SPI1;GATA1;RUNX1

Plot Enrichr GO-BP output. (Plotting function contributed by I-Hsuan Lin)

plotEnrich(enriched[[3]], showTerms = 20, numChar = 40, y = "Count", orderBy = "P.value")

References

Kuleshov, Maxim V., Matthew R. Jones, Andrew D. Rouillard, Nicolas F. Fernandez, Qiaonan Duan, Zichen Wang, Simon Koplev, et al. 2016. “Enrichr: A Comprehensive Gene Set Enrichment Analysis Web Server 2016 Update.” Nucleic Acids Res 44 (Web Server issue): W90–W97. https://doi.org/10.1093/nar/gkw377.

Copy Link

Version

Install

install.packages('enrichR')

Monthly Downloads

5,309

Version

3.0

License

GPL (>= 2)

Maintainer

Wajid Jawaid

Last Published

February 2nd, 2021

Functions in enrichR (3.0)

plotEnrich

plotEnrich
genes790

790 gene symbols
getEnrichr

Helper function for GET
enrichr

Gene enrichment using Enrichr
.onAttach

onLoad hook to setup package options
listEnrichrDbs

Look up available databases on Enrichr
listEnrichrSites

List Enrichr Websites
setEnrichrSite

Set Enrichr Website
printEnrich

printEnrich