The purpose of this repo is to provide examples of code and applications for the TDA Crash course at Complex Networks 2021. In particular, these are intended for participants to be able to try and follow along during the tutorial.
The main repositories from which I built this tutorial are:
-
for TDA:
- AMLD2019 TDA crash course: https://github.com/lordgrilo/AML-days-TDA-tutorial
- recent Giotto challenge: https://github.com/lordgrilo/gtda-challenge-2020
-
for higher-order dynamical processes:
- simplagion: https://github.com/iaciac/simplagion
- higher-order naming game: https://github.com/iaciac/higher-order-NG
- higher-order Sakaguchi-Kuramoto: https://github.com/arnaudon/simplicial-kuramoto
The contents of this repository are meant to be sufficient for the crash course --and should run without issues :)--. However, I do recommend going to the original repositories in case any issue arises or in case you want for further work.
Since we will be mixing quite a bit of different tools, there will be a number of packages required. The list below should be complete, but in case we will be able to install any further requirement as we go along:
General packages:
- matplotlib
- jupyter
- networkx
- numpy
- scipy
TDA:
- umap
- pillow
- tsfresh
- ripser
- persim
- scikit-tda
- kmapper
- giotto-tda
- pandas
- scikit-learn
- dionysus
- Cython
Reconstruction:
- python3-graph-tool
Additional ones:
- plotly
- openml
- plotly