Overview
auto-Enrich is a Bash script-based pipeline that integrademtes multiple widely used enrichment analysis tools into a single, modular framework. It is designed to automate enrichment analysis workflows and standardize results. Packaged as a Docker image, auto-Enrich allows users to perform comprehensive enrichment analysis with three popular tools: g:Profiler, PANTHER, and GSEA (Gene Set Enrichment Analysis).
The pipeline includes pre-processing, enrichment analysis, and post-processing steps, facilitating end-to-end workflows. Its seven core modules can be run independently or combined, providing flexibility depending on analytical needs. Detailed descriptions of each module are provided in Modules section.
The auto-Enrich pipeline runs in any computing environment with Docker installed. It is distributed as part of the pegi3s Bioinformatics Docker Images Project, and the corresponding image is available at: https://hub.docker.com/r/pegi3s/auto-enrich. That page also provides a short guide for installing Docker on both Linux and Windows systems. Since Docker is widely adopted, additional installation and usage instructions are readily available in the official Docker documentation.
The pipeline supports two primary input data types:
- Gene list files
Text files with one Gene ID per line. Used for Over-Representation Analysis by the
g:ProfilerandPANTHERmodules.
- Gene expression matrix
A matrix of gene expression values. Used for GSEA (Classic or Preranked).
At a minimum, the pipeline requires two files:
- Pipeline configuration file config
Specify modules, input file, target species, annotation sources, and post-processing settings.
- Input file
At least one gene list or gene expression matrix.
- If running GSEA
At least one Gene Set from the Molecular Signature Database Collections must be provided inside a folder named /gene_sets.
This pipeline is designed to simplify and standardize the following steps:
Extract differentially expressed genes from an expression matrix
Map input Genes information (includes Gene ID, UniProtKB IDs, Gene Symbol and Description)
Run
g:Profilerenrichment analysis, using theg:GOSttool.Run
PANTHERanalysis statistical overrepresentation test.Prepare inputs for
GSEA(Classic and Preranked)Run Gene Set Enrichment Analysis
GSEAFilter enrichment results (to remove non-relevant terms from analysis outputs)
The pipeline runs in any environment with Docker installed. After preparing input and configuration files, execute auto-Enrich with:
docker run --rm -v /your/working/directory:/data pegi3s/auto_enrich
A mounted directory structure, where the user should change your/working/directory to their data directory.
Overview of the auto-Enrich pipeline.
Module Index Reference
Each module in auto-Enrich is referenced by a numbered index defined
in the modules variable of the pipeline configuration file (config).
This numbering ensures that modules can be easily called in sequence or
selected individually. Detailed explanations of each module are provided
in later sections.
Module Index Reference Table
Module # |
Name |
Description |
|---|---|---|
1 |
Identify and generate lists of differentially expressed genes out of the expression data |
|
2 |
Maps gene identifiers to standard formats (UniProtKB; Gene Symbol and Description) |
|
3 |
Run enrichment analysis with g:Profiler (g:GOSt) |
|
4 |
Run enrichment analysis with PANTHER Overrepresentation test |
|
5 |
Create .rnk, .gct and .cls files from expression data for GSEA |
|
6 |
Execute Gene Set Enrichment Analysis |
|
7 |
Filter and intersect enriched terms from tools EA outputs |
Important
To use these modules, you must configure the required parameters. Please see the configuration section for details.