elpigraph

Python implementation of the ElPiGraph algorithm with cpu and gpu support


Keywords
machine_learning, graphs, dimension_reduction, single_cell
License
GPL-3.0
Install
pip install elpigraph==0.1.0

Documentation

Documentation Status GitHub license DOI:10.3390/e22030296

Description

This package provides a Python implementation of the ElPiGraph algorithm with cpu and gpu support. Usage is explained in the documentation and a self-contained description of the algorithm is available here or in the paper

It replicates the R implementation, coded by Luca Albergante and should return exactly the same results. Please open an issue if you do notice different output. Differences between the two versions are detailed in differences.md. This package extends initial work by Louis Faure and Alexis Martin.

A native MATLAB implementation of the algorithm (coded by Andrei Zinovyev and Evgeny Mirkes) is also available

Requirements

Requirements are listed in requirements.txt. In addition, to enable gpu support cupy is needed: https://docs-cupy.chainer.org/en/stable/install.html

Installation

git clone https://github.com/j-bac/elpigraph-python.git
cd elpigraph
pip install .

or

pip install elpigraph-python

Citation

When using this package, please cite our paper: Albergante, L. et al . Robust and Scalable Learning of Complex Intrinsic Dataset Geometry via ElPiGraph (2020)