NumPy Reading List
This list is comprised of sources i have actually read/studied. I do not recommend all of them, but i’ve indicated which ones i do recommend within the annotations provided after the citation for each source. The few that i refer to most often.
Books
Stephen Marsland, Machine Learning: An Algorithmic Perspective
- Superb. All of the algorithms in the book (except for SVM) are implemented in code, and every implementation is in NumPy. This code is available free at Prof. Marsden’s Site for the Book. Awesome NumPy tutorial. (The book also includes a brief NumPy tutorial in an appendix.)
Hans Peter Langtangen, Python Scripting for Computational Science
- The online version of this book is avaialable for free download at the Autor’s Site; the source code is likewise made available free of charge.
Hans Peter Langtangen, A Primer on Scientific Programming with Python
- the only source mentioned here that i have not read; included it just because there is another book in my List by the same author on the same subject.
Perry Greenfield and Robert Jedrzejewski, Using Python for Interactive Data Analysis
- Available for free download; the intended audience is graduate students in astronomy or astrophysics, but that limits this text’s usefulness to non-astronomers only slightly.
Jaan Kiusalaas, Numerical Methods in Engineering with Python
-
available for free download, by the way, on [Google Code]
-
All three of the previous books (i haven’t read A Primer on Scientific Computing) are significantly better than Kiusalaas' Numerical Methods in Engineering with Python, particularly if the axis of comparison is value as a NumPy learning resource–many of the examples in Kiusalaas are not even implemented in NumPy (but clearly could be); morevoer, the explanation that accompanies the implementations in the first three books i mentioned in each case, is a discernible level above what’s in the Kiusalaas book.
Smaller Sources
NumPy MedKit by Stefan van der Walt
- presentation (slides) given at a Python conference (at least) a few years ago–brief, but very good
Recipes
The ActiveState Python Cookbook
- At least a few excellent recipes implementing key algorithms in NumPy, e.g.,. a comparison of various distance matrix implementations in NumPy
Single-Subject Tutorials
- An excellent and short tutorial (that still includes a practical example) on Broadcasting in NumPy, which is one of the five or six most important topics in NumPy.
Albert Yeung, Matrix Factorisation: a Simple Tutorial and Implementation in Python
Desktop References
- The Tentative NumPy Tutorial is excellent--the emphasis is on NumPy’s multiple indexing techniques, which is in many ways the crux of NumPy.
- NumPy Example List is just a list of 400+ NumPy functions listed alphabetically, annotated with at least one short code example (usually several) taken from the function’s doc strings. This is an_excellent_* source to keep open while coding.
- the same material as in the source just above except aggregated by category
- Most of these 50 recipes are directed to particular techniques in a particular technique used in a given domain (e.g., signal processing) though a few are much more general, including the excellent tutorials on Building Arrays and Indexing (the first two recipes in the Cookbook)
2down vote
I recommend Guide to NumPy
2down vote
Numerical Methods in Engineering with Python Jaan Kiusalaas. This book describes how to use Python and NumPy to solve real problems.
Python Scientific lecture notes Emmanuelle Gouillart, Gaël Varoquaux
MATLAB commands in numerical Python (NumPy) Vidar Bronken Gundersen
The ‘Python Scientific Lecture Notes’ have now an official home on the net: scipy-lectures.github.com where they will get updates as we teach more courses using them. – Gael Varoquaux Jan 12 ‘11 at 14:09
I also wrote a very short tutorial named NumPy: Lock ‘n Load to get people started.