Contents

1 Introduction

This package is designed for reactome pathway-based analysis. Reactome is an open-source, open access, manually curated and peer-reviewed pathway database.

2 Citation

If you use Reactome in published research, please cite G. Yu (2015). In addition, please cite G. Yu (2012) when using compareCluster in clusterProfiler, G Yu (2015) when applying enrichment analysis to NGS data using ChIPseeker.

G Yu, QY He.
ReactomePA: an R/Bioconductor package for reactome pathway analysis and visualization
Molecular BioSystems 2015, Accepted.

URL: http://dx.doi.org/10.1039/C5MB00663E

G Yu, LG Wang, Y Han, QY He.
clusterProfiler: an R package for comparing biological themes among gene clusters.
OMICS: A Journal of Integrative Biology 2012, 16(5):284-287.

URL: http://dx.doi.org/10.1089/omi.2011.0118

G Yu, LG Wang, QY He.
ChIPseeker: an R/Bioconductor package for ChIP peak annotation, comparison and visualization.
Bioinformatics 2015, 31(14):2382-2383.

URL: http://dx.doi.org/10.1093/bioinformatics/btv145

3 Supported organisms

Currently ReactomePA supports several model organisms, including ‘celegans’, ‘fly’, ‘human’, ‘mouse’, ‘rat’, ‘yeast’ and ‘zebrafish’. The input gene ID should be Entrez gene ID. We recommend using clusterProfiler::bitr to convert biological IDs. For more detail, please refer to bitr: Biological Id TranslatoR.

4 Pathway Enrichment Analysis

Enrichment analysis is a widely used approach to identify biological themes. Here, we implement hypergeometric model to assess whether the number of selected genes associated with reactome pathway is larger than expected. The p values were calculated based the hypergeometric model1,

require(DOSE)
data(geneList)
de <- names(geneList)[abs(geneList) > 1.5]
head(de)
## [1] "4312"  "8318"  "10874" "55143" "55388" "991"
require(ReactomePA)
x <- enrichPathway(gene=de,pvalueCutoff=0.05, readable=T)
head(summary(x))
##              ID                             Description GeneRatio  BgRatio
## 68877     68877                    Mitotic Prometaphase    25/248 100/6750
## 69278     69278                     Cell Cycle, Mitotic    49/248 409/6750
## 2500257 2500257 Resolution of Sister Chromatid Cohesion    23/248  92/6750
## 1640170 1640170                              Cell Cycle    54/248 498/6750
## 5663220 5663220            RHO GTPases Activate Formins    21/248 102/6750
## 68886     68886                                 M Phase    30/248 235/6750
##               pvalue     p.adjust       qvalue
## 68877   8.513729e-15 5.031614e-12 4.445062e-12
## 69278   5.206358e-14 1.538479e-11 1.359133e-11
## 2500257 1.065524e-13 2.099083e-11 1.854386e-11
## 1640170 1.424702e-13 2.104997e-11 1.859611e-11
## 5663220 7.246336e-11 8.565169e-09 7.566700e-09
## 68886   1.535243e-09 1.512214e-07 1.335931e-07
##                                                                                                                                                                                                                                                                                                                               geneID
## 68877                                                                                                                                                                          CDCA8/CDC20/CENPE/CCNB2/NDC80/NCAPH/SKA1/CENPM/CENPN/CDK1/ERCC6L/MAD2L1/KIF18A/BIRC5/NCAPG/AURKB/CCNB1/KIF2C/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/TAOK1
## 69278                                CDC45/CDCA8/MCM10/CDC20/FOXM1/KIF23/CENPE/MYBL2/CCNB2/NDC80/TOP2A/NCAPH/RRM2/UBE2C/SKA1/NEK2/CENPM/CENPN/CCNA2/CDK1/ERCC6L/MAD2L1/GINS1/KIF18A/CDT1/BIRC5/NCAPG/AURKB/GINS2/KIF20A/AURKA/CCNB1/MCM5/PTTG1/MCM2/KIF2C/CDC25A/CDC6/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/ESPL1/CCNE1/ORC6/ORC1/TAOK1
## 2500257                                                                                                                                                                                    CDCA8/CDC20/CENPE/CCNB2/NDC80/SKA1/CENPM/CENPN/CDK1/ERCC6L/MAD2L1/KIF18A/BIRC5/AURKB/CCNB1/KIF2C/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/TAOK1
## 1640170 CDC45/CDCA8/MCM10/CDC20/FOXM1/KIF23/CENPE/MYBL2/CCNB2/NDC80/TOP2A/NCAPH/RRM2/UBE2C/HJURP/SKA1/NEK2/CENPM/CENPN/CCNA2/CDK1/ERCC6L/MAD2L1/GINS1/KIF18A/CDT1/BIRC5/NCAPG/AURKB/GINS2/CHEK1/KIF20A/AURKA/CCNB1/MCM5/PTTG1/LMNB1/MCM2/KIF2C/CDC25A/CDC6/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/ESPL1/RAD51/CCNE1/ORC6/ORC1/OIP5/TAOK1
## 5663220                                                                                                                                                                                                 CDCA8/CDC20/CENPE/NDC80/SKA1/CENPM/CENPN/ERCC6L/MAD2L1/KIF18A/BIRC5/AURKB/KIF2C/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/TAOK1/EVL
## 68886                                                                                                                                           CDCA8/CDC20/KIF23/CENPE/CCNB2/NDC80/NCAPH/UBE2C/SKA1/CENPM/CENPN/CDK1/ERCC6L/MAD2L1/KIF18A/BIRC5/NCAPG/AURKB/KIF20A/CCNB1/PTTG1/KIF2C/PLK1/BUB1B/ZWINT/CENPU/SPC25/CENPI/ESPL1/TAOK1
##         Count
## 68877      25
## 69278      49
## 2500257    23
## 1640170    54
## 5663220    21
## 68886      30

