{ "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": 1 }, { "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": 33 }, { "cell_type": "code", "collapsed": false, "input": [ "generate_random_day(2013)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 34, "text": [ "'june 05'" ] } ], "prompt_number": 34 }, { "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": 35 }, { "cell_type": "code", "collapsed": false, "input": [ "generate_random_observation()\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "pyout", "prompt_number": 36, "text": [ "('albatross', 'maine', 'may 31')" ] } ], "prompt_number": 36 }, { "cell_type": "code", "collapsed": false, "input": [ "import csv\n", "fp = file('long-birds.csv', 'wb')\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": 37 }, { "cell_type": "code", "collapsed": false, "input": [ "!head long-birds.csv" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "albatross,maine,april 27\r", "\r\n", "stork,michigan,september 21\r", "\r\n", "heron,kentucky,september 22\r", "\r\n", "albatross,kansas,june 28\r", "\r\n", "common teal,kentucky,june 03\r", "\r\n", "long-tailed duck,maine,august 28\r", "\r\n", "vulture,kansas,september 25\r", "\r\n", "flamingo,kansas,may 16\r", "\r\n", "vulture,missouri,july 16\r", "\r\n", "albatross,maine,july 20\r", "\r\n" ] } ], "prompt_number": 38 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }