Skip to content

FatemehTarashi/awesome-tda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 

Repository files navigation

Awesome TDA Awesome

A curated list of Topological Data Analysis (TDA) tools and resources.

If you know of any other tools or resources, read the Contribution Guidelines and feel free to fork/PR or open a new issue.

Contents

Theory

Algorithms

Books

Articles

Courses

Tutorials and Learning Resources

Tools

  • Hera - Software for bottleneck and Wasserstein distances between persistence diagrams.
  • HomCloud - Persistent homology software with a Python interface, used especially for scientific and materials-data analysis.
  • RIVET - Visualization and analysis of two-parameter persistent homology with a Python API.
  • TdaToolbox - Tools that may be applied to data science in general.

Frameworks and Libs

C++

  • Ctl - C++11 library for building neighborhood graphs and cellular complexes, computing persistent homology over finite fields, and running parallel algorithms for homology. Can be used with C++, Python, MATLAB, and R.
  • Cubical Ripser - Software for computing persistent homology of cubical complexes, especially useful for image and volume data.
  • Dionysus - Computing persistent (co)homology, including persistent cohomology, vineyards, and zigzag persistent homology algorithms.
  • DIPHA - Distributed persistent homology computation with MPI support.
  • Flagser - Computes homology of directed flag complexes.
  • PHAT - Persistent Homology Algorithm Toolbox.
  • Topology ToolKit (TTK) - Efficient and generic topological data analysis and visualization.

Go

  • TDA - Some methods are provided for gridded data, such as images.

Haskell

Java

  • JavaPlex - The JavaPlex library implements persistent homology and related techniques. It is designed for ease of use from MATLAB and Java-based systems.

Julia

  • Eirene.jl - For homological persistence.
  • JuliaTDA - Organization collecting Julia packages for topological data analysis.
  • PersistenceDiagrams.jl - Types and utilities for working with persistence diagrams in Julia.
  • Ripserer.jl - Flexible and efficient pure-Julia implementation of the Ripser algorithm for computing persistent homology.
  • TDA.jl - Provides persistence diagrams and barcodes, nerve, and Mapper tools for topological data analysis.
  • TDAmapper.jl - Mapper algorithm tools for Julia.
  • ToMATo.jl - ToMATo clustering in Julia.

Matlab

  • Clique Top - Topological analysis of symmetric matrices.

Python

  • GDA Public - Several fundamental tools by Geometric Data Analytics Inc. geomdata.
  • giotto-ph - High-performance persistent homology backend for Vietoris-Rips filtrations.
  • Giotto-TDA - A scikit-learn-compatible library for end-to-end topological machine learning, including Mapper, persistent homology, vectorization methods for persistence diagrams, and preprocessing components for time series, graphs, images, and point clouds (paper).
  • GUDHI - Geometry Understanding in Higher Dimensions, with a Python interface.
  • KeplerMapper - TDA Mapper algorithm for visualization of high-dimensional data. It can use Scikit-Learn API-compatible clustering and scaling algorithms.
  • Knotter - Implementation of the Mapper algorithm for TDA.
  • Mapper Implementation - Topological data analysis for high-dimensional dataset exploration.
  • MoguTDA - Numerical calculation of algebraic topology for TDA, including simplicial complexes and estimates of homology and Betti numbers.
  • OpenTDA
  • Persim - Tools for analyzing persistence diagrams.
  • pyflagser - Python API for Flagser, computing homology of directed flag complexes.
  • Python Mapper - Mapper algorithm implementation with a graphical user interface.
  • Qsv - Data structure visualizer.
  • quaternion-monoid-algebra - Compositional monoid algebra over quaternion state packets, with machine-checked proofs that composing a configuration with a common element preserves persistence diagrams exactly; validated on TUM RGB-D and EuRoC MAV pose streams.
  • Ripser.py - Lean persistent homology package.
  • Scikit-TDA - Python ecosystem for topological data analysis.
  • ScTDA - Tools for preprocessing, analysis, and exploration of single-cell RNA-seq data based on topological representations.
  • TMAP - Population-scale microbiome data analysis.
  • TopoDrift - Open benchmark for topological drift detection: evaluates persistent homology against KS/MMD/PSI on 7 regime types invisible to classical statistics.
  • torch_topological - Topological machine learning tools for PyTorch.
  • torch-tda - Automatic differentiation utilities for topological data analysis.
  • torchph - PyTorch extensions for persistent homology and differentiable persistent homology computations.
  • TopologyLayer - PyTorch-compatible persistent homology layers and featurization tools.

R

  • ggtda - ggplot2 layers for visualizing constructions and statistics from topological data analysis.
  • phutil - Utilities and common data structures for persistence data analysis in R.
  • ripserr - R interface to Ripser and Cubical Ripser for persistent homology of point-cloud, image, and volume data.
  • TDA - Tools for statistical analysis of persistent homology and density clustering.
  • TDAmapper - R package for using discrete Morse theory to analyze a dataset with the Mapper algorithm described in Singh, Mémoli, and Carlsson (2007).
  • TDAstats - Computing persistent homology.
  • TDAvec - Vector summaries of persistence diagrams for use in statistical and machine-learning workflows.
  • tdaverse - Collection of R packages for topological data analysis.

Spark

  • Spark Mapper - Estimating a lower-dimensional simplicial complex from a dataset.
  • Spark TDA - Scalable topological data analysis package.

Useful Links

Bioinformatics

Brain Network Analysis

Computing Homology

Computer Vision

Data Professionals

Deep Learning

Graphs and Networks

Machine Learning

Persistent Homology

Use Python

Use R

Theory and Applications of TDA

Event

2027

2026

2025

2024

About

A curated list of topological data analysis (TDA) resources and links.

Topics

Resources

License

Contributing

Stars

221 stars

Watchers

11 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors