{ "metadata": { "name": "", "signature": "sha256:c88eb2437119da42d347a0dba3c322264ecdd9d23b2deae66a501f8cc54156c4" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Conditionals -- Making Choices" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So we want to show that the data is \"cooked\". This could be done lots of ways but we will do it graphically to show our supervisor." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Objectives\n", "\n", "* Write conditional statements including `if`, `elif`, and `else` branches.\n", "* Correctly evaluate expressions containing `and` and `or`.\n", "* Correctly write and interpret code containing nested loops and conditionals." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use much of what we have done in previous lessons, so lets start by importing the libraries we will use." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import glob\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "%matplotlib inline" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we want to read all the files, and calculate the overall statistics for each file. So we simplify our analyze function to calculate, not plot the statistics" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def analyze_stats(filename):\n", " data = np.loadtxt(fname=filename, delimiter=',')\n", " return data.mean(0), data.max(0), data.min(0)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will now set up the large arrays that we will store the statistics in.\n", "We use some other methods for creating numpy arrays:\n", "* `empty()`\n", "* `empty_like()`\n", "\n", "Also available are: `zeros()`, `zeros_like`, `ones()`, and `ones_like()`." ] }, { "cell_type": "code", "collapsed": false, "input": [ "datalen = 40\n", "filenames = glob.glob('inflammation*.csv')\n", "nofiles = len(filenames)\n", "datamin = np.empty((nofiles, datalen))\n", "datamean = np.empty_like(datamin)\n", "datamax = np.empty_like(datamin)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Similar to the previous lesson we interate over the files and calculate the statistics for all those files.\n", "However,\n", "we want to store the information,\n", "so we count the files and use that as an index into the file.\n", "Note that `datamean[count]` is actually a vector,\n", "one value for each time.\n", "\n", "Python\n", "(and most other languages in the C family)\n", "provides [in-place operators](../../gloss.html#in-place-operator),\n", "for example:\n", "```python\n", "count += 1\n", "```\n", "to add 1 to count." ] }, { "cell_type": "code", "collapsed": false, "input": [ "count = 0\n", "for f in filenames:\n", " datamean[count], datamax[count], datamin[count] = analyze_stats(f)\n", " count += 1" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "However, this is a bit awkward. Can't we just get python to \"count\" as it loops through the files. Yes, we can using enumerate." ] }, { "cell_type": "code", "collapsed": false, "input": [ "for count, f in enumerate(filenames):\n", " datamean[count], datamax[count], datamin[count] = analyze_stats(f)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plotting a heat map,\n", "like in the first lesson,\n", "of the maximum values shows one statistic we is think totally unrealistic for real data." ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.imshow(datamax)\n", "plt.xlabel('Time')\n", "plt.ylabel('Dataset')\n", "plt.title('Max Values')\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "However, the mean is perhaps not quite as clear" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.imshow(datamean)\n", "plt.xlabel('Time')\n", "plt.ylabel('Dataset')\n", "plt.title('Mean Values')\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\ngg==\n", "text": [ "" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "So,\n", "we will use line plots to show:\n", "\n", " 1. that the overall maximum is a simple straight line up and straight line back down with the same slope,\n", " 2. that almost ALL the time the maximum of a dataset is equal to the overall maximum at that time, and\n", " 3. those two maximum values that are not equal to the overall maximum are exactly one less than it\n", "\n", "To do this we will use a conditional statement,\n", "imbedded inside loops." ] }, { "cell_type": "code", "collapsed": false, "input": [ "overallmax = datamax.max(0)\n", "plt.plot(overallmax)\n", "\n", "for count in range(nofiles):\n", " for time in range(datalen):\n", " if datamax[count,time] - overallmax[time] == -1:\n", " plt.plot(time, datamax[count, time], 's')\n", " elif datamax[count,time] < overallmax[time]:\n", " plt.plot(time, datamax[count, time], 'x')\n", " else:\n", " plt.plot(time, datamax[count, time], '.')\n", "\n", "plt.xlabel('Time')\n", "plt.ylabel('Max Value')\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nREREREREREREREREREREREREREREREREREREgP8P5RK6ULCWP5MAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "One important thing to notice the code above is that we use a double equals sign `==` to test for equality\n", "rather than a single equals sign because the latter is used to mean assignment.\n", "This convention was inherited from C,\n", "and while many other programming languages work the same way,\n", "it does take a bit of getting used to...\n", "\n", "We can also combine tests using `and` and `or`.\n", "`and` is only true if both parts are true:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "if (1 > 0) and (-1 > 0):\n", " print 'both parts are true'\n", "else:\n", " print 'one part is not true'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "one part is not true\n" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "while `or` is true if either part is true:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "if (1 < 0) or ('left' < 'right'):\n", " print 'at least one test is true'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "at least one test is true\n" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this case,\n", "\"either\" means \"either or both\", not \"either one or the other but not both\"." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So,\n", "let's put this all in function called `sherlock()` and a second function `plot_clues()`:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def sherlock(filenames, datalen=40):\n", " datamax = np.empty((len(filenames), datalen))\n", " for count, f in enumerate(filenames):\n", " datamax[count] = analyze_stats(f)[1]\n", " plot_clues(datamax)\n", "\n", " \n", "def plot_clues(datamax):\n", " overallmax = datamax.max(0)\n", " plt.plot(overallmax)\n", " size = datamax.shape\n", "\n", " for count in range(size[0]):\n", " for time in range(size[1]):\n", " if datamax[count, time] - overallmax[time] == -1:\n", " plt.plot(time, datamax[count, time], 's')\n", " elif datamax[count, time] < overallmax[time]:\n", " plt.plot(time, datamax[count, time], 'x')\n", " else:\n", " plt.plot(time, datamax[count, time], '.')\n", " plt.title(\n", " \"Overall Maximum and Deviations Away from It\\n\"\n", " \"dots = same as overall mean\\n\"\n", " \"squares = exactly 1 unit less\")\n", " plt.xlabel(\"Time (days)\")\n", " plt.ylabel(\"Inflammation (units)\")\n", " plt.show()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 11 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We have made some more refinements to our original algorithm:\n", "\n", "* First,\n", "we focus only on the maximum values, \n", "so we only take the second element returned by our `analyze_stats()` function\n", "(via the `[1]` index).\n", "* Second, \n", "we set the size of our loops based on the shape of `datamax`. \n", "* Third,\n", "we improve the labeling and annotation of our plot." ] }, { "cell_type": "code", "collapsed": false, "input": [ "sherlock(glob.glob('inflammation*.csv'))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\npX+6AsIwMuwAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 12 } ], "metadata": {} } ] }