{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", "

# $\\text{NumPy}$ and $\\text{matplotlib}$

\n", "

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this tutorial, we'll learn the basic functionality of two important Python packages for scientific computing: **NumPy** and **matplotlib**. \n", "\n", "First, recall from previous tutorials some useful shortcuts for [IPython notebook](http://www.ipython.org):\n", "\n", "- To run a cell click on it and hit shift+enter.\n", "- To create a new cell below: ctrl+m+b\n", "- To create a new cell above: ctr+m+a\n", "- To delete a cell: ctr+m+d\n", "- Undo a cell deletion: ctr+m+z\n", "- Markdown cell to write text: ctrl+m+m\n", "- Code cell: ctrl+m+y\n", "- View all shortcuts: ctrl+m+h" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Acknowledgements:\n", "\n", "Material has been adapted from the following:\n", "\n", "- David Ketcheson's [Introduction to NumPy and Matplotlib](http://nbviewer.ipython.org/github/ketch/AMCS252/blob/master/2_Introduction_to_Numpy%20and_Matplotlib.ipynb).\n", "- Software Carpentry's [Numerical analysis with NumPy](http://nbviewer.ipython.org/github/geocarpentry/2014-01-30-mit/blob/gh-pages/lessons/vignettes/Numerical%20analysis%20with%20NumPy.ipynb)\n", "- J.R. Johansson's [Numpy - multidimensional data arrays](http://nbviewer.ipython.org/github/jrjohansson/scientific-python-lectures/blob/master/Lecture-2-Numpy.ipynb).\n", "- Official [Tentative NumPy tutorial](http://www.scipy.org/Tentative_NumPy_Tutorial) and Nicolas P. Rougier's [Matplotlib tutorial](http://www.loria.fr/~rougier/teaching/matplotlib/)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

# NumPy

\n", "\n", "Python includes a package for numerical computation called numpy, which is an essential tool for scientific computing. It is based on\n", "multidimensional arrays (vectors and matrices) and provides a large library of functions and operators that work efficiently on these objects.\n", "In this way, any numerical algorithm is expressed as operations on arrays and in many cases runs almost as quickly as the equivalent C code.\n", "\n", "Numpy is complemented by [SciPy](http://www.scipy.org/); a library that adds more MATLAB-like functionality and [matplotlib](http://matplotlib.org/); a plotting package that provides MATLAB-like plotting functionality. \n", "\n", "Like MATLAB, NumPy relies on BLAS and LAPACK for efficient linear algebra computations.\n", "\n", "\n", "NumPy's is used in:
\n", "Numerical Analysis, Linear algebra, Solution of differential equations, Image and signal processing, Statistical analysis, Data transformation and query and many more...\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Why to use NumPy?\n", "\n", "Consider the following list and suppose we want to perform some simple algebraic operations:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "price = [5.99, 10.25, 2.0, 40.99, 5.60, 63.49]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 456 }, { "cell_type": "code", "collapsed": false, "input": [ "price*2" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 457, "text": [ "[5.99, 10.25, 2.0, 40.99, 5.6, 63.49, 5.99, 10.25, 2.0, 40.99, 5.6, 63.49]" ] } ], "prompt_number": 457 }, { "cell_type": "code", "collapsed": false, "input": [ "price+0.5" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "can only concatenate list (not \"float\") to list", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mprice\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0;36m0.5\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: can only concatenate list (not \"float\") to list" ] } ], "prompt_number": 458 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Clearly, if we wanted to double the value of each element and add half, this cannot be done easily. Instead, we would have to use a loop:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "for i in range(len(price)):\n", " price[i] = price[i]*2\n", " price[i] = price[i]+0.5\n", "print price" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "But, there should be a more convinient way..." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Getting started\n", "\n", "We start, by importing the NumPy module. Import statements like this are the typical way of getting access to functions in Python. The most general way to import a module is the following:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from numpy import *" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The above imports all functions included in the package and can call them simply by their name." ] }, { "cell_type": "code", "collapsed": false, "input": [ "sin(3*pi/2)*exp(2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 459, "text": [ "-7.3890560989306504" ] } ], "prompt_number": 459 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Instead we can import the numpy module and tell Python that we want to refer to numpy by the short abbreviation *np*. This is recommended since we keep track of which module the functions belong to." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 460 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Arrays\n", "\n", "NumPy's main object is the homogeneous multidimensional array. \n", "It is a table of elements - all of the same type - indexed by a tuple of positive integers.\n", "\n", "NumPy's array class is called *ndarray* and the package includes basic utility functions for creating and manipulate arrays in a similar fashion to MATLAB.\n", "For example we can create a one-dimensional array by:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "price = np.array([5.99, 10.25, 2.0, 40.99, 5.60, 63.49])\n", "print type(price)\n", "price = price*2+0.5\n", "print price" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "[ 12.48 21. 4.5 82.48 11.7 127.48]\n" ] } ], "prompt_number": 461 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are other ways to create one-dimensional arrays:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "x = np.linspace(-1,1,5)\n", "print x" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[-1. -0.5 0. 0.5 1. ]\n" ] } ], "prompt_number": 462 }, { "cell_type": "code", "collapsed": false, "input": [ "y = np.arange(0,1,0.2)\n", "print y" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 0. 0.2 0.4 0.6 0.8]\n" ] } ], "prompt_number": 463 }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise 1:** Change the inputs of the *linspace* and *arange* function until you understand exactly what they do. Using both ways, create a vector of starting from -1.5 to 4.5 exclusive with a step of 0.5. " ] }, { "cell_type": "code", "collapsed": false, "input": [ "# type your solution here" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 464 }, { "cell_type": "code", "collapsed": false, "input": [ "#%load solutions/1D_array.py" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 465 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can always find out what a function does by typing its name, followed by a question mark:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "np.arange?" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 466 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Resize the help window (to get it out of your way) by dragging the divider. Double click on the divider to close it." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Multidimensional arrays\n", "\n", "We can create multidimensional arrays, like the following:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = np.array([[1,2.4,-13],[4.1,5,0],[7.2,8,9]])\n", "print \"A = \", A\n", "print type(A)\n", "print A.shape\n", "print A.dtype" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "A = [[ 1. 2.4 -13. ]\n", " [ 4.1 5. 0. ]\n", " [ 7.2 8. 9. ]]\n", "\n", "(3, 3)\n", "float64\n" ] } ], "prompt_number": 467 }, { "cell_type": "markdown", "metadata": {}, "source": [ "To see all different attributes of the array object type its name followed by a fullstop and press *tap*. Note that some attributes are basically functions and require parentheses (with or without arguments), e.g. *conjugate* and others don't, e.g. *size*:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = np.array([[1,2+4j,3j],[4j,5,6-5j],[7j,8,9+3j]]) # dtype=complex\n", "print A.conjugate()\n", "print A.size" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 1.-0.j 2.-4.j 0.-3.j]\n", " [ 0.-4.j 5.-0.j 6.+5.j]\n", " [ 0.-7.j 8.-0.j 9.-3.j]]\n", "9\n" ] } ], "prompt_number": 468 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can also define the shape of the array:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "np.random.uniform(0,1,size=(5,5)) # 5 x 5 matrix with elements from a uniform distribution" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 469, "text": [ "array([[ 0.36571257, 0.97149998, 0.93448159, 0.63618724, 0.11734503],\n", " [ 0.82468843, 0.0165409 , 0.38839101, 0.41888606, 0.98623419],\n", " [ 0.92330802, 0.02180409, 0.57944221, 0.90391814, 0.99616971],\n", " [ 0.82753157, 0.99756878, 0.82759013, 0.14440918, 0.38945326],\n", " [ 0.95052569, 0.29399635, 0.85205134, 0.47462323, 0.94028725]])" ] } ], "prompt_number": 469 }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Special arrays\n", "\n", "The function *zeros* creates an array full of zeros, the function *ones* creates an array full of ones and *eye* an identity array. Function *diag* is used for a diagonal array with specified diagonal elements. A matrix with random entries is generated by the *random* function." ] }, { "cell_type": "code", "collapsed": false, "input": [ "print np.zeros((3,4))\n", "print np.ones((2,3))\n", "print np.eye(3)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 0. 0. 0. 0.]\n", " [ 0. 0. 0. 0.]\n", " [ 0. 0. 0. 0.]]\n", "[[ 1. 1. 1.]\n", " [ 1. 1. 1.]]\n", "[[ 1. 0. 0.]\n", " [ 0. 1. 0.]\n", " [ 0. 0. 1.]]\n" ] } ], "prompt_number": 470 }, { "cell_type": "code", "collapsed": false, "input": [ "print np.diag(x,0)\n", "print np.diag([2,3,4])\n", "print np.random.random((2,2))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[-1. 0. 0. 0. 0. ]\n", " [ 0. -0.5 0. 0. 0. ]\n", " [ 0. 0. 0. 0. 0. ]\n", " [ 0. 0. 0. 0.5 0. ]\n", " [ 0. 0. 0. 0. 1. ]]\n", "[[2 0 0]\n", " [0 3 0]\n", " [0 0 4]]\n", "[[ 0.14303763 0.08297788]\n", " [ 0.04270201 0.26137453]]\n" ] } ], "prompt_number": 471 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice that there are two pairs of parentheses used when calling the *zeros*, *ones* and *random* command, because we are passing as argument (e.g. the Python tuple *(3,4)*), which is the shape of the resulting array." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Reshape\n", "\n", "Manipulation of arrays can be done in many ways: " ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = np.arange(1,10)\n", "print \"A = \", A\n", "A = A.reshape((3,3))\n", "print A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "A = [1 2 3 4 5 6 7 8 9]\n", "[[1 2 3]\n", " [4 5 6]\n", " [7 8 9]]\n" ] } ], "prompt_number": 472 }, { "cell_type": "code", "collapsed": false, "input": [ "B = arange(15).reshape((3,5))\n", "print \"B = \", B\n", "print B.ravel() # flatten the array" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "B = [[ 0 1 2 3 4]\n", " [ 5 6 7 8 9]\n", " [10 11 12 13 14]]\n", "[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14]\n" ] } ], "prompt_number": 473 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Indexing\n", "\n", "We can slice numpy arrays just as other programming languages, but the indexing is a little different. See the examples below:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print A\n", "print A[0,0]\n", "print A[1:3,0:2]\n", "print A[1:3,[0,1]]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[1 2 3]\n", " [4 5 6]\n", " [7 8 9]]\n", "1\n", "[[4 5]\n", " [7 8]]\n", "[[4 5]\n", " [7 8]]\n" ] } ], "prompt_number": 474 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that the fundamental difference from MATLAB is that the indexing starts from zero and is exclusive of the second index. Hence, in the above example 1:3 refers to the second and third row and 0:2 to the first and second column." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can index in some clever ways too: " ] }, { "cell_type": "code", "collapsed": false, "input": [ "print A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[1 2 3]\n", " [4 5 6]\n", " [7 8 9]]\n" ] } ], "prompt_number": 475 }, { "cell_type": "code", "collapsed": false, "input": [ "print A[0,:] # row selection\n", "print A[:,0] # column selection" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[1 2 3]\n", "[1 4 7]\n" ] } ], "prompt_number": 476 }, { "cell_type": "code", "collapsed": false, "input": [ "print A[:,1:] # all rows, from 2nd column until the end\n", "print A[-1,:] # last row, all columns" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[2 3]\n", " [5 6]\n", " [8 9]]\n", "[7 8 9]\n" ] } ], "prompt_number": 477 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can change array's elements:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A[:,2] = [.3,.4,9.12]\n", "print A\n", "print A.dtype" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[1 2 0]\n", " [4 5 0]\n", " [7 8 9]]\n", "int64\n" ] } ], "prompt_number": 478 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice that the elements of A remain integers. That is because A has type *int*. The following does the desired change:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = array(A,dtype='float')\n", "A[:,2] = [.3,.4,9.12]\n", "print A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 1. 2. 0.3 ]\n", " [ 4. 5. 0.4 ]\n", " [ 7. 8. 9.12]]\n" ] } ], "prompt_number": 479 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There is an easy way to reverse a vector:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "a = arange(10)\n", "print a\n", "print a[: :-1] # reverse a" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[0 1 2 3 4 5 6 7 8 9]\n", "[9 8 7 6 5 4 3 2 1 0]\n" ] } ], "prompt_number": 480 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can also index an array using boolean arrays:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "b = a>5\n", "print b\n", "a[b] = 0 # All elements of 'a' higher than 5 become 0\n", "print a" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[False False False False False False True True True True]\n", "[0 1 2 3 4 5 0 0 0 0]\n" ] } ], "prompt_number": 481 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Array and matrix multiplication" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print a**2\n", "print 10*sin(np.pi/a[1:5]) # avoiding division with zero!\n", "print A*A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 0 1 4 9 16 25 0 0 0 0]\n", "[ 1.22464680e-15 1.00000000e+01 8.66025404e+00 7.07106781e+00]\n", "[[ 1. 4. 0.09 ]\n", " [ 16. 25. 0.16 ]\n", " [ 49. 64. 83.1744]]\n" ] } ], "prompt_number": 482 }, { "cell_type": "markdown", "metadata": {}, "source": [ "By default, NumPy uses component-wise multiplication. For a matrix-matrix (or matrix-vector) multiplication, we use the *dot* function: " ] }, { "cell_type": "code", "collapsed": false, "input": [ "np.dot(A,A)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 483, "text": [ "array([[ 11.1 , 14.4 , 3.836 ],\n", " [ 26.8 , 36.2 , 6.848 ],\n", " [ 102.84 , 126.96 , 88.4744]])" ] } ], "prompt_number": 483 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Other basic operations" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = array(A,dtype='int')\n", "print A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[1 2 0]\n", " [4 5 0]\n", " [7 8 9]]\n" ] } ], "prompt_number": 484 }, { "cell_type": "code", "collapsed": false, "input": [ "print A.sum() # sum of all elements\n", "print A.min()\n", "print A.max()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "36\n", "0\n", "9\n" ] } ], "prompt_number": 485 }, { "cell_type": "code", "collapsed": false, "input": [ "print A.sum(axis=0) # sum of each column\n", "print A.min(axis=1) # min of each row\n", "print A.cumsum(axis=1) # cumulative sum along each row" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[12 15 9]\n", "[0 0 7]\n", "[[ 1 3 3]\n", " [ 4 9 9]\n", " [ 7 15 24]]\n" ] } ], "prompt_number": 486 }, { "cell_type": "markdown", "metadata": {}, "source": [ "In Python *axis* refers to the dimensions of arrays; *axis=0* refers to the colums and *axis=1* to the rows." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Stacking and splitting\n", "\n", "The *vstack* and *hstack* commands can be used to stack arrays and *hsplit* to split." ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = floor(10*random.random((2,2)))\n", "print A\n", "B = floor(10*random.random((2,2)))\n", "print B" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 1. 6.]\n", " [ 7. 1.]]\n", "[[ 2. 1.]\n", " [ 2. 9.]]\n" ] } ], "prompt_number": 487 }, { "cell_type": "code", "collapsed": false, "input": [ "print np.vstack((A,B))\n", "print np.hstack((B,A))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 1. 6.]\n", " [ 7. 1.]\n", " [ 2. 1.]\n", " [ 2. 9.]]\n", "[[ 2. 1. 1. 6.]\n", " [ 2. 9. 7. 1.]]\n" ] } ], "prompt_number": 488 }, { "cell_type": "code", "collapsed": false, "input": [ "A = floor(10*random.random((2,12)))\n", "print A" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 5. 3. 9. 2. 3. 0. 2. 5. 6. 6. 0. 9.]\n", " [ 7. 2. 4. 7. 9. 5. 4. 3. 7. 8. 5. 6.]]\n" ] } ], "prompt_number": 489 }, { "cell_type": "code", "collapsed": false, "input": [ "print np.hsplit(A,3) # Split A into 3 arrays\n", "print np.hsplit(A,(3,4)) # Split A after the third and the fourth column" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[array([[ 5., 3., 9., 2.],\n", " [ 7., 2., 4., 7.]]), array([[ 3., 0., 2., 5.],\n", " [ 9., 5., 4., 3.]]), array([[ 6., 6., 0., 9.],\n", " [ 7., 8., 5., 6.]])]\n", "[array([[ 5., 3., 9.],\n", " [ 7., 2., 4.]]), array([[ 2.],\n", " [ 7.]]), array([[ 3., 0., 2., 5., 6., 6., 0., 9.],\n", " [ 9., 5., 4., 3., 7., 8., 5., 6.]])]\n" ] } ], "prompt_number": 490 }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise 2:**\n", "\n", "1. Create a vector with values ranging from 10 to 99\n", "2. Find indices of non-zero elements from [1,2,0,0,4,0]. Hint: use np.nonzero\n", "3. Declare a 8x8 matrix and fill it with a checkerboard pattern of zeros and ones, without a loop.\n", "4. Create a 5x3 matrix whose $(i,j)$ entry is equal to $i\\times j^2$ without using a loop. Hint: use np.fromfunction.\n", "5. Create a 4x4 array with numbers from a normal distribution with mean = 3 and standard deviation = 1.5. Hint: use np.random.normal. Sum the values of each row and store the result in a new array." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# type your solution here" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 491 }, { "cell_type": "code", "collapsed": false, "input": [ "#%load solutions/array_operations.py" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 492 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's work with some real data. Ensure that the stockholm_temp.txt in the same directory with this notebook. \n", "This file contains the [daily average temperatures](http://bolin.su.se/data/stockholm/homogenized_daily_mean_temperatures.php)\n", "according to observations of Stockholm for the years 1756 - 2012.\n", "The following code checks if the file exists, opens it, prints the first lines and stores the data in an array." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import os\n", "filename = 'stockholm_temp.txt'\n", "if os.path.exists(filename):\n", " # look at the first 3 lines\n", " with open(filename,'r') as f:\n", " print '\\n'.join(f.readlines()[:3])\n", " # alternative look at the first head lines\n", " !head 'stockholm_temp.txt'\n", " \n", " data = np.loadtxt(filename) # alternative we can use genfromtxt command\n", " \n", "else:\n", " print 'Weather data does not exist, please download \"stockholm_temp.txt\" from Github.'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1.756000000000000000e+03 1.000000000000000000e+00 1.000000000000000000e+00 -8.699999999999999289e+00\n", "\n", "1.756000000000000000e+03 1.000000000000000000e+00 2.000000000000000000e+00 -9.199999999999999289e+00\n", "\n", "1.756000000000000000e+03 1.000000000000000000e+00 3.000000000000000000e+00 -8.599999999999999645e+00\n", "\n", "1.756000000000000000e+03 1.000000000000000000e+00 1.000000000000000000e+00 -8.699999999999999289e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 2.000000000000000000e+00 -9.199999999999999289e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 3.000000000000000000e+00 -8.599999999999999645e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 4.000000000000000000e+00 -7.700000000000000178e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 5.000000000000000000e+00 -7.200000000000000178e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 6.000000000000000000e+00 -1.600000000000000089e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 7.000000000000000000e+00 6.999999999999999556e-01\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 8.000000000000000000e+00 1.300000000000000044e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 9.000000000000000000e+00 2.399999999999999911e+00\r\n", "1.756000000000000000e+03 1.000000000000000000e+00 1.000000000000000000e+01 8.000000000000000444e-01\r\n" ] } ], "prompt_number": 493 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since the data are in the form\n", "*Year\n", "- Month\n", "- Day\n", "- Temperature*\n", "we would like to express them in a better way. We define a dtype, that is the type for each column: int, int, int, float:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "dt = np.dtype([('Year', 'int16'), ('Month', 'int8'), ('Day', 'int8'), ('Temp', 'float64')])\n", "data = np.loadtxt(filename,dtype=dt)\n", "data[:10] # first 10 entries of our data" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 494, "text": [ "array([(1756, 1, 1, -8.7), (1756, 1, 2, -9.2), (1756, 1, 3, -8.6),\n", " (1756, 1, 4, -7.7), (1756, 1, 5, -7.2), (1756, 1, 6, -1.6),\n", " (1756, 1, 7, 0.7), (1756, 1, 8, 1.3), (1756, 1, 9, 2.4),\n", " (1756, 1, 10, 0.8)], \n", " dtype=[('Year', 'Exercise 3:** Make an array with the temperatures of the 5th day of every month." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# type your solution here" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 497 }, { "cell_type": "code", "collapsed": false, "input": [ "#%load solutions/temperatures.py" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 498 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Linear algebra\n", "\n", "Handling *ndarrays* is really powerful. Of the many things one can do with NumPy's arrays is linear algebra: " ] }, { "cell_type": "code", "collapsed": false, "input": [ "x = np.random.random(10)\n", "print x\n", "np.linalg.norm(x,np.inf) # maximum norm of a vector" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 0.59126588 0.175877 0.27998015 0.61563441 0.49037974 0.9935111\n", " 0.04109928 0.53477242 0.30145292 0.02317688]\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 499, "text": [ "0.99351110414064647" ] } ], "prompt_number": 499 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can use this module to solve a linear system of equations $Ax=b$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "A = np.array([[0,2],[8,0]])\n", "b = np.array([1,2])\n", "print A\n", "print b" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[0 2]\n", " [8 0]]\n", "[1 2]\n" ] } ], "prompt_number": 500 }, { "cell_type": "code", "collapsed": false, "input": [ "x = np.linalg.solve(A,b)\n", "print x" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 0.25 0.5 ]\n" ] } ], "prompt_number": 501 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can also solve eigenvalue problems:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "lamda,V = np.linalg.eig(A)\n", "print lamda\n", "print V" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 4. -4.]\n", "[[ 0.4472136 -0.4472136 ]\n", " [ 0.89442719 0.89442719]]\n" ] } ], "prompt_number": 502 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice we have put two variables on the left of the equals sign, to assign the outputs of *eig()* to two different variables. Here *lamda* are the eigenvalues and the columns of *V* are the eigenvectors." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise 4:** Create a diagonal matrix using the *lamda* variable and then multiply from the left with V and from the right with the inverse of V (use *np.linalg.inv()*). What do you find?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# type your solution here" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 503 }, { "cell_type": "code", "collapsed": false, "input": [ "#%load solutions/linear_algebra.py" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 504 }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

