Skip to main content

Topology data analysis routines

Project description

topologyx

Topology Data Analysis Routines

Report Bug

Table of Contents

  1. About TopologyX
  2. Built With
  3. Get Started

About TopologyX

Topological Data Analysis, also abbreviated TDA, is a recent field that emerged from various works in applied topology and computational geometry. It aims at providing well-founded mathematical, statistical, and algorithmic methods to exploit the topological and underlying geometric structures in data. My aim is to develop some tools in this repository that may be applied to data science in general. Some of them have already proven useful for classification tasks.

Read more about applied TDA:

Built With

Get Started

pip install topologyx
# or with uv
uv add topologyx

How To Use

from topologyx.filtrations import Filtration

filtration = Filtration(data, use_alpha=False)
filtration.build_persistence_diagram(filtration_type=FiltrationType.SIMPLE, dimension=0)
from topologyx.clustering import TomatoClustering

tomato = TomatoClustering(data)
_ = tomato.estimate_clusters(visualize=True)
_ = tomato.fit_predict(n_clusters=3, visualize=True)

Local Installation

git clone https://github.com/merylldindin/topologyx
# install dependencies
make setup

Using Examples

Examples are provided as Marimo notebooks - reactive Python notebooks that are git-friendly (pure .py files). Launch the example server with:

make marimo

Filtration of a 3D shape: examples/filtrations.py demonstrates how to handle three-dimensional shapes using height as a filtration function, showing persistence diagrams, Betti curves, and persistence landscapes.

ToMaTo clustering: examples/clustering.py showcases TDA's strength for clustering - detecting centroids and recording relationships between points across various data distributions.

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

topologyx-1.2.0.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

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

topologyx-1.2.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file topologyx-1.2.0.tar.gz.

File metadata

  • Download URL: topologyx-1.2.0.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for topologyx-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8a13345618c3bd882597365bec7855b77465cf9fcc31ca99c4b3721d0b905fa8
MD5 bacdc0de81328423060c6f575fd27b03
BLAKE2b-256 d720e94fc1a6b5cf26967cc5a3dc8d81994bed1afdb2ce130be57ec348164787

See more details on using hashes here.

File details

Details for the file topologyx-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: topologyx-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for topologyx-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c8292771c26195d760f7e364a9c4ca24a94d6dfee9329a538d4b6919d6d2a236
MD5 eddcccac75339e44bb5159b368471f7e
BLAKE2b-256 e64c85d690b4eb7c2f506c412650660c6e29e97d386c7ff73df3d914142858dd

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