For the official NumPy documentation visit numpy.org/doc/stable.
Below is a curated collection of educational resources, both for self-learning and teaching others, developed by NumPy contributors and vetted by the community.
Beginners#
There’s a ton of information about NumPy out there. If you are just starting, we’d strongly recommend the following:
Tutorials
- NumPy Quickstart Tutorial
- NumPy Tutorials A collection of tutorials and educational materials in the format of Jupyter Notebooks developed and maintained by the NumPy Documentation team. To submit your own content, visit the numpy-tutorials repository on GitHub.
- NumPy Illustrated: The Visual Guide to NumPy by Lev Maximov
- Scientific Python Lectures Besides covering NumPy, these lectures offer a broader introduction to the scientific Python ecosystem.
- NumPy: the absolute basics for beginners
- NumPy tutorial by Nicolas Rougier
- Stanford CS231 by Justin Johnson
- NumPy User Guide
Books
- Guide to NumPy by Travis E. Oliphant This is a free version 1 from 2006. For the latest copy (2015) see here.
- From Python to NumPy by Nicolas P. Rougier
- Elegant SciPy by Juan Nunez-Iglesias, Stefan van der Walt, and Harriet Dashnow
You may also want to check out the Goodreads list on the subject of “Python+SciPy.” Most books there are about the “SciPy ecosystem,” which has NumPy at its core.
Videos
- Introduction to Numerical Computing with NumPy by Alex Chabot-Leclerc
Advanced#
Try these advanced resources for a better understanding of NumPy concepts like advanced indexing, splitting, stacking, linear algebra, and more.
Tutorials
- 100 NumPy Exercises by Nicolas P. Rougier
- An Introduction to NumPy and Scipy by M. Scott Shell
- Numpy Medkits by Stéfan van der Walt
- NumPy Tutorials A collection of tutorials and educational materials in the format of Jupyter Notebooks developed and maintained by the NumPy Documentation team. To submit your own content, visit the numpy-tutorials repository on GitHub.
Books
- Python Data Science Handbook by Jake Vanderplas
- Python for Data Analysis by Wes McKinney
- Numerical Python: Scientific Computing and Data Science Applications with Numpy, SciPy, and Matplotlib by Robert Johansson
Videos
- Advanced NumPy - broadcasting rules, strides, and advanced indexing by Juan Nunez-Iglesias
NumPy Talks#
- The Future of NumPy Indexing by Jaime Fernández (2016)
- Evolution of Array Computing in Python by Ralf Gommers (2019)
- NumPy: what has changed and what is going to change? by Matti Picus (2019)
- Inside NumPy by Ralf Gommers, Sebastian Berg, Matti Picus, Tyler Reddy, Stefan van der Walt, Charles Harris (2019)
- Brief Review of Array Computing in Python by Travis Oliphant (2019)
Citing NumPy#
If NumPy has been significant in your research, and you would like to acknowledge the project in your academic publication, please see this citation information.