{ "metadata": { "name": "", "signature": "sha256:75a245f2bf82bb911509c46d6fb9a9104c2e524a2bec6d40f25e473f234105e1" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import math" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "# Data downloaded from: http://www.ncdc.noaa.gov/cdo-web/search\n", "\n", "csv_file = \"co_springs_1-1-2010_8-8-2013.csv\"\n", "data = open(csv_file, \"r\").readlines()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 23 }, { "cell_type": "code", "collapsed": false, "input": [ "column_headings = data[0]\n", "print column_headings" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "STATION,DATE,TMAX,TMIN,TOBS\n", "\n" ] } ], "prompt_number": 24 }, { "cell_type": "code", "collapsed": false, "input": [ "data[1]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 25, "text": [ "'GHCND:USR0000CFTC,20100128,-39,-72,-9999\\n'" ] } ], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [ "date_and_max_temp = [(row.split(',')[1], row.split(',')[2]) for row in data[1:]]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 26 }, { "cell_type": "code", "collapsed": false, "input": [ "june_data = [(i[0], int(i[1])) for i in date_and_max_temp if i[0][4:6] == '06'] # and int(i[0][6:8]) < 7]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 27 }, { "cell_type": "code", "collapsed": false, "input": [ "def fahrenheit(celsius):\n", " return celsius * (9.0/5) + 32\n", "\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 28 }, { "cell_type": "code", "collapsed": false, "input": [ "june_data_in_f = [fahrenheit(i[1] * 0.10) for i in june_data]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 29 }, { "cell_type": "code", "collapsed": false, "input": [ "_ = plt.hist(june_data_in_f, bins=16)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "print \"Average Max temperature for June in Colorado Springs:\", sum(june_data_in_f) / len(june_data_in_f)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Average Max temperature for June in Colorado Springs: 82.0148837209\n" ] } ], "prompt_number": 31 }, { "cell_type": "code", "collapsed": false, "input": [ "len([i for i in june_data_in_f if i < 75]) * 1.0 / len(june_data_in_f)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 32, "text": [ "0.19856887298747763" ] } ], "prompt_number": 32 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 32 } ], "metadata": {} } ] }