NumPy and IPython
Valentin Haenel -
Valentin Haenel is an software developer with experience working in a scientific context. He is the co-author of a scientific toolbox used in experimental psychology research and has worked on a large-scale brain simulation project in the past.
He has been teaching at the Advanced Scientific Programming in Python Summerschool materials where his main focus is the lecture on best practices and contributing to the schools programming framework Pelita. He has been tutorial chair for the EuroScipy conference in 2011 and 2012 and is one of the editors of the Python Scientific Lecture Notes. Recently, he taught a week-long course for PhD students and Postdocs at the EPFL in Switzerland and authored an article about interfacing Python and C.
See also: http://haenel.co
This tutorial is a hands-on introduction to the two most basic building-blocks of the scientific Python stack: the enhanced interactive interpreter IPython and the fast numerical container Numpy. Amongst other things you will learn how to structure an interactive workflow for scientific computing and how to create and manipulate numerical data efficiently. You should have some basic familiarity with Python (variables, loops, functions) and basic command-line usage (executing commands, using history).
Ipython (1 hour)
- Using the IPython notebook
- Help system, magic functions, aliases and history
Numpy (3 hours)
- Basic arrays, dtypes and numerical operations
- Indexing, slicing, reshaping and broadcasting
- Copies, views and fancy indexing
The tutorial will feature short bursts of small exercises every 5-10 minutes.
An install of Anaconda should be enough
- Numpy (Version 1.6 or higher)
- Ipython (Version 0.13 or higher)
- Matplotlib (Version 1.2.1 or higher)
I have converted a large part of the Numpy chaper from the Python Scientific Lecture Notes to IPython notebook
format using the
sphinx2ipynb converter from the nbconvert project.
All materials are collected in my scipy2013-tutorial-numpy-ipython Gitub repository at https://github.com/esc/scipy2013-tutorial-numpy-ipython or http://git.io/bocNDg.