This is a center for all additional documentation to NumPy and SciPy. The main documentation can be found at http://docs.scipy.org/

Numpy and Scipy are two independent packages, but from historical reasons, the documentation for both of them appears on this page. Unfortunately, there is still a lot of outdated documentation to predecessors (or older versions of NumPy) floating on the internet. If you are confused about the predecessors of NumPy, read a History of SciPy -- a summary of the events that led to SciPy and NumPy.

Note also that the NumPy/SciPy Documentation project is in progress! See (and help write) the improved docstrings.

## NumPy

NumPy is a standalone package that provides array manipulation tools for python.

Official Numpy documentation can be found at http://docs.scipy.org

Tutorial: if you are new to NumPy, you can start with reading this tutorial.

Teaching material covering basics and advanced use of Numpy: http://scipy-lectures.github.com/

Guide to NumPy by Travis Oliphant the lead developer of NumPy. This e-book is a complete reference to NumPy, this is a nice documentation to all features of NumPy. It

**was**fee-based but as of Aug 21, 2008 it is in the public domain. The source to the book is also available at Trelgol.Docstrings (reference documentation for each function, module, and class in NumPy) and general reference documentation pages. Since these are in active development, the version on the doc wiki is the most current and may be more informative than what is in the released package. There is a link on the doc wiki to PDF and HTML versions of the reference manual.

Numpy Functions by Category: A list of the functions in NumPy organized by task, with links to the Example List with documentation.

Numpy Example List: large database demonstrating most of the NumPy functionality, read this if you prefer to learn by examples. A version without doc strings is also available.

NumPy for MATLABĀ® Users: An overview of the basics of NumPy for those familiar with MATLABĀ® (you can read this even if you never used matlab before, this document contains a review of NumPy)

Porting to NumPy: Provides stories and examples of porting applications to use NumPy.

NumPy Distutils User's Guide: shows how to write a setup.py for your own project

Documentation from NumPy's predecessor, Numeric. Much of it still applies, but replace Numeric with numpy in all import statements.

## Scipy

The SciPy library is built to work with NumPy arrays, and provides many user-friendly and efficient numerical routines such as routines for numerical integration or optimization.

Official SciPy reference documentation (plus tutorial) can be found at http://docs.scipy.org

Tutorial : If you are new to SciPy, you can start with this tutorial.

Teaching material covering basic and advanced aspects of Scipy: http://scipy-lectures.github.com/

Interactive data analysis tutorial: Tutorial on using Scipy for interactive data analysis (on astronomy data, but this is also suitable as a general tutorial)

WikiTutorial: You can also find useful material in the tutorial on this Wiki.

Tutorial II (pdf): This is a very nice tutorial, but it was written in 2004, so it doesn't cover new features.

Examples: Very few (at the moment) examples of SciPy usage

SciPy packages: An overview of the packages available in SciPy, unfortunately very few are currently documented

Citing SciPy: How to properly cite the SciPy tools in a paper or presentation

Trinity: An example calculation (computing the energy released by the Trinity atomic bomb test).

## Other

Other (mostly unofficial) documentation to NumPy and SciPy.

FAQ. Answers to the most frequently-asked questions.

A course on NumPy/SciPy by Dave Kuhlman

A tutorial focused on interactive data analysis for astronomy, but of generic utility to most scientific users.

A series of lectures by John Stachurski on Python, NumPy and SciPy with applications in computational economics, Feb 2009

Scientific Computing with Python (registration required) A one day tutorial presented by Eric Jones and Travis Oliphant in October 2005

Weave: inclusion of C/C++ code in Python

Porting to NumPy: Provides stories and examples of porting applications from Numeric/Numarray to NumPy.

PerformanceTips. How to maximize the speed of your code using numpy/scipy.

Proposed improvements to NumPy/SciPy that need discussion.