Skip to main content

A Lean Persistent Homology Library for Python

Project description

PyPI version Build Status Build status codecov License: MIT

Ripser.py

Ripser.py is a lean persistent homology package for Python. Building on the blazing fast C++ Ripser package as the core computational engine, Ripser.py provides an intuitive interface for

  • computing persistence cohomology of sparse and dense data sets,
  • visualizing persistence diagrams,
  • computing lowerstar filtrations on images, and
  • computing representative cochains.

Additionally, through extensive testing and continuous integration, Ripser.py is easy to install on Mac, Linux, and Windows platforms.

To aid your use of the package, we've put together a large set of notebooks that demonstrate many of the features available. Complete documentation about the package can be found at ripser.scikit-tda.org.

If you're looking for the original C++ library, you can find it at Ripser/ripser.

Setup

Ripser.py is available on all major platforms. All that is required is that you install the standard Python numerical computing libraries and Cython.

Dependencies:

  • Cython
  • numpy
  • scipy
  • matplotlib
  • scikit-learn

Cython should be the only library required before installation. To install, type the following commands into your environment:

pip install cython
pip install ripser

If you are having trouble installing, please let us know!

Usage

The interface is as simple as can be:

import numpy as np
from ripser import ripser, plot_dgms

data = np.random.random((100,2))
diagrams = ripser(data)['dgms']
plot_dgms(diagrams)

We also supply a Scikit-learn transformer style object if you would prefer to use that:

import numpy as np
from ripser import Rips

rips = Rips()
data = np.random.random((100,2))
diagrams = rips.fit_transform(data)
rips.plot(diagrams)
Ripser.py output persistence diagram

License

Ripser.py is available under an MIT license! The core C++ code is derived from Ripser, which is also available under an MIT license and copyright to Ulrich Baeur. The modifications, Python code, and documentation is copyright to Christopher Tralie and Nathaniel Saul.

Contributions

We welcome all kinds of contributions! Please get in touch if you would like to help out. Everything from code to notebooks to examples and documentation are all equally valuable so please don't feel you can't contribute. To contribute please fork the project make your changes and submit a pull request. We will do our best to work through any issues with you and get your code merged into the main branch.

If you found a bug, have questions, or are just having trouble with the library, please open an issue in our issue tracker and we'll try to help resolve the concern.

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

