Skip to main content

Toolbox for Machine Learning using Topological Data Analysis.

Project description

Azure Azure-cov Azure-test binder


giotto-learn is a high performance topological machine learning toolbox in Python built on top of scikit-learn and is distributed under the Apache 2.0 license. It is part of the Giotto open-source project.


Project genesis

giotto-learn is the result of a collaborative effort between L2F SA, the Laboratory for Topology and Neuroscience at EPFL, and the Institute of Reconfigurable & Embedded Digital Systems (REDS) of HEIG-VD.



giotto-learn requires:

  • Python (>= 3.5)

  • scikit-learn (>= 0.21.3)

  • NumPy (>= 1.17.0)

  • SciPy (>= 0.17.0)

  • joblib (>= 0.11)

  • python-igraph (>= 0.7.1.post6)

  • plotly (>= 4.4.1)

  • matplotlib (>= 3.1.2)

To run the examples, jupyter is required.

User installation

If you already have a working installation of numpy and scipy, the easiest way to install giotto-learn is using pip

pip install -U giotto-learn



We welcome new contributors of all experience levels. The Giotto community goals are to be helpful, welcoming, and effective. To learn more about making a contribution to giotto-learn, please see the CONTRIBUTING.rst file.

Developer installation

C++ dependencies:
  • C++14 compatible compiler

  • CMake >= 3.9

  • Boost >= 1.56

The CMake and Boost dependencies can be installed in using Anaconda as follows:

conda install -c anaconda cmake
conda install -c anaconda boost
Source code

You can check the latest sources with the command:

git clone
To install:
cd giotto-learn
pip install -e .

From there any change in the library files will be immediately available on your machine.


After installation, you can launch the test suite from outside the source directory:

pytest giotto


See the RELEASE.rst file for a history of notable changes to giotto-learn.


Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

giotto-learn-nightly-20191220.25.tar.gz (91.7 kB view hashes)

Uploaded Source

Built Distributions

giotto_learn_nightly-20191220.25-cp37-cp37m-win_amd64.whl (666.2 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

giotto_learn_nightly-20191220.25-cp37-cp37m-manylinux2010_x86_64.whl (890.7 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

giotto_learn_nightly-20191220.25-cp37-cp37m-macosx_10_13_x86_64.whl (629.0 kB view hashes)

Uploaded CPython 3.7m macOS 10.13+ x86-64

giotto_learn_nightly-20191220.25-cp36-cp36m-win_amd64.whl (666.2 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

giotto_learn_nightly-20191220.25-cp36-cp36m-manylinux2010_x86_64.whl (890.5 kB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64

giotto_learn_nightly-20191220.25-cp36-cp36m-macosx_10_13_x86_64.whl (628.7 kB view hashes)

Uploaded CPython 3.6m macOS 10.13+ x86-64

giotto_learn_nightly-20191220.25-cp35-cp35m-win_amd64.whl (666.2 kB view hashes)

Uploaded CPython 3.5m Windows x86-64

giotto_learn_nightly-20191220.25-cp35-cp35m-manylinux2010_x86_64.whl (890.5 kB view hashes)

Uploaded CPython 3.5m manylinux: glibc 2.12+ x86-64

giotto_learn_nightly-20191220.25-cp35-cp35m-macosx_10_13_x86_64.whl (628.7 kB view hashes)

Uploaded CPython 3.5m macOS 10.13+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page