Where to start learning about topological data analysis? I was wondering if anyone could help me out with finding a nice introductory text for topological data analysis (I'm speaking as somebody who has two semesters of experience with topology, and much less experience with data analysis.) Are there any self-contained elementary resources on the subject? And if not, is there a sort of road map for the subject (i.e. a generally-agreed-upon sequence of topics that I should study)?
I saw a nice overview here: http://www.cs.dartmouth.edu/~afra/papers/ams12/tda.pdf, and that piqued my interest in the topic. Thanks in advance for the help!
 A: Afra's paper is a really good introduction. He has also written a really accessible book which is accessible here:
http://www.amazon.com/Computing-Cambridge-Monographs-Computational-Mathematics/dp/0521136091/ref=sr_1_1?ie=UTF8&qid=1401393274&sr=8-1&keywords=afra+zomorodian
I would recommend playing with some software. Here's some:
http://comptop.stanford.edu/programs/
A: At the time of writing, I'm not aware of any books that are very specifically about topological data analysis (TDA), apart from the collected papers in Topological Methods in Data Analysis and Visualization and its two sequels, but there are a handful on computational topology that contain valuable background and details for TDA. Gurjeet has already mentioned Afra Zomorodian's Topology for Computing. Others include:

*

*Computational Topology by Edelsbrunner & Harer

*A Short Course in Computational Geometry and Topology by Edelsbrunner

*Computational
Homology
by Kaczynski et al

At the moment, knowledge of statistics does not appear to be a prerequisite, although there is some interesting work in that direction at CMU: http://www.stat.cmu.edu/topstat/. It is helpful to be comfortable with multivariable calculus, linear algebra, introductory abstract algebra (especially group theory) and basic point-set topology. Prior acquaintance with algebraic topology and manifolds would be even better. For comparison purposes, it may be interesting to look into clustering algorithms such as $k$-means and hierarchical clustering.
You may want to take a look at Peter Saveliev's Topology Illustrated (which is indeed liberally and helpfully illustrated, so the title is accurate) with its emphasis on homology, and Robert Ghrist's Elementary Applied Topology for a broad-ranging invitation to applied topology. Michael Robinson's Topological Signal Processing could also be of interest.
Update:
The importance of the whole: topological data analysis for the
network neuroscientist by Sizemore, Phillips-Cremins, Ghrist & Bassett is a nice introductory paper for a first look at TDA.
Update in January 2023:
Last year I came across two new books on TDA: Topological Data Analysis with Applications by Carlsson & Vejdemo-Johansson and Computational Topology for Data Analysis by Dey & Wang.
A: I'm also not aware of any whole books on the topic. Only highly technical research articles which are fairly impenetrable as a starting point. In my opinion one of the best ways to learn would be to start trying playing with TDA methods in code and reviewing example uses of TDA in practice.
A few good python libraries exist for TDA:
http://gudhi.gforge.inria.fr/
https://github.com/giotto-ai/giotto-learn
https://github.com/scikit-tda/scikit-tda
You can start reading the tutorials for these tools along with articles about their use:
An overview:
https://towardsdatascience.com/topological-data-analysis-unpacking-the-buzzword-2fab3bb63120 
An intro to gudhi:
https://towardsdatascience.com/a-concrete-application-of-topological-data-analysis-86b89aa27586
Application to DL application:
https://towardsdatascience.com/from-tda-to-dl-d06f234f51d
An application to de-noising feature preparation (disclaimer, I was an author) using giotto-learn:
https://towardsdatascience.com/the-shape-that-survives-the-noise-f0a2a89018c6
and many others on towardsdatascience if you just search with code you can download and play with.
Many of these and similar articles have links to binder hosted jupyter nbs which you can try.
A: All the other answers are great! Focusing more on the implementation of ideas in topological data analysis, I wrote a tutorial on topological data analysis and keep a list of resources on topogical data analysis
The idea is to reproduce the pipeline presented in P. Y. Lum et al., “Extracting insights from the shape of complex data using topology,” Scientific Reports, vol. 3, no. 1, Dec. 2013. using Python.
This pipeline allows to turn a dataset into a graph, preserving connected components, as presented below.

A: Although this is an old question, I'll answer it since new people might find some new references useful. At my University, the professor suggested the book Geometric and Topological Inference as the main source on Topological Data Analysis. Also, here is the link to his course notes.
