birdnames = """\
Common Teal
Long-tailed Duck
Little Grebe
Albatross
Flamingo
Heron
Stork
Shoebill
Vulture
Bald Eagle""".splitlines()
states = """Kentucky
Missouri
Kansas
Maine
Michigan
New York""".splitlines()
print states
print birdnames
['Kentucky', 'Missouri', 'Kansas', 'Maine', 'Michigan', 'New York'] ['Common Teal', 'Long-tailed Duck', 'Little Grebe', 'Albatross', 'Flamingo', 'Heron', 'Stork', 'Shoebill', 'Vulture', 'Bald Eagle']
import random, datetime
def generate_random_day(year):
doy = int(random.gauss(200, 50))
doy = min(doy, 365)
doy = max(doy, 1)
datestr = "%s %s" % (doy, year)
date = datetime.datetime.strptime(datestr, "%j %Y")
new_date = date.strftime("%B %d")
return new_date.lower()
generate_random_day(2013)
'april 09'
def generate_random_observation():
bird = random.choice(birdnames).lower()
state = random.choice(states).lower()
day = generate_random_day(2013)
return (bird, state, day)
bird, state, day = generate_random_observation()
print bird + '/' + state + '/' + day
common teal/new york/august 18
import csv
fp = file('long-birds.csv', 'w')
w = csv.writer(fp)
for i in range(10000):
row = generate_random_observation()
w.writerow(row)
fp.close()
list(open('long-birds.csv'))[:10]
['heron,michigan,april 24\r\n', 'shoebill,kentucky,july 02\r\n', 'vulture,new york,september 01\r\n', 'flamingo,missouri,may 28\r\n', 'common teal,maine,august 06\r\n', 'heron,maine,august 19\r\n', 'albatross,new york,july 13\r\n', 'albatross,missouri,june 20\r\n', 'heron,kansas,july 07\r\n', 'little grebe,maine,may 24\r\n']
pwd
u'/Users/t/dev/2013-swc-uw/notebooks'