For calculation/parameter details, please refer to the vignette of DOSE.

4.1 Pathway analysis of NGS data

Pathway analysis using NGS data (eg, RNA-Seq and ChIP-Seq) can be performed by linking coding and non-coding regions to coding genes via ChIPseeker package, which can annotates genomic regions to their nearest genes, host genes, and flanking genes respectivly. In addtion, it provides a function, seq2gene, that simultaneously considering host genes, promoter region and flanking gene from intergenic region that may under control via cis-regulation. This function maps genomic regions to genes in a many-to-many manner and facilitate functional analysis. For more details, please refer to ChIPseeker2.

4.2 Visualize enrichment result

We implement barplot, dotplot enrichment map and category-gene-network for visualization. It is very common to visualize the enrichment result in bar or pie chart. We believe the pie chart is misleading and only provide bar chart.

barplot(x, showCategory=8)

dotplot(x, showCategory=15)

Enrichment map can be viusalized by enrichMap:

enrichMap(x, layout=igraph::layout.kamada.kawai, vertex.label.cex = 1)

In order to consider the potentially biological complexities in which a gene may belong to multiple annotation categories, we developed cnetplot function to extract the complex association between genes and diseases.

cnetplot(x, categorySize="pvalue", foldChange=geneList)

4.3 Comparing enriched reactome pathways among gene clusters with clusterProfiler

We have developed an R package clusterProfiler3 for comparing biological themes among gene clusters. ReactomePA works fine with clusterProfiler and can compare biological themes at reactome pathway perspective.

require(clusterProfiler)
data(gcSample)
res <- compareCluster(gcSample, fun="enrichPathway")
plot(res)

5 Gene Set Enrichment Analysis

A common approach in analyzing gene expression profiles was identifying differential expressed genes that are deemed interesting. The enrichPathway function we demonstrated previously were based on these differential expressed genes. This approach will find genes where the difference is large, but it will not detect a situation where the difference is small, but evidenced in coordinated way in a set of related genes. Gene Set Enrichment Analysis (GSEA)4 directly addressed this limitation. All genes can be used in GSEA; GSEA aggregates the per gene statistics across genes within a gene set, therefore making it possible to detect situations where all genes in a predefined set change in a small but coordinated way. For algorithm details, please refer to the vignette of DOSE5.

y <- gsePathway(geneList, nPerm=100, 
                minGSSize=120, pvalueCutoff=0.2, 
                pAdjustMethod="BH", verbose=FALSE)
