Welcome to GSEAPY’s documentation!

GSEAPY: Gene Set Enrichment Analysis in Python.

https://badge.fury.io/py/gseapy.svg https://img.shields.io/conda/vn/bioconda/GSEApy.svg?style=plastic Action Status https://travis-ci.org/zqfang/GSEApy.svg?branch=master Documentation Status https://img.shields.io/badge/license-MIT-blue.svg PyPI - Python Versionhttps://zenodo.org/badge/DOI/10.5281/zenodo.3748085.svg

Release notes : https://github.com/zqfang/GSEApy/releases

GSEAPY is a python wrapper for GSEA and Enrichr.

GSEAPY has six subcommands: gsea, prerank, ssgsea, replot enrichr, biomart.

1. The gsea module produces GSEA results. The input requries a txt file(FPKM, Expected Counts, TPM, et.al), a cls file, and gene_sets file in gmt format.

2. The prerank module produces Prerank tool results. The input expects a pre-ranked gene list dataset with correlation values, which in .rnk format, and gene_sets file in gmt format. prerank module is an API to GSEA pre-rank tools.

3. The ssgsea module performs single sample GSEA(ssGSEA) analysis. The input expects a gene list with expression values(same with .rnk file, and gene_sets file in gmt format. ssGSEA enrichment score for the gene set as described by D. Barbie et al 2009.

4. The replot module reproduces GSEA desktop version results. The only input for GSEAPY is the location to GSEA Desktop output results.

5. The enrichr module enables you to perform gene set enrichment analysis using Enrichr API. Enrichr is open source and freely available online at: http://amp.pharm.mssm.edu/Enrichr . It runs very fast and generates results in txt format.

  1. The biomart module helps you convert gene ids using BioMart API.

GSEAPY could be used for RNA-seq, ChIP-seq, Microarry data. It’s used for convenient GO enrichments and produce publishable quality figures in python.

The full GSEA is far too extensive to describe here; see GSEA documentation for more information. All files’ formats for GSEApy are identical to GSEA desktop version.

If you use gseapy, you should cite the original ``GSEA`` and ``Enrichr`` paper.


I would like to use Pandas to explore my data, but I did not find a convenient tool to do gene set enrichment analysis in python. So, here are my reasons:

  • Ability to run inside python interactive console without having to switch to R!!!
  • User friendly for both wet and dry lab users.
  • Produce or reproduce publishable figures.
  • Perform batch jobs easy.
  • Easy to use in bash shell or your data analysis workflow, e.g. snakemake.

Indices and tables