ripser-0.3.0.tar.gz (71.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ripser-0.3.0-py3.6-win-amd64.egg (65.4 kB view details)

Uploaded Egg

ripser-0.3.0-py3.6-win32.egg (70.4 kB view details)

Uploaded Egg

ripser-0.3.0-py3.5-win-amd64.egg (65.6 kB view details)

Uploaded Egg

ripser-0.3.0-py3.5-win32.egg (70.5 kB view details)

Uploaded Egg

ripser-0.3.0-cp36-cp36m-win_amd64.whl (57.0 kB view details)

Uploaded CPython 3.6mWindows x86-64

ripser-0.3.0-cp36-cp36m-win32.whl (62.0 kB view details)

Uploaded CPython 3.6mWindows x86

ripser-0.3.0-cp36-cp36m-macosx_10_12_x86_64.whl (63.9 kB view details)

Uploaded CPython 3.6mmacOS 10.12+ x86-64

ripser-0.3.0-cp35-cp35m-win_amd64.whl (57.0 kB view details)

Uploaded CPython 3.5mWindows x86-64

ripser-0.3.0-cp35-cp35m-win32.whl (61.9 kB view details)

Uploaded CPython 3.5mWindows x86

File details

Details for the file ripser-0.3.0.tar.gz.

File metadata

  • Download URL: ripser-0.3.0.tar.gz
  • Upload date:
  • Size: 71.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0.tar.gz
Algorithm Hash digest
SHA256 cf1e1f2e67262e9317a17421c9e35bde1f0b4c2489bc7943a3a74e27b58566ec
MD5 164e37d4dff7c7ae01cac6666cc5f8ce
BLAKE2b-256 2059302dab2f1be85f32c57bdf8d4595d0437db76131b13504025abfc8373b03

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-py3.6-win-amd64.egg.

File metadata

  • Download URL: ripser-0.3.0-py3.6-win-amd64.egg
  • Upload date:
  • Size: 65.4 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-py3.6-win-amd64.egg
Algorithm Hash digest
SHA256 8f043a11f0738b06437db951d8df63f7dbced29c58f90fb69b743a742967aee5
MD5 b7a6363659672c9161bb33cd52cfca3a
BLAKE2b-256 ba994f5887b48d6ef5c772faebcd390f76e6b8371d220b1959aef7bc1cc16f13

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-py3.6-win32.egg.

File metadata

  • Download URL: ripser-0.3.0-py3.6-win32.egg
  • Upload date:
  • Size: 70.4 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-py3.6-win32.egg
Algorithm Hash digest
SHA256 7f1f0974e852cc2d96ba78bbab4620c21b577895eb1c26df366e4fe8d7e36d15
MD5 62104445c9061557094e799025559acb
BLAKE2b-256 7ebb5fbccd0de1450462e5e8af320506299ce890b3d9b27ea7d3ed5450631cb2

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-py3.5-win-amd64.egg.

File metadata

  • Download URL: ripser-0.3.0-py3.5-win-amd64.egg
  • Upload date:
  • Size: 65.6 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-py3.5-win-amd64.egg
Algorithm Hash digest
SHA256 d9f778a381ffd9c1c87f4be200332ef4378a23f5f31edc438ad234bc82f72692
MD5 4a1c06935a25237dbb2dd825358c4adc
BLAKE2b-256 a58a2cd0a7327e51880191a2606be64c8868339b69c4e95c304c5ae5f03a94b9

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-py3.5-win32.egg.

File metadata

  • Download URL: ripser-0.3.0-py3.5-win32.egg
  • Upload date:
  • Size: 70.5 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-py3.5-win32.egg
Algorithm Hash digest
SHA256 9854ba18ab5974768270a1b0eef01222582e9e81a67b01199ad9a8dd281a4109
MD5 69be0b5dd08f0405f72c0ad4799d04b6
BLAKE2b-256 d6d34e8ead642806a9092bbfae2a623ebc7ba0a43dec80ac2546d70409261c28

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: ripser-0.3.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 57.0 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 0be734a2f30d74a119f44e5e2325ed3428b0a459dd18b11727d6550ae4248fcb
MD5 0146a30cdb597263af80502cb5c4a739
BLAKE2b-256 2a6e4563cb316c18b742214199d5f11d911a29a313c0f7d89a23e36a838f45ae

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: ripser-0.3.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 62.0 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 81696d4f323defbd32c5fa4a43710475f1de01245d76acde0b2b1e27b3c44bed
MD5 f2ca1b3e4355ef7328ef51b883d83bed
BLAKE2b-256 f5bc51d060ce20f65ae13138d2c044bfbb571760bd55b6cc9d2e94f6a5de39be

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-cp36-cp36m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: ripser-0.3.0-cp36-cp36m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 63.9 kB
  • Tags: CPython 3.6m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-cp36-cp36m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d7c1bf3cf231bd8b11fd229aa0c0d5e2acfa1bdd4e9b4da39c777f6f6213dc50
MD5 95f7dd4ea6afa3616f97b357a9f43b14
BLAKE2b-256 59fe8be14bf7af5f0e7a6a2748aa57e3cacbf19c3fceb5029e6d4e8fda2831cb

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: ripser-0.3.0-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 57.0 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 431b9b2395739deb0ef6034f0353736a6f97da249a8782b6324ac53baa23a233
MD5 a817d7a14ab1fc556f6241661beeb9ba
BLAKE2b-256 92bf6297f585714c24d294979f4eb9318f5cc7226a0f4ab246b0008c989aa890

See more details on using hashes here.

File details

Details for the file ripser-0.3.0-cp35-cp35m-win32.whl.

File metadata

  • Download URL: ripser-0.3.0-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 61.9 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.4

File hashes

Hashes for ripser-0.3.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 2fe857097783bd46bccc3966a23ce4d937425325e9443dd07a0bf3755488cc42
MD5 7d8947949ca47c976b2007e949a6d27c
BLAKE2b-256 1085d113a85f96992740ad47d3570f6a021e900a277e18db1dd4794bd58e0332

See more details on using hashes here.

Supported by

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