This is a course I've started teaching. Topics covered include k-means, hierarchical clustering, t-SNE, PCA and NMF. Included are lots of exercises (as Jupyter notebooks) where these techniques can be practised, almost always on real-world data. I hope you like it!