# Matplotlib

\n", "\n", "[Matplotlib](http://matplotlib.org/) is the basic package of Python for plotting." ] }, { "cell_type": "code", "collapsed": false, "input": [ "%pylab inline --no-import-all\n", "import matplotlib.pyplot as plt" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "prompt_number": 505 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first line above ensures that our plots appear in the browser, instead in a separate window.\n", "\n", "Let's see a very simple example. Suppose we want to plot the function $\\sin(\\exp(x))$ on the interval $x\\in(0,\\pi)$. We'll want to use the NumPy functions of the sine and exponential functions. (Note: the math module operates only on scalars so we *should* use NumPy in such cases)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "x = np.linspace(0,np.pi,1000)\n", "f = np.sin(np.exp(x))\n", "g = np.cos(2*x)\n", "plt.plot(x,f)\n", "plt.plot(x,g)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 506, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 506 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are several ways to format a plot in python. Here we just mention only the basic functionality. It's straightforward to use them and you will generally only get into its advanced functionality if you are customizing the look of a plot for a publication. Matplotlib documentation is very good, have a look [here](http://matplotlib.sourceforge.net/users/pyplot_tutorial.html). You can also read [this tutorial](http://www.loria.fr/~rougier/teaching/matplotlib) for an easy start. More references are listed at the end of this tutorial." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following code does the basic formatting for the plot above:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure(figsize=(10,6), dpi=100) # changing figure's shape\n", "plt.xlim(x.min()-0.1, x.max()+0.1) # adjusting horizonatal axis limits\n", "plt.ylim(f.min()-0.1, f.max()+0.1) # adjusting vertical axis limits\n", "plt.xticks([0, np.pi/2, np.pi],[r'$-\\pi$', r'$-\\pi/2$', r'$0$', r'$+\\pi/2$', r'$+\\pi$'],fontsize=14) # setting ticks\n", "plt.yticks([-1, 0, +1],[r'$-1$', r'$0$', r'$+1$'],fontsize=14) # setting ticks\n", "\n", "plt.plot(x, f, color=\"blue\", linewidth=2.5, linestyle=\"-\", label=\"$\\sin(e^x)$\") # changing color and thickness\n", "plt.plot(x, g, color=\"red\", linewidth=2.5, linestyle=\"-\", label=\"$\\cos(2x)$\") # changing color and thickness\n", "plt.legend(loc='lower left',prop={'size':16}) # placing legend on bottom left\n", "plt.xlabel('$x$',fontsize=16) # horizontal axis name\n", "plt.ylabel('test functions',fontsize=16) # vertical axis name\n", "plt.title('Sample plot',fontsize=18) # title \n", "plt.grid(True) # enabling grid\n", "#plt.savefig('trig_functions.pdf')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 507 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The image can be resized by dragging the handle in the lower right corner. Double clicking will return them to their original size.\n", "\n", "One thing to be aware of is that by default, the *figure* object is cleared at the end of each cell, so you will need to issue all plotting commands for a single figure in a single cell.\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.savefig('trig_functions.pdf')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "text": [ "" ] } ], "prompt_number": 508 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Go on and open the *pdf* file. It is empty! Now uncomment the save line in the block where the figure is plotted." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3D-plotting\n", "\n", "The following example is adapted from [this tutorial](http://nbviewer.ipython.org/github/jrjohansson/scientific-python-lectures/blob/master/Lecture-2-Numpy.ipynb). Let's define the following function:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "alpha = 0.7\n", "phi_ext = 2*np.pi*0.5\n", "\n", "def flux_qubit_potential(phi_m, phi_p):\n", " return 2 + alpha - 2*np.cos(phi_p)*np.cos(phi_m) - alpha*np.cos(phi_ext - 2*phi_p)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 509 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now create a mesh and evaluate the function over that mesh:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "phi_m = np.linspace(0, 2*np.pi, 100)\n", "phi_p = np.linspace(0, 2*np.pi, 100)\n", "X,Y = np.meshgrid(phi_p, phi_m)\n", "Z = flux_qubit_potential(X, Y).T" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 510 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the surface:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from mpl_toolkits.mplot3d.axes3d import Axes3D # imports 3D plotting\n", "from matplotlib import cm # module for color pattern\n", "fig = plt.figure(figsize=(14,6))\n", "\n", "# ax is a 3D-aware axis instance because of the projection='3d' keyword argument to add_subplot\n", "ax = fig.add_subplot(1, 2, 1, projection='3d')\n", "\n", "p = ax.plot_surface(X, Y, Z, rstride=4, cstride=4, linewidth=0)\n", "\n", "# surface_plot with color grading and color bar\n", "ax = fig.add_subplot(1, 2, 2, projection='3d')\n", "p = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.coolwarm, linewidth=0, antialiased=False)\n", "cb = fig.colorbar(p, shrink=0.5) # enables colorbar" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 511 }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise 5:** Use the weather data variable defined previously to plot the temperature over the years. Put a title, axis labels and make the plot wide enough. Hint: the x-axis represents the time and it can be evaluated by *Year + Month/12.0 + Day/365.0*." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# type your solution here" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 512 }, { "cell_type": "code", "collapsed": false, "input": [ "#%load solutions/plotting.py" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 513 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are many more fancy things to do with Python visualization package. \n", "For example we can create animations. \n", "\n", "The code below uses the solution of the [Woodward-Colella blast wave problem](http://clawpack.github.io/doc/pyclaw/gallery/woodward_colella_blast.html) solved by the [Clawpack package](http://clawpack.github.io/index.html)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "def solution(filename, path='woodward_colella_blast'):\n", " \"\"\"\n", " This function reads the solution stored in an \n", " ascii file written by pyclaw.\n", " \"\"\"\n", " import sys\n", " \n", " # Concatenate path and file name\n", " pathfilename = path + \"/\" + filename\n", "\n", " try:\n", " f = open(pathfilename,\"r\")\n", " except IOError as e:\n", " print(\"({})\".format(e))\n", " sys.exit()\n", "\n", " # Read file header\n", " # The information contained in the first two lines are not used.\n", " unused = f.readline() # grid_number\n", " unused = f.readline() # AMR_level\n", "\n", " # Read mx, my, xlow, ylow, dx and dy\n", " line = f.readline()\n", " sline = line.split()\n", " mx = int(sline[0])\n", "\n", " line = f.readline()\n", " sline = line.split()\n", " xlower = float(sline[0])\n", "\n", " line = f.readline()\n", " sline = line.split()\n", " dx = float(sline[0])\n", "\n", " # Grid:\n", " xupper = xlower + mx * dx\n", " xc = np.linspace(xlower+dx/2.,xupper-dx/2.,mx) \n", " \n", " # Read solution\n", " # Define arrays of conserved variables\n", " q = np.zeros((mx,3))\n", "\n", " line = f.readline()\n", " for j in range(mx):\n", " \t\tline = f.readline()\n", " \t\tq[j,:] = np.array(map(float, line.split()))\n", " \t\t\n", " return q, xc\n", "\n", "def time(filename, path='woodward_colella_blast'):\n", " \"\"\"\n", " This function reads the time stored in an \n", " ascii file written by pyclaw.\n", " \"\"\"\n", " from clawpack import pyclaw\n", " import sys\n", " \n", " # Concatenate path and file name\n", " pathfilename = path + \"/\" + filename\n", "\n", " try:\n", " f = open(pathfilename,\"r\")\n", " except IOError as e:\n", " print(\"({})\".format(e))\n", " sys.exit()\n", "\n", " # Read time\n", " line = f.readline()\n", " sline = line.split()\n", " t = float(sline[0])\n", " \t\t\n", " return t\n", "\n", "def fplot(i):\n", " index = \"%02d\" % i\n", " q, xc = solution('fort.q00' + index)\n", " t = time('fort.t00' + index)\n", " line.set_data(xc, q[:,0])\n", " ax.set_title('Density at t='+str(t))\n", " return line\n", "\n", "def init():\n", " line.set_data([], [])\n", " return line,\n", "\n", "\n", "### main block ###\n", "from matplotlib import animation\n", "import matplotlib.pyplot as plt\n", "from clawpack.visclaw.JSAnimation import IPython_display\n", "\n", "_, xc = solution('fort.q0000')\n", "fig = plt.figure(figsize=[8,4])\n", "ax = plt.axes(xlim=(xc[0], xc[-1]), ylim=(0, 10))\n", "line, = ax.plot([], [], lw=2)\n", "\n", "animation.FuncAnimation(fig, fplot, frames=11, init_func=init, blit=True)" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "\n", "\n", "\n", "
\n", " \n", "
\n", " \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " \n", " Once \n", " Loop \n", " Reflect \n", "
\n", "
\n", "\n", "\n", "\n" ], "metadata": {}, "output_type": "pyout", "prompt_number": 514, "text": [ "" ] } ], "prompt_number": 514 }, { "cell_type": "markdown", "metadata": {}, "source": [ "For more comprehensive examples have a look at the following links and check the capabilities of [plotly](https://plot.ly/) and [Matplotlib](http://matplotlib.org/):\n", "\n", "- [http://nbviewer.ipython.org/gist/ketch/8554686](http://nbviewer.ipython.org/gist/ketch/8554686)\n", "- [http://nbviewer.ipython.org/gist/rjleveque/8994740](http://nbviewer.ipython.org/gist/rjleveque/8994740)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## References:\n", "\n", "#### Numpy:\n", "\n", "- [Numpy tutorial](http://www.scipy.org/Tentative_NumPy_Tutorial) \n", "- [Numpy tutorial video](http://showmedo.com/videotutorials/series?name=i9KuJuNcG) \n", "- [NumPy: lock 'n load](http://mentat.za.net/numpy/intro/intro.html)\n", "- [Numpy for Matlab users](http://www.scipy.org/NumPy_for_Matlab_Users)\n", "- [Hans Petter Langtangen book](http://link.springer.com/book/10.1007/978-3-642-02475-7/page/1)\n", "\n", "\n", "#### Matplotlib\n", "\n", "- [Nicolas P. Rougier matplotlib tutorial](http://www.loria.fr/~rougier/teaching/matplotlib/)\n", "- [Pyplot tutorial](http://matplotlib.org/users/pyplot_tutorial.html)\n", "- [Matplotlib gallery](http://matplotlib.org/gallery.html)\n", "\n", "\n", "#### More general\n", "\n", "- [General Python tutorial](http://docs.python.org/tutorial/)\n", "- [Dive Into Python](http://diveintopython.org/)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Other packages\n", "Besides numpy and matplotlib, there are many other useful Python packages for scientific computing. Here is a short list: \n", "\n", "- [scipy](http://www.scipy.org/) - optimization, ODEs, sparse linear algebra, etc.\n", "- [sympy](http://sympy.org/) - symbolic computation\n", "- [mpi4py](http://mpi4py.scipy.org/) - parallel computing\n", "- [petsc4py](http://code.google.com/p/petsc4py/), [pytrilinos](http://trilinos.sandia.gov/packages/pytrilinos/) - Python bindings for the \"big 2\" parallel scientific libraries\n", "- [pyCUDA](http://mathema.tician.de/software/pycuda), [pyOpenCL](http://mathema.tician.de/software/pyopencl) - GPGPU computing\n", "- [FENiCS](http://fenicsproject.org/), [FiPy](http://www.ctcms.nist.gov/fipy/), [PyClaw](http://numerics.kaust.edu.sa/pyclaw/) - solve complicated PDEs with very sophisticated numerical methods\n", "- [networkX](http://networkx.github.com/), [pygraphviz](http://networkx.lanl.gov/pygraphviz/) - graphs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Copyright 2014, Yiannis Hadjimichael, KAUST ACM Student Chapter Member.*" ] } ], "metadata": {} } ] }