{ "metadata": { "name": "99-generate-lots-of-birds" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "birdnames = \"\"\"\\\n", "Common Teal\n", "Long-tailed Duck\n", "Little Grebe\n", "Albatross\n", "Flamingo\n", "Heron\n", "Stork\n", "Shoebill\n", "Vulture\n", "Bald Eagle\"\"\".splitlines()\n", "\n", "states = \"\"\"Kentucky\n", "Missouri\n", "Kansas\n", "Maine\n", "Michigan\n", "New York\"\"\".splitlines()\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "print states\n", "print birdnames" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "['Kentucky', 'Missouri', 'Kansas', 'Maine', 'Michigan', 'New York']\n", "['Common Teal', 'Long-tailed Duck', 'Little Grebe', 'Albatross', 'Flamingo', 'Heron', 'Stork', 'Shoebill', 'Vulture', 'Bald Eagle']\n" ] } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "import random, datetime\n", "def generate_random_day(year):\n", " doy = int(random.gauss(200, 50))\n", " doy = min(doy, 365)\n", " doy = max(doy, 1)\n", " datestr = \"%s %s\" % (doy, year)\n", " date = datetime.datetime.strptime(datestr, \"%j %Y\")\n", " new_date = date.strftime(\"%B %d\")\n", " return new_date.lower()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "generate_random_day(2013)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 10, "text": [ "'april 09'" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "def generate_random_observation():\n", " bird = random.choice(birdnames).lower()\n", " state = random.choice(states).lower()\n", " day = generate_random_day(2013)\n", " return (bird, state, day)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 17 }, { "cell_type": "code", "collapsed": false, "input": [ "bird, state, day = generate_random_observation()\n", "print bird + '/' + state + '/' + day" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "common teal/new york/august 18\n" ] } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "import csv\n", "fp = file('long-birds.csv', 'w')\n", "w = csv.writer(fp)\n", "\n", "for i in range(10000):\n", " row = generate_random_observation()\n", " w.writerow(row)\n", "fp.close()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 28 }, { "cell_type": "code", "collapsed": false, "input": [ "list(open('long-birds.csv'))[:10]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 29, "text": [ "['heron,michigan,april 24\\r\\n',\n", " 'shoebill,kentucky,july 02\\r\\n',\n", " 'vulture,new york,september 01\\r\\n',\n", " 'flamingo,missouri,may 28\\r\\n',\n", " 'common teal,maine,august 06\\r\\n',\n", " 'heron,maine,august 19\\r\\n',\n", " 'albatross,new york,july 13\\r\\n',\n", " 'albatross,missouri,june 20\\r\\n',\n", " 'heron,kansas,july 07\\r\\n',\n", " 'little grebe,maine,may 24\\r\\n']" ] } ], "prompt_number": 29 }, { "cell_type": "code", "collapsed": false, "input": [ "pwd" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 30, "text": [ "u'/Users/t/dev/2013-swc-uw/notebooks'" ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }