Pathway Analysis

Jasmine Chong, Jeff Xia

2023-07-24

1. Introduction

The pathway analysis module supports pathway analysis (integrating enrichment analysis and pathway topology analysis) and visualization for 21 model organisms, including Human, Mouse, Rat, Cow, Chicken, Zebrafish, Arabidopsis thaliana, Rice, Drosophila, Malaria, S. cerevisae, E.coli, and others, with a total of ~1600 metabolic pathways.

2. Pathway Analysis Example Workflow

In this workflow, we will perform pathway analysis where the input is a list of compound names.

# Create vector consisting of compounds for enrichment analysis 
tmp.vec <- c("Acetoacetic acid", "Beta-Alanine", "Creatine", "Dimethylglycine", "Fumaric acid", "Glycine", "Homocysteine", "L-Cysteine", "L-Isolucine", "L-Phenylalanine", "L-Serine", "L-Threonine", "L-Tyrosine", "L-Valine", "Phenylpyruvic acid", "Propionic acid", "Pyruvic acid", "Sarcosine")

# Create mSetObj for storing objects created during your analysis
mSet<-InitDataObjects("conc", "pathora", FALSE)
## [1] "MetaboAnalyst R objects initialized ..."
# Set up mSetObj with the list of compounds
mSet<-Setup.MapData(mSet, tmp.vec);

# Cross reference list of compounds against libraries (hmdb, pubchem, chebi, kegg, metlin)
mSet<-CrossReferencing(mSet, "name");
## [1] "Loaded files from MetaboAnalyst web-server."
## [1] "Loaded files from MetaboAnalyst web-server."
## [1] "1"                                                                              
## [2] "Name matching OK, please inspect (and manual correct) the results then proceed."
mSet<-CreateMappingResultTable(mSet);
## [1] "Loaded files from MetaboAnalyst web-server."
# Perform matching against compound w. out matches
mSet<-PerformDetailMatch(mSet, "L-Isolucine");
## [1] "Loaded files from MetaboAnalyst web-server."
## [1] "Loaded files from MetaboAnalyst web-server."
# Get list of candidates for matching
mSet<-GetCandidateList(mSet);
## [1] "Loaded files from MetaboAnalyst web-server."
# Replace selected compound
mSet<-SetCandidate(mSet, "L-Isolucine", "L-Isoleucine");
## [1] "Loaded files from MetaboAnalyst web-server."
# Select the pathway library, ranging from mammals to prokaryotes
mSet<-SetKEGG.PathLib(mSet, "hsa", "current")

# Set the metabolite filter
mSet<-SetMetabolomeFilter(mSet, F);

# Calculate the over representation analysis score, here we selected to use the hypergeometric test (alternative is Fisher's exact test)
# A results table "pathway_results.csv" will be created and found within your working directory
mSet<-CalculateOraScore(mSet, "rbc", "hyperg")
## [1] "Loaded files from MetaboAnalyst web-server."
# Plot of the Pathway Analysis Overview 
mSet<-PlotPathSummary(mSet, T, "path_view_0_", "png", 72, width=NA)

# Plot a specific metabolic pathway, in this case "Glycine, serine and threonine metabolism"
#mSet<-PlotKEGGPath(mSet, "Glycine, serine and threonine metabolism",576, 480, "png", NULL)
Figure 1. Pathway Analysis results.

Figure 1. Pathway Analysis results.