$npx skillfedfor your agent

gseapy

Gene Set Enrichment Analysis in Python

Worth itPyPI LibrariesReleased Jul 2026249.9K downloads / moBSD-3-ClausePlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — gseapy-1.3.1-cp310-cp310-macosx_11_0_arm64.whl · gseapy-1.3.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl · gseapy-1.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
v1.3.1 · released 2026-07-26 · Python >=3.9 · 5 runtime deps: numpy, scipy, pandas, matplotlib, requests

Yes. GSEApy is actively maintained, has no known vulnerabilities, carries a permissive BSD-3-Clause license, and fills a genuine need for GSEA functionality within Python workflows. The medium install friction (Rust compilation) is a one-time cost offset by broad wheel availability for modern Python versions (3.10–3.13) and clear fallback instructions. Suitable for bioinformaticians and computational biologists working with genomic data.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python >=3.9.
  • If pip install fails, Rust toolchain must be installed first (curl https://sh.rustup.rs -sSf | sh).
  • Medium install friction due to Rust compilation requirement for versions after 0.11.0.

License · maintenance · safety

BSD-3-Clause (permissive) — BSD-3-Clause permissive license allows commercial and private use with minimal restrictions, requiring only license and copyright notice retention.

last release 2026-07-26 (19 days) · last repo commit 2026-08-05 · 708 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 249,903 downloads/mo, #8,643 on PyPI

Verify before relying

pip install gseapy

import gseapy
import pandas as pd

# Run GSEA with expression data and gene sets
gseapy.gsea(data='expression.txt', gene_sets='gene_sets.gmt', cls='test.cls', outdir='test')

# Or use prerank with fgsea multilevel p-value method
gseapy.prerank(rnk='gsea_data.rnk', gene_sets='gene_sets.gmt', method='multilevel', outdir='test')
  • Whether the Rust compilation requirement applies to all platforms or only specific architectures.
  • Performance characteristics when analyzing large-scale genomic datasets.
  • Compatibility with specific gene set database formats beyond GMT and Enrichr libraries.
Same gist for agents: .md · .json

What it is and what it does

GSEApy is a Python/Rust implementation of gene set enrichment analysis that brings GSEA functionality and Enrichr API access into a Python environment. It supports multiple analysis methods—standard GSEA, prerank (with a faithful Rust port of fgsea's multilevel algorithm for resolving p-values below 1/permutation_num), single-sample GSEA (ssGSEA), and GSVA—making it suitable for RNA-seq, ChIP-seq, and microarray data. The package can work with expression matrices, ranked gene lists, or Enrichr libraries, and produces publication-quality figures via matplotlib.

The package is designed for both interactive Python workflows and command-line batch processing. It accepts standard GSEA file formats (GMT, GCT, RNK, CLS) and can work directly with pandas DataFrames and Series, eliminating the need to switch between Python and desktop GSEA tools. A biomart module also enables gene ID conversion. Runtime dependencies are numpy, scipy, pandas, matplotlib, and requests—all widely used scientific Python libraries.

Use it for

  • Identify significantly enriched biological pathways in RNA-seq differential expression results using prerank with gene rankings.
  • Perform single-sample enrichment scoring across multiple samples to assess pathway activity per sample.
  • Batch process multiple genomic datasets in a snakemake or Python workflow without manual GSEA desktop invocations.
  • Reproduce GSEA desktop results programmatically using the replot module on existing GSEA output directories.
  • Query Enrichr libraries for functional annotation of gene lists via the enrichr module API.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

GSEApy is actively maintained, has no known vulnerabilities, carries a permissive BSD-3-Clause license, and fills a genuine need for GSEA functionality within Python workflows. The medium install friction (Rust compilation) is a one-time cost offset by broad wheel availability for modern Python versions (3.10–3.13) and clear fallback instructions. Suitable for bioinformaticians and computational biologists working with genomic data.

Install

gseapy on PyPI

Before you install

Medium install friction due to Rust compilation requirement for versions after 0.11.0. Wheels are available for Python 3.10–3.13 on macOS, Linux, and Windows, but pip install may require a Rust toolchain if a pre-built wheel is unavailable. Active maintenance with recent release (19 days ago).

Requires Python >=3.9. If pip install fails, Rust toolchain must be installed first (curl https://sh.rustup.rs -sSf | sh).

License in practice

BSD-3-Clause permissive license allows commercial and private use with minimal restrictions, requiring only license and copyright notice retention.

Quickstart

pip install gseapy

import gseapy
import pandas as pd

# Run GSEA with expression data and gene sets
gseapy.gsea(data='expression.txt', gene_sets='gene_sets.gmt', cls='test.cls', outdir='test')

# Or use prerank with fgsea multilevel p-value method
gseapy.prerank(rnk='gsea_data.rnk', gene_sets='gene_sets.gmt', method='multilevel', outdir='test')

Verify before relying

  • Whether the Rust compilation requirement applies to all platforms or only specific architectures.
  • Performance characteristics when analyzing large-scale genomic datasets.
  • Compatibility with specific gene set database formats beyond GMT and Enrichr libraries.

Package facts

LicenseBSD-3-Clause permissive
Python supportSupports the current Python release >=3.9
Install frictionMedium. Platform-specific wheel
Runtime dependencies
5 packages
numpyscipypandasmatplotlibrequests
MaintenanceActively maintained 19 days since the last release
Last repo commit
First released
Downloads249,903 / month, #8,643 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: Science/ResearchOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3Topic :: Scientific/Engineering :: Bio-InformaticsTopic :: Software Development :: Libraries

Evidence: gseapy-1.3.1-cp310-cp310-macosx_11_0_arm64.whl; gseapy-1.3.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; gseapy-1.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; gseapy-1.3.1-cp310-cp310-win32.whl; gseapy-1.3.1-cp310-cp310-win_amd64.whl; gseapy-1.3.1-cp311-cp311-macosx_11_0_arm64.whl; gseapy-1.3.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; gseapy-1.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; gseapy-1.3.1-cp311-cp311-win32.whl; gseapy-1.3.1-cp311-cp311-win_amd64.whl; gseapy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl; gseapy-1.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; gseapy-1.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; gseapy-1.3.1-cp312-cp312-win32.whl; gseapy-1.3.1-cp312-cp312-win_amd64.whl; gseapy-1.3.1-cp313-cp313-macosx_11_0_arm64.whl; gseapy-1.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; gseapy-1.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; gseapy-1.3.1-cp313-cp313-win32.whl; gseapy-1.3.1-cp313-cp313-win_amd64.whl

Tags

Capabilities
gene set enrichment analysis pythonGSEA RNA-seq analysisenrichment analysis bioinformaticsGO enrichment pythongenomic data analysisprerank GSEA toolssGSEA single sample
Topics
bioinformaticsgenomicsenrichment-analysis
PyPI keywords
Gene OntologyGOBiologyEnrichmentBioinformaticsComputational Biology

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “gene set enrichment analysis python”

  • gseapyPerforms gene set enrichment analysis (GSEA) on genomic data using…
  • gprofiler-officialPython interface to g:Profiler toolkit for functional enrichment…
  • pydeseq2PyDESeq2 performs differential expression analysis on bulk RNA-seq…

Give your agent the search over MCP, or paste the wish link into any chat.

More Libraries packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
pluggy Worth it
PyPI · Libraries · released May 2025

Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.

Install it if you're building an extensible application or framework.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
python-dateutil Worth it
PyPI · Libraries · released Mar 2024

Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.

Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.

Apache-2.0pure Python
1.2Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.

MITpure Python
1.2Bdownloads / mo
pytest Worth it
PyPI · Libraries · released Jun 2026

pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.

MITpure Python · 3.10+
1.1Bdownloads / mo

See also gprofiler-official · gtfparse · deepbiop · pydeseq2 · pyranges · scanpy · biopython · biotite · pyensembl · cobra