getENRICH - Automated pipeline for enrichment analysis in non-model organisms!
getENRICH is designed to address the unique needs of researchers working with non-model organisms (and model organisms). The tool features a user-friendly command line interface (CLI), ensuring researchers can easily input data and interpret results. A graphical user interface (GUI) is also available at getenrich.igib.res.in. getENRICH is compatible with a wide range of non-model organisms and integrates extensively with major biological databases to ensure comprehensive and up-to-date data analysis. A full document on getENRICH can be downloaded here. The results of the enrichment analysis include a CSV file and several types of plots such as:
- Bar Plots
- BarPlot_qScore
- Dot Plots
- Lollipop Plots
- Cnet Plots
- Heatmap Plots
- Upset Plots
- Tree Plots
- PubMed Trend Plots
- KEGG Pathway Diagrams
Clone the repository using git:
git clone https://github.com/jnarayan81/getENRICH.git
getENRICH requires the following dependencies to be installed:
wget
jq
- R 4.4.1
jsonlite
1.8.8dplyr
1.1.4tidyverse
2.0.0clusterProfiler
4.12.0pheatmap
1.0.12visNetwork
2.1.2enrichplot
1.24.0ggplot2
3.5.1UpSetR
1.4.0pathview
1.44.0plotly
4.10.4cowplot
1.1.3ComplexHeatmap
2.20.0circlize
0.4.16
You can check for the format of input files and setting config file in the documentation.
./getENRICH -c config.json
This flag specifies the configuration file that contains the necessary parameters and settings for running the tool. The config.json
file should be formatted correctly and include all required fields. It is the compulsory flag and the minimum flag the user requires to run the enrichment analysis.
./getENRICH -c config.json -f -i -j -k -l -m -n -o -p -v -a -r -g 0.05
This flag allows the user to delete any previous result folders before running a new analysis. This can be useful for ensuring that old results do not interfere with new ones. If this flag is not used, then the old folder will be over-written with the contents of the new folder.
Usage Example:
./getENRICH -c config.json -f
This flag sets the significance threshold for both p-value and adjusted p-value. The default value is 0.05, but the user can specify a different threshold if needed. If there are no P-value or P-adjust values below the set threshold in the resultant Excel file generated, blank plots for P-adjust and P-value will be generated.
Usage Example:
./getENRICH -c config.json -g 0.01
In this example, the threshold is set to 0.01, so all the P-values and adjusted P-values which are below 0.01 will be plotted in the resultant graphs and plots and if there are no P-value or adjusted P-values below the set threshold in the resultant Excel file generated, blank plots for P-adjust and P-value will be generated.
This flag generates a heatmap for pathways that are significant based on the p-value. This visualization helps in identifying patterns and clusters of significant pathways.
Usage Example:
./getENRICH -c config.json -i
Similar to -i
, this flag generates a heatmap but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -j
This flag generates an upset plot for pathways significant based on the p-value. Upset plots are useful for visualizing the intersections of sets.
Usage Example:
./getENRICH -c config.json -k
Similar to -k
, this flag generates an upset plot but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -l
This flag generates a tree plot for pathways significant based on the p-value. Tree plots help in visualizing hierarchical relationships.
Usage Example:
./getENRICH -c config.json -m
Similar to -m
, this flag generates a tree plot but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -n
This flag generates a PubMed trends plot for pathways significant based on the p-value. This plot shows the publication trends over time for the significant pathways.
Usage Example:
./getENRICH -c config.json -o
Similar to -o
, this flag generates a PubMed trends plot but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -p
This flag generates KEGG pathway diagrams for pathways significant based on the p-value. KEGG pathway diagrams are useful for understanding the biological pathways involved.
Usage Example:
./getENRICH -c config.json -v
Similar to -v
, this flag generates KEGG pathway diagrams but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -a
Similar to -v
, this flag generates KEGG pathway diagrams but for pathways significant based on the adjusted p-value.
Usage Example:
./getENRICH -c config.json -r hsa
./getENRICH -c config.json -r mmu
./getENRICH -c config.json -r ko