PyTDA - Topological Data Analysis (TDA) for Python
Introduction
PyTDA contains Python codes that demonstrate the numerical calculation of algebraic topology in an application to topological data analysis (TDA).
Topological data analysis aims at studying the shapes of the data, and draw some insights from them. A lot of machine learning algorithms deal with distances, which are extremely useful, but they miss the information the data may carry from their geometry.
Demo Codes and Blog Entries
Codes in this repository are demo codes for a few entries of my blog, Everything about Data Analytics, and the corresponding entries are:
- Starting the Journey of Topological Data Analysis (TDA) (August 3, 2015)
- Constructing Connectivities (September 14, 2015)
- Homology and Betti Numbers (November 3, 2015)
- Topology in Physics and Computing (November 10, 2015)
- Persistence (December 20, 2015)
Wolfram Demonstration
Richard Hennigan put a nice Wolfram Demonstration online explaining what the simplicial complexes are, and how homologies are defined:
Other TDA Packages
It is recommended that for real application, you should use the following packages for efficiency, because my codes serve the pedagogical purpose only.
C++
Python
R
References
- Afra J. Zomorodian. Topology for Computing (New York, NY: Cambridge University Press, 2009). [Amazon]
- Afra J. Zomorodian. "Topological Data Analysis," Proceedings of Symposia in Applied Mathematics (2011). [link]
- Afra Zomorodian, Gunnar Carlsson, “Computing Persistent Homology,” Discrete Comput. Geom. 33, 249-274 (2005). [pdf]
- Gunnar Carlsson, “Topology and Data”, Bull. Amer. Math. Soc. 46, 255-308 (2009). [link]
- P. Y. Lum, G. Singh, A. Lehman, T. Ishkanov, M. Vejdemo-Johansson, M. Alagappan, J. Carlsson, G. Carlsson, “Extracting insights from the shape of complex data using topology”, Sci. Rep. 3, 1236 (2013). [link]
- Robert Ghrist, “Barcodes: The persistent topology of data,” Bull. Amer. Math. Soc. 45, 1-15 (2008). [pdf]