res <- summary(y)
head(res)
##              ID                       Description setSize enrichmentScore
## 422475   422475                     Axon guidance     269      -0.3191994
## 1474244 1474244 Extracellular matrix organization     228      -0.4459249
## 109581   109581                         Apoptosis     141       0.3948612
## 5357801 5357801             Programmed Cell Death     142       0.4017868
## 2467813 2467813   Separation of Sister Chromatids     130       0.6620115
## 2555396 2555396    Mitotic Metaphase and Anaphase     139       0.6608000
##               NES     pvalue  p.adjust   qvalues
## 422475  -1.338898 0.01204819 0.1493384 0.1094418
## 1474244 -1.863432 0.01282051 0.1493384 0.1094418
## 109581   1.717631 0.02325581 0.1493384 0.1094418
## 5357801  1.741336 0.02325581 0.1493384 0.1094418
## 2467813  2.842012 0.02777778 0.1493384 0.1094418
## 2555396  2.884012 0.02941176 0.1493384 0.1094418

5.1 Visualize GSEA result

enrichMap(y)

gseaplot(y, geneSetID = "1280215")

6 Pathway Visualization

In ReactomePA, we also implemented viewPathway to visualized the pathway.

viewPathway("E2F mediated regulation of DNA replication", readable=TRUE, foldChange=geneList)

7 External documents

7.1 Bugs/Feature requests

If you have any, let me know.

8 Session Information

Here is the output of sessionInfo() on the system on which this document was compiled:

## R version 3.2.3 (2015-12-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 14.04.3 LTS
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        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       
## 
## attached base packages:
## [1] parallel  stats4    stats     graphics  grDevices utils     datasets 
## [8] methods   base     
## 
## other attached packages:
##  [1] graphite_1.16.0       ReactomePA_1.14.4     clusterProfiler_2.4.2
##  [4] DOSE_2.8.2            org.Hs.eg.db_3.2.3    RSQLite_1.0.0        
##  [7] DBI_0.3.1             AnnotationDbi_1.32.2  IRanges_2.4.6        
## [10] S4Vectors_0.8.5       Biobase_2.30.0        BiocGenerics_0.16.1  
## [13] BiocStyle_1.8.0      
## 
## loaded via a namespace (and not attached):
##  [1] Rcpp_0.12.2        XVector_0.10.0     formatR_1.2.1     
##  [4] plyr_1.8.3         zlibbioc_1.16.0    tools_3.2.3       
##  [7] digest_0.6.8       lattice_0.20-33    evaluate_0.8      
## [10] gtable_0.1.2       png_0.1-7          graph_1.48.0      
## [13] igraph_1.0.1       yaml_2.1.13        SparseM_1.7       
## [16] topGO_2.22.0       stringr_1.0.0      httr_1.0.0        
## [19] knitr_1.11         rappdirs_0.3       Biostrings_2.38.2 
## [22] grid_3.2.3         qvalue_2.2.0       R6_2.1.1          
## [25] GOSemSim_1.28.2    rmarkdown_0.8.1    reactome.db_1.54.1
## [28] GO.db_3.2.2        ggplot2_2.0.0      DO.db_2.9         
## [31] reshape2_1.4.1     magrittr_1.5       scales_0.3.0      
## [34] htmltools_0.2.6    splines_3.2.3      KEGGREST_1.10.0   
## [37] colorspace_1.2-6   labeling_0.3       stringi_1.0-1     
## [40] munsell_0.4.2

References

1.Boyle, E. I. et al. GO::TermFinder–open source software for accessing gene ontology information and finding significantly enriched gene ontology terms associated with a list of genes. Bioinformatics (Oxford, England) 20, 3710–3715 (2004).

2.Yu, G., Wang, L.-G. & He, Q.-Y. ChIPseeker: An r/Bioconductor package for chIP peak annotation, comparison and visualization. Bioinformatics 31, 2382–2383 (2015).

3.Yu, G., Wang, L.-G., Han, Y. & He, Q.-Y. clusterProfiler: an r package for comparing biological themes among gene clusters. OMICS: A Journal of Integrative Biology 16, 284–287 (2012).

4.Subramanian, A. et al. Gene set enrichment analysis: A knowledge-based approach for interpreting genome-wide expression profiles. Proceedings of the National Academy of Sciences of the United States of America 102, 15545–15550 (2005).

5.Yu, G., Wang, L.-G., Yan, G.-R. & He, Q.-Y. DOSE: An r/Bioconductor package for disease ontology semantic and enrichment analysis. Bioinformatics 31, 608–609 (2015).