Skip to content

Instantly share code, notes, and snippets.

@simonw
Created October 15, 2017 21:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save simonw/6e9bc5fe6e3e947de98a5f74fab24c76 to your computer and use it in GitHub Desktop.
Save simonw/6e9bc5fe6e3e947de98a5f74fab24c76 to your computer and use it in GitHub Desktop.
Jupyter notebook for extracting the history of shelter populations from my commit log of fema-nss.json
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Collecting GitPython\n",
" Downloading GitPython-2.1.7-py2.py3-none-any.whl (446kB)\n",
"\u001b[K 100% |████████████████████████████████| 450kB 1.9MB/s ta 0:00:01\n",
"\u001b[?25hCollecting gitdb2>=2.0.0 (from GitPython)\n",
" Downloading gitdb2-2.0.3-py2.py3-none-any.whl (63kB)\n",
"\u001b[K 100% |████████████████████████████████| 71kB 6.8MB/s eta 0:00:01\n",
"\u001b[?25hCollecting smmap2>=2.0.0 (from gitdb2>=2.0.0->GitPython)\n",
" Downloading smmap2-2.0.3-py2.py3-none-any.whl\n",
"Installing collected packages: smmap2, gitdb2, GitPython\n",
"Successfully installed GitPython-2.1.7 gitdb2-2.0.3 smmap2-2.0.3\n"
]
}
],
"source": [
"!pip install GitPython"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from git import Repo"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"repo = Repo('/Users/simonw/irma-scraped-data/')"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<git.Repo \"/Users/simonw/irma-scraped-data/.git\">"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"repo"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"item = repo.refs[0]"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"u'rebase finished: refs/heads/master onto ecd7576bc5840f3d7f55906b29f5089babe76ae2'"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"item.message"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"commits = list(repo.iter_commits(paths='fema-nss.json'))"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"commit = commits[0]"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'[\\n {\\n \"STATUS\": \"M\", \\n \"GENERAL_POPULATION\": 161, \\n \"ORG_POC_AFTER_HOURS_PHONE\": \" \", \\n \"PET_ACCOMMODATIONS_CODE\": \" \", \\n \"FACILITY_TYPE\": \"SHELTER\", \\n \"COUNTY_PARISH\": \"LEE\", \\n \"FIPS_CODE\": \" \", \\n \"SCORE\": 100, \\n \"INCIDENT_ID\": 0, \\n \"SHELTER_CLOSED_DATE\": 1505088000000, \\n \"MAILING_CITY\": \" \", \\n \"SHELTER_CODE\": \"GENERAL\", \\n \"SUBFACILITY_CODE\": \"GENPOPSHEL\", \\n \"SELF_SUFFICIENT_ELECTRICITY\": \" \", \\n \"ORG_POC_EMAIL\": \" \", \\n \"ORG_ORGANIZATION_NAME\": \"LEE COUNTY FLORIDA\", \\n \"MAILING_COUNTY_PARISH\": \" \", \\n \"ORG_ORGANIZATION_ID\": 121538, \\n \"ORG_ADDRESS\": \"6310 TECHSTER BLVD, SUITE 7\", \\n \"GEOX\": -81.79918042, \\n \"INCIDENT_NAME\": \" \", \\n \"IN_500_YR_FLOODPLAIN\": \" \", \\n \"ORG_HOTLINE_PHONE\": \" \", \\n \"OBJECTID\": 49536, \\n \"MAILING_STATE\": \" \", \\n \"PET_POPULATION\": 0, \\n \"ORG_HOURS_OF_OPERATION\": \"8\", \\n \"ORG_POC_PHONE\": \" \", \\n \"OTHER_POPULATION_DESCRIPTION\": \" \", \\n \"ORG_ZIP\": \"33912\", \\n \"SHELTER_ID\": 134573, \\n \"SHELTER_OPEN_DATE\": 1504828800000, \\n \"LOC_NAME\": \"GPS\", \\n \"INCIDENT_NUMBER\": \" \", \\n \"TOTAL_POPULATION\": 161, \\n \"GEOY\": 26.42742841, \\n \"ORG_OTHER_PHONE\": \" \", \\n \"MAILING_ADDRESS_2\": \" \", \\n \"IN_SURGE_SLOSH_AREA\": \" \", \\n \"ZIP\": \"33928\", \\n \"MAILING_ADDRESS_1\": \" \", \\n \"ORG_MAIN_PHONE\": \" \", \\n \"ORG_EMAIL\": \" \", \\n \"LONGITUDE\": -81.71324258, \\n \"MAILING_ZIP\": \" \", \\n \"STATE\": \"FL\", \\n \"POPULATION_CODE\": \"GENERAL\", \\n \"PRE_LANDFALL_SHELTER\": \" \", \\n \"ADDRESS_1\": \"9200 Corkscrew Palms Blvd.\", \\n \"INCIDENT_CODE\": \" \", \\n \"ORG_POC_NAME\": \" \", \\n \"MATCH_TYPE\": \"A\", \\n \"ADDRESS_1_OLD\": \"9200 Corkscrew Palms Blvd.\", \\n \"GENERATOR_ONSITE\": \" \", \\n \"ORG_STATE\": \"FL\", \\n \"CITY\": \"ESTERO\", \\n \"POST_IMPACT_CAPACITY\": 0, \\n \"IN_100_YR_FLOODPLAIN\": \" \", \\n \"ORG_FAX\": \" \", \\n \"REPORTING_PERIOD\": \" \", \\n \"EVACUATION_CAPACITY\": 2000, \\n \"SHELTER_NAME\": \"Estero Community Center\", \\n \"ORG_CITY\": \"FORT MYERS\", \\n \"OTHER_POPULATION\": 0, \\n \"SHELTER_STATUS_CODE\": \"OPEN\", \\n \"WHEELCHAIR_ACCESSIBLE\": \" \", \\n \"MEDICAL_NEEDS_POPULATION\": 0, \\n \"PET_ACCOMMODATIONS_DESC\": \" \", \\n \"DATA_SOURCE_ID\": 0, \\n \"ADA_COMPLIANT\": \" \", \\n \"LATITUDE\": 26.41629219, \\n \"MAIL_ADDR_SAME_AS_PHYS_ADDR\": \"YES\", \\n \"FACILITY_USAGE_CODE\": \"EVAC\"\\n }\\n]'"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(commit.tree / 'fema-nss.json').data_stream.read()"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"datetime.datetime(2017, 10, 14, 21, 1, 42, tzinfo=<git.objects.util.tzoffset object at 0x10bd8e450>)"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"commit.authored_datetime"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
"import json\n",
"shelter_history = {}\n",
"for commit in commits:\n",
" content = json.loads((commit.tree / 'fema-nss.json').data_stream.read())\n",
" for shelter in content:\n",
" d = shelter_history.setdefault(shelter['SHELTER_ID'], [])\n",
" d.append((commit.authored_datetime, shelter))\n"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"698"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(shelter_history)"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
"id, history = shelter_history.items()[0]"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"365"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(history)"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(datetime.datetime(2017, 9, 9, 18, 24, 18, tzinfo=<git.objects.util.tzoffset object at 0x14ec19650>),\n",
" {u'ADA_COMPLIANT': None,\n",
" u'ADDRESS_1': u'5000 SE Maricamp Road',\n",
" u'ADDRESS_1_OLD': u'5000 SE Maricamp Road',\n",
" u'CITY': u'OCALA',\n",
" u'COUNTY_PARISH': u'MARION',\n",
" u'DATA_SOURCE_ID': 101,\n",
" u'EVACUATION_CAPACITY': 1233,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'BOTH',\n",
" u'FIPS_CODE': None,\n",
" u'GENERAL_POPULATION': 115,\n",
" u'GENERATOR_ONSITE': u'NO',\n",
" u'GEOX': -82.065,\n",
" u'GEOY': 29.144000000000002,\n",
" u'INCIDENT_CODE': None,\n",
" u'INCIDENT_ID': None,\n",
" u'INCIDENT_NAME': None,\n",
" u'INCIDENT_NUMBER': None,\n",
" u'IN_100_YR_FLOODPLAIN': u'NO',\n",
" u'IN_500_YR_FLOODPLAIN': None,\n",
" u'IN_SURGE_SLOSH_AREA': u'NO',\n",
" u'LATITUDE': -82.064881,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': 29.144326,\n",
" u'MAILING_ADDRESS_1': None,\n",
" u'MAILING_ADDRESS_2': None,\n",
" u'MAILING_CITY': None,\n",
" u'MAILING_COUNTY_PARISH': None,\n",
" u'MAILING_STATE': None,\n",
" u'MAILING_ZIP': None,\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'YES',\n",
" u'MATCH_TYPE': None,\n",
" u'MEDICAL_NEEDS_POPULATION': None,\n",
" u'OBJECTID': 66116,\n",
" u'ORG_ADDRESS': u'700 NW 30th Ave',\n",
" u'ORG_CITY': u'Ocala',\n",
" u'ORG_EMAIL': None,\n",
" u'ORG_FAX': None,\n",
" u'ORG_HOTLINE_PHONE': None,\n",
" u'ORG_HOURS_OF_OPERATION': None,\n",
" u'ORG_MAIN_PHONE': None,\n",
" u'ORG_ORGANIZATION_ID': 119235,\n",
" u'ORG_ORGANIZATION_NAME': u'Marion County',\n",
" u'ORG_OTHER_PHONE': None,\n",
" u'ORG_POC_AFTER_HOURS_PHONE': None,\n",
" u'ORG_POC_EMAIL': None,\n",
" u'ORG_POC_NAME': None,\n",
" u'ORG_POC_PHONE': None,\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'34478',\n",
" u'OTHER_POPULATION': None,\n",
" u'OTHER_POPULATION_DESCRIPTION': None,\n",
" u'PET_ACCOMMODATIONS_CODE': None,\n",
" u'PET_ACCOMMODATIONS_DESC': None,\n",
" u'PET_POPULATION': None,\n",
" u'POPULATION_CODE': None,\n",
" u'POST_IMPACT_CAPACITY': 1233,\n",
" u'PRE_LANDFALL_SHELTER': None,\n",
" u'REPORTING_PERIOD': None,\n",
" u'SCORE': None,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u'NO',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': None,\n",
" u'SHELTER_ID': 350209,\n",
" u'SHELTER_NAME': u'Forest High School',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': None,\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 115,\n",
" u'WHEELCHAIR_ACCESSIBLE': u'NO',\n",
" u'ZIP': u'34480'})"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"history[360]"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(datetime.datetime(2017, 9, 14, 19, 22, 52, tzinfo=<git.objects.util.tzoffset object at 0x10ed7ae10>),\n",
" {u'ADA_COMPLIANT': None,\n",
" u'ADDRESS_1': u'5000 SE Maricamp Road',\n",
" u'ADDRESS_1_OLD': u'5000 SE Maricamp Road',\n",
" u'CITY': u'OCALA',\n",
" u'COUNTY_PARISH': u'MARION',\n",
" u'DATA_SOURCE_ID': 101,\n",
" u'EVACUATION_CAPACITY': 1233,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'BOTH',\n",
" u'FIPS_CODE': None,\n",
" u'GENERAL_POPULATION': 0,\n",
" u'GENERATOR_ONSITE': u'NO',\n",
" u'GEOX': -82.065,\n",
" u'GEOY': 29.144000000000002,\n",
" u'INCIDENT_CODE': None,\n",
" u'INCIDENT_ID': None,\n",
" u'INCIDENT_NAME': None,\n",
" u'INCIDENT_NUMBER': None,\n",
" u'IN_100_YR_FLOODPLAIN': u'NO',\n",
" u'IN_500_YR_FLOODPLAIN': None,\n",
" u'IN_SURGE_SLOSH_AREA': u'NO',\n",
" u'LATITUDE': -82.064881,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': 29.144326,\n",
" u'MAILING_ADDRESS_1': None,\n",
" u'MAILING_ADDRESS_2': None,\n",
" u'MAILING_CITY': None,\n",
" u'MAILING_COUNTY_PARISH': None,\n",
" u'MAILING_STATE': None,\n",
" u'MAILING_ZIP': None,\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'YES',\n",
" u'MATCH_TYPE': None,\n",
" u'MEDICAL_NEEDS_POPULATION': None,\n",
" u'OBJECTID': 66116,\n",
" u'ORG_ADDRESS': u'700 NW 30th Ave',\n",
" u'ORG_CITY': u'Ocala',\n",
" u'ORG_EMAIL': None,\n",
" u'ORG_FAX': None,\n",
" u'ORG_HOTLINE_PHONE': None,\n",
" u'ORG_HOURS_OF_OPERATION': None,\n",
" u'ORG_MAIN_PHONE': None,\n",
" u'ORG_ORGANIZATION_ID': 119235,\n",
" u'ORG_ORGANIZATION_NAME': u'Marion County',\n",
" u'ORG_OTHER_PHONE': None,\n",
" u'ORG_POC_AFTER_HOURS_PHONE': None,\n",
" u'ORG_POC_EMAIL': None,\n",
" u'ORG_POC_NAME': None,\n",
" u'ORG_POC_PHONE': None,\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'34478',\n",
" u'OTHER_POPULATION': None,\n",
" u'OTHER_POPULATION_DESCRIPTION': None,\n",
" u'PET_ACCOMMODATIONS_CODE': None,\n",
" u'PET_ACCOMMODATIONS_DESC': None,\n",
" u'PET_POPULATION': None,\n",
" u'POPULATION_CODE': None,\n",
" u'POST_IMPACT_CAPACITY': 1233,\n",
" u'PRE_LANDFALL_SHELTER': None,\n",
" u'REPORTING_PERIOD': None,\n",
" u'SCORE': None,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u'NO',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': None,\n",
" u'SHELTER_ID': 350209,\n",
" u'SHELTER_NAME': u'Forest High School',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': None,\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 0,\n",
" u'WHEELCHAIR_ACCESSIBLE': u'NO',\n",
" u'ZIP': u'34480'})"
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"history[40]"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {},
"outputs": [],
"source": [
"shelter_population_changes = {}\n",
"shelter_info = {}\n",
"for id, history in shelter_history.items():\n",
" population_changes = []\n",
" prev_population = None\n",
" for dt, details in history:\n",
" population = details['TOTAL_POPULATION']\n",
" if prev_population != population:\n",
" population_changes.append((dt.replace(tzinfo=None), population))\n",
" prev_population = population\n",
" shelter_population_changes[id] = sorted(population_changes, key=lambda p: p[0])\n",
" shelter_info[id] = details"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"698"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(shelter_population_changes)"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(360609,\n",
" [(datetime.datetime(2017, 9, 9, 18, 1, 56), 0),\n",
" (datetime.datetime(2017, 9, 9, 23, 2, 54), 21),\n",
" (datetime.datetime(2017, 9, 10, 6, 43, 8), 48),\n",
" (datetime.datetime(2017, 9, 10, 23, 4, 10), 151),\n",
" (datetime.datetime(2017, 9, 10, 23, 42, 22), 100),\n",
" (datetime.datetime(2017, 9, 11, 8, 22, 53), 151),\n",
" (datetime.datetime(2017, 9, 12, 0, 24, 29), 389),\n",
" (datetime.datetime(2017, 9, 12, 9, 3, 14), 158),\n",
" (datetime.datetime(2017, 9, 12, 16, 4, 46), 20),\n",
" (datetime.datetime(2017, 9, 13, 2, 1, 43), 158),\n",
" (datetime.datetime(2017, 9, 14, 6, 2, 14), 63)])"
]
},
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_population_changes.items()[44]"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(350209,\n",
" {u'ADA_COMPLIANT': None,\n",
" u'ADDRESS_1': u'5000 SE Maricamp Road',\n",
" u'ADDRESS_1_OLD': u'5000 SE Maricamp Road',\n",
" u'CITY': u'OCALA',\n",
" u'COUNTY_PARISH': u'MARION',\n",
" u'DATA_SOURCE_ID': 101,\n",
" u'EVACUATION_CAPACITY': 1233,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'BOTH',\n",
" u'FIPS_CODE': None,\n",
" u'GENERAL_POPULATION': 115,\n",
" u'GENERATOR_ONSITE': u'NO',\n",
" u'GEOX': -82.065,\n",
" u'GEOY': 29.144000000000002,\n",
" u'INCIDENT_CODE': None,\n",
" u'INCIDENT_ID': None,\n",
" u'INCIDENT_NAME': None,\n",
" u'INCIDENT_NUMBER': None,\n",
" u'IN_100_YR_FLOODPLAIN': u'NO',\n",
" u'IN_500_YR_FLOODPLAIN': None,\n",
" u'IN_SURGE_SLOSH_AREA': u'NO',\n",
" u'LATITUDE': -82.064881,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': 29.144326,\n",
" u'MAILING_ADDRESS_1': None,\n",
" u'MAILING_ADDRESS_2': None,\n",
" u'MAILING_CITY': None,\n",
" u'MAILING_COUNTY_PARISH': None,\n",
" u'MAILING_STATE': None,\n",
" u'MAILING_ZIP': None,\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'YES',\n",
" u'MATCH_TYPE': None,\n",
" u'MEDICAL_NEEDS_POPULATION': None,\n",
" u'OBJECTID': 66116,\n",
" u'ORG_ADDRESS': u'700 NW 30th Ave',\n",
" u'ORG_CITY': u'Ocala',\n",
" u'ORG_EMAIL': None,\n",
" u'ORG_FAX': None,\n",
" u'ORG_HOTLINE_PHONE': None,\n",
" u'ORG_HOURS_OF_OPERATION': None,\n",
" u'ORG_MAIN_PHONE': None,\n",
" u'ORG_ORGANIZATION_ID': 119235,\n",
" u'ORG_ORGANIZATION_NAME': u'Marion County',\n",
" u'ORG_OTHER_PHONE': None,\n",
" u'ORG_POC_AFTER_HOURS_PHONE': None,\n",
" u'ORG_POC_EMAIL': None,\n",
" u'ORG_POC_NAME': None,\n",
" u'ORG_POC_PHONE': None,\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'34478',\n",
" u'OTHER_POPULATION': None,\n",
" u'OTHER_POPULATION_DESCRIPTION': None,\n",
" u'PET_ACCOMMODATIONS_CODE': None,\n",
" u'PET_ACCOMMODATIONS_DESC': None,\n",
" u'PET_POPULATION': None,\n",
" u'POPULATION_CODE': None,\n",
" u'POST_IMPACT_CAPACITY': 1233,\n",
" u'PRE_LANDFALL_SHELTER': None,\n",
" u'REPORTING_PERIOD': None,\n",
" u'SCORE': None,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u'NO',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': None,\n",
" u'SHELTER_ID': 350209,\n",
" u'SHELTER_NAME': u'Forest High School',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': None,\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 115,\n",
" u'WHEELCHAIR_ACCESSIBLE': u'NO',\n",
" u'ZIP': u'34480'})"
]
},
"execution_count": 55,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_info.items()[0]"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [],
"source": [
"max_per_days_per_shelter = {}\n",
"for id, history in shelter_population_changes.items():\n",
" # figure out max-per-days for this shelter\n",
" max_per_days = {}\n",
" for dt, count in history:\n",
" date = dt.date()\n",
" current = max_per_days.get(date)\n",
" if current != count:\n",
" max_per_days[date] = count\n",
" max_per_days_per_shelter[id] = max_per_days"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"698"
]
},
"execution_count": 61,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(max_per_days_per_shelter)"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[(350209,\n",
" {datetime.date(2017, 9, 9): 115,\n",
" datetime.date(2017, 9, 10): 0,\n",
" datetime.date(2017, 9, 11): 387,\n",
" datetime.date(2017, 9, 14): 150,\n",
" datetime.date(2017, 9, 17): 0}),\n",
" (350210,\n",
" {datetime.date(2017, 9, 9): 86,\n",
" datetime.date(2017, 9, 10): 0,\n",
" datetime.date(2017, 9, 11): 505,\n",
" datetime.date(2017, 9, 12): 0}),\n",
" (350213,\n",
" {datetime.date(2017, 9, 9): 7,\n",
" datetime.date(2017, 9, 10): 0,\n",
" datetime.date(2017, 9, 12): 129,\n",
" datetime.date(2017, 9, 14): 0}),\n",
" (135174, {datetime.date(2017, 9, 11): 0, datetime.date(2017, 9, 12): 41}),\n",
" (135175, {datetime.date(2017, 9, 14): 0}),\n",
" (135177,\n",
" {datetime.date(2017, 9, 10): 0,\n",
" datetime.date(2017, 9, 12): 490,\n",
" datetime.date(2017, 9, 14): 600}),\n",
" (70999,\n",
" {datetime.date(2017, 9, 9): 20,\n",
" datetime.date(2017, 9, 10): 83,\n",
" datetime.date(2017, 9, 11): 111}),\n",
" (71000,\n",
" {datetime.date(2017, 9, 9): 145,\n",
" datetime.date(2017, 9, 10): 322,\n",
" datetime.date(2017, 9, 11): 238}),\n",
" (135173, {datetime.date(2017, 9, 11): 0, datetime.date(2017, 9, 12): 19}),\n",
" (135211, {datetime.date(2017, 9, 12): 0})]"
]
},
"execution_count": 62,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"max_per_days_per_shelter.items()[:10]"
]
},
{
"cell_type": "code",
"execution_count": 63,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'900 W. Ohio Avenue',\n",
" u'ADDRESS_1_OLD': u'900 W. Ohio Avenue',\n",
" u'CITY': u'ORANGE CITY',\n",
" u'COUNTY_PARISH': u'VOLUSIA',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 1,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 20,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.30895435,\n",
" u'GEOY': 28.93947228,\n",
" u'INCIDENT_CODE': None,\n",
" u'INCIDENT_ID': None,\n",
" u'INCIDENT_NAME': None,\n",
" u'INCIDENT_NUMBER': None,\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 28.94567572,\n",
" u'LOC_NAME': u'Street',\n",
" u'LONGITUDE': -81.3116102,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': None,\n",
" u'OBJECTID': 50003,\n",
" u'ORG_ADDRESS': u'49 Keyton Avenue',\n",
" u'ORG_CITY': u'Daytona Beach',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u' ',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 119266,\n",
" u'ORG_ORGANIZATION_NAME': u'Volusia County Emergency Management',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'32124',\n",
" u'OTHER_POPULATION': None,\n",
" u'OTHER_POPULATION_DESCRIPTION': None,\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': None,\n",
" u'POPULATION_CODE': u'GENERAL',\n",
" u'POST_IMPACT_CAPACITY': 1,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': None,\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'GENERAL',\n",
" u'SHELTER_ID': 70999,\n",
" u'SHELTER_NAME': u'River Springs Middle School',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 20,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'32763'}"
]
},
"execution_count": 63,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_info[70999]"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"wtf? 353256 2017-09-10 9102017\n"
]
}
],
"source": [
"max_per_days_total = {}\n",
"shelter_days_to_counts = {}\n",
"for id, max_per_days in max_per_days_per_shelter.items():\n",
" for day, count in max_per_days.items():\n",
" shelter_days_to_counts[(id, day)] = count\n",
" if count > 4000:\n",
" print 'wtf? %s %s %s' % (id, day, count)\n",
" continue\n",
" max_per_days_total[day] = max_per_days_total.get(day, 0) + count"
]
},
{
"cell_type": "code",
"execution_count": 89,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{datetime.date(2017, 9, 9): 30992,\n",
" datetime.date(2017, 9, 10): 83867,\n",
" datetime.date(2017, 9, 11): 112729,\n",
" datetime.date(2017, 9, 12): 53973,\n",
" datetime.date(2017, 9, 13): 10702,\n",
" datetime.date(2017, 9, 14): 4466,\n",
" datetime.date(2017, 9, 15): 3984,\n",
" datetime.date(2017, 9, 17): 2215,\n",
" datetime.date(2017, 9, 18): 2271,\n",
" datetime.date(2017, 9, 19): 2097,\n",
" datetime.date(2017, 9, 20): 1511,\n",
" datetime.date(2017, 9, 21): 1508,\n",
" datetime.date(2017, 9, 22): 1068,\n",
" datetime.date(2017, 9, 23): 945,\n",
" datetime.date(2017, 9, 24): 618,\n",
" datetime.date(2017, 9, 25): 3133,\n",
" datetime.date(2017, 9, 26): 664,\n",
" datetime.date(2017, 9, 27): 780,\n",
" datetime.date(2017, 9, 28): 587,\n",
" datetime.date(2017, 9, 29): 516,\n",
" datetime.date(2017, 9, 30): 400,\n",
" datetime.date(2017, 10, 1): 523,\n",
" datetime.date(2017, 10, 2): 508,\n",
" datetime.date(2017, 10, 3): 447,\n",
" datetime.date(2017, 10, 4): 398,\n",
" datetime.date(2017, 10, 5): 336,\n",
" datetime.date(2017, 10, 6): 274,\n",
" datetime.date(2017, 10, 7): 586,\n",
" datetime.date(2017, 10, 8): 1155,\n",
" datetime.date(2017, 10, 9): 185,\n",
" datetime.date(2017, 10, 10): 172,\n",
" datetime.date(2017, 10, 11): 153,\n",
" datetime.date(2017, 10, 12): 151,\n",
" datetime.date(2017, 10, 14): 161}"
]
},
"execution_count": 89,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"max_per_days_total"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {},
"outputs": [],
"source": [
"pairs = shelter_days_to_counts.items()"
]
},
{
"cell_type": "code",
"execution_count": 70,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"pairs.sort(key = lambda p: p[1])"
]
},
{
"cell_type": "code",
"execution_count": 72,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[((295773, datetime.date(2017, 9, 10)), 1350),\n",
" ((134713, datetime.date(2017, 9, 10)), 1400),\n",
" ((134774, datetime.date(2017, 9, 11)), 1400),\n",
" ((70967, datetime.date(2017, 9, 11)), 1410),\n",
" ((70966, datetime.date(2017, 9, 11)), 1436),\n",
" ((360143, datetime.date(2017, 9, 10)), 1436),\n",
" ((70959, datetime.date(2017, 9, 11)), 1528),\n",
" ((134793, datetime.date(2017, 9, 10)), 1637),\n",
" ((70956, datetime.date(2017, 9, 11)), 1676),\n",
" ((333144, datetime.date(2017, 9, 10)), 1745),\n",
" ((134317, datetime.date(2017, 9, 10)), 1756),\n",
" ((134767, datetime.date(2017, 9, 11)), 1800),\n",
" ((70953, datetime.date(2017, 9, 11)), 1864),\n",
" ((134212, datetime.date(2017, 9, 10)), 1955),\n",
" ((133759, datetime.date(2017, 9, 10)), 2087),\n",
" ((346702, datetime.date(2017, 9, 12)), 2100),\n",
" ((134040, datetime.date(2017, 9, 10)), 2600),\n",
" ((346701, datetime.date(2017, 9, 12)), 3301),\n",
" ((134870, datetime.date(2017, 9, 11)), 3613),\n",
" ((135254, datetime.date(2017, 9, 10)), 9102017)]"
]
},
"execution_count": 72,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pairs[-20:]"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 0,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 0,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'}"
]
},
"execution_count": 78,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_info[135254]"
]
},
{
"cell_type": "code",
"execution_count": 124,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[(datetime.datetime(2017, 9, 11, 19, 4, 20, tzinfo=<git.objects.util.tzoffset object at 0x124b5b910>),\n",
" {u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 4,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 4,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'}),\n",
" (datetime.datetime(2017, 9, 11, 19, 1, 38, tzinfo=<git.objects.util.tzoffset object at 0x124fb5550>),\n",
" {u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 4,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 4,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'}),\n",
" (datetime.datetime(2017, 9, 11, 18, 43, 40, tzinfo=<git.objects.util.tzoffset object at 0x12557f650>),\n",
" {u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 4,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 4,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'}),\n",
" (datetime.datetime(2017, 9, 11, 18, 25, 12, tzinfo=<git.objects.util.tzoffset object at 0x125b1dad0>),\n",
" {u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 4,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 4,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'}),\n",
" (datetime.datetime(2017, 9, 11, 18, 22, 30, tzinfo=<git.objects.util.tzoffset object at 0x125f98fd0>),\n",
" {u'ADA_COMPLIANT': u' ',\n",
" u'ADDRESS_1': u'27200 Kent Rd',\n",
" u'ADDRESS_1_OLD': u'27200 Kent Rd',\n",
" u'CITY': u'BONITA SPRINGS',\n",
" u'COUNTY_PARISH': u'Lee',\n",
" u'DATA_SOURCE_ID': 0,\n",
" u'EVACUATION_CAPACITY': 350,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'EVAC',\n",
" u'FIPS_CODE': u' ',\n",
" u'GENERAL_POPULATION': 4,\n",
" u'GENERATOR_ONSITE': u' ',\n",
" u'GEOX': -81.74668083,\n",
" u'GEOY': 26.34313044,\n",
" u'INCIDENT_CODE': u' ',\n",
" u'INCIDENT_ID': 0,\n",
" u'INCIDENT_NAME': u' ',\n",
" u'INCIDENT_NUMBER': u' ',\n",
" u'IN_100_YR_FLOODPLAIN': u' ',\n",
" u'IN_500_YR_FLOODPLAIN': u' ',\n",
" u'IN_SURGE_SLOSH_AREA': u' ',\n",
" u'LATITUDE': 26.35848732,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': -81.83013758,\n",
" u'MAILING_ADDRESS_1': u' ',\n",
" u'MAILING_ADDRESS_2': u' ',\n",
" u'MAILING_CITY': u' ',\n",
" u'MAILING_COUNTY_PARISH': u' ',\n",
" u'MAILING_STATE': u' ',\n",
" u'MAILING_ZIP': u' ',\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'NO',\n",
" u'MATCH_TYPE': u'A',\n",
" u'MEDICAL_NEEDS_POPULATION': 0,\n",
" u'OBJECTID': 54494,\n",
" u'ORG_ADDRESS': u'6310 TECHSTER BLVD, SUITE 7',\n",
" u'ORG_CITY': u'FORT MYERS',\n",
" u'ORG_EMAIL': u' ',\n",
" u'ORG_FAX': u' ',\n",
" u'ORG_HOTLINE_PHONE': u' ',\n",
" u'ORG_HOURS_OF_OPERATION': u'8',\n",
" u'ORG_MAIN_PHONE': u' ',\n",
" u'ORG_ORGANIZATION_ID': 121538,\n",
" u'ORG_ORGANIZATION_NAME': u'LEE COUNTY FLORIDA',\n",
" u'ORG_OTHER_PHONE': u' ',\n",
" u'ORG_POC_AFTER_HOURS_PHONE': u' ',\n",
" u'ORG_POC_EMAIL': u' ',\n",
" u'ORG_POC_NAME': u' ',\n",
" u'ORG_POC_PHONE': u' ',\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'33912',\n",
" u'OTHER_POPULATION': 0,\n",
" u'OTHER_POPULATION_DESCRIPTION': u' ',\n",
" u'PET_ACCOMMODATIONS_CODE': u' ',\n",
" u'PET_ACCOMMODATIONS_DESC': u' ',\n",
" u'PET_POPULATION': 0,\n",
" u'POPULATION_CODE': u'OTHER',\n",
" u'POST_IMPACT_CAPACITY': 0,\n",
" u'PRE_LANDFALL_SHELTER': u' ',\n",
" u'REPORTING_PERIOD': u' ',\n",
" u'SCORE': 100,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u' ',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': u'OTHER',\n",
" u'SHELTER_ID': 135254,\n",
" u'SHELTER_NAME': u'Bonita Springs YMCA',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': u'M',\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 4,\n",
" u'WHEELCHAIR_ACCESSIBLE': u' ',\n",
" u'ZIP': u'34134'})]"
]
},
"execution_count": 124,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sorted(shelter_history[135254], key=lambda p: p[1]['TOTAL_POPULATION'], reverse=True)[:5]"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2017-09-09\t30992\n",
"2017-09-10\t83867\n",
"2017-09-11\t112729\n",
"2017-09-12\t53973\n",
"2017-09-13\t10702\n",
"2017-09-14\t4466\n",
"2017-09-15\t3984\n",
"2017-09-17\t2215\n",
"2017-09-18\t2271\n",
"2017-09-19\t2097\n",
"2017-09-20\t1511\n",
"2017-09-21\t1508\n",
"2017-09-22\t1068\n",
"2017-09-23\t945\n",
"2017-09-24\t618\n",
"2017-09-25\t3133\n",
"2017-09-26\t664\n",
"2017-09-27\t780\n",
"2017-09-28\t587\n",
"2017-09-29\t516\n",
"2017-09-30\t400\n",
"2017-10-01\t523\n",
"2017-10-02\t508\n",
"2017-10-03\t447\n",
"2017-10-04\t398\n",
"2017-10-05\t336\n",
"2017-10-06\t274\n",
"2017-10-07\t586\n",
"2017-10-08\t1155\n",
"2017-10-09\t185\n",
"2017-10-10\t172\n",
"2017-10-11\t153\n",
"2017-10-12\t151\n",
"2017-10-14\t161\n"
]
}
],
"source": [
"for pair in sorted(max_per_days_total.items()):\n",
" print '%s\\t%s' % pair"
]
},
{
"cell_type": "code",
"execution_count": 94,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"((70983, datetime.date(2017, 9, 11)), 318)"
]
},
"execution_count": 94,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_days_to_counts.items()[44]"
]
},
{
"cell_type": "code",
"execution_count": 96,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(350209,\n",
" {datetime.date(2017, 9, 9): 115,\n",
" datetime.date(2017, 9, 10): 0,\n",
" datetime.date(2017, 9, 11): 387,\n",
" datetime.date(2017, 9, 14): 150,\n",
" datetime.date(2017, 9, 17): 0})"
]
},
"execution_count": 96,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"max_per_days_per_shelter.items()[0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I want TSV of date -> column-per-shelter"
]
},
{
"cell_type": "code",
"execution_count": 97,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"shelter_populations_by_date = {}"
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {},
"outputs": [],
"source": [
"import datetime\n",
"min_date = datetime.date(2017, 9, 9)\n",
"max_date = datetime.date(2017, 10, 14)\n",
"dates = []\n",
"current = min_date\n",
"while current <= max_date:\n",
" dates.append(current)\n",
" current += datetime.timedelta(days=1)"
]
},
{
"cell_type": "code",
"execution_count": 103,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"for id, info in max_per_days_per_shelter.items():\n",
" for date in dates:\n",
" count = info.get(date, 0)\n",
" shelter_populations_by_date.setdefault(date, {})[id] = count"
]
},
{
"cell_type": "code",
"execution_count": 113,
"metadata": {},
"outputs": [],
"source": [
"fp = open('/tmp/shelters.tsv', 'w')\n",
"lines = []\n",
"header = []\n",
"for date, info in sorted(shelter_populations_by_date.items()):\n",
" bits = [str(date)]\n",
" header = []\n",
" for id, count in sorted(info.items()):\n",
" bits.append(count)\n",
" header.append(id)\n",
" lines.append(bits)\n",
"fp.write('\\t'.join(['date'] + map(str, header)) + '\\n')\n",
"for line in lines:\n",
" fp.write('\\t'.join(map(str, line)) + '\\n')\n",
"fp.close()"
]
},
{
"cell_type": "code",
"execution_count": 116,
"metadata": {},
"outputs": [],
"source": [
"!cat /tmp/shelters.tsv | pbcopy"
]
},
{
"cell_type": "code",
"execution_count": 117,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"698"
]
},
"execution_count": 117,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(max_per_days_per_shelter.items())"
]
},
{
"cell_type": "code",
"execution_count": 118,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"shelter_details = []\n",
"for id, history in max_per_days_per_shelter.items():\n",
" history_s = {str(k): v for k, v in history.items()}\n",
" info = dict(shelter_info[id].items())\n",
" info['history'] = history_s\n",
" shelter_details.append(info)\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 119,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"698"
]
},
"execution_count": 119,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(shelter_details)"
]
},
{
"cell_type": "code",
"execution_count": 121,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{u'ADA_COMPLIANT': None,\n",
" u'ADDRESS_1': u'5000 SE Maricamp Road',\n",
" u'ADDRESS_1_OLD': u'5000 SE Maricamp Road',\n",
" u'CITY': u'OCALA',\n",
" u'COUNTY_PARISH': u'MARION',\n",
" u'DATA_SOURCE_ID': 101,\n",
" u'EVACUATION_CAPACITY': 1233,\n",
" u'FACILITY_TYPE': u'SHELTER',\n",
" u'FACILITY_USAGE_CODE': u'BOTH',\n",
" u'FIPS_CODE': None,\n",
" u'GENERAL_POPULATION': 115,\n",
" u'GENERATOR_ONSITE': u'NO',\n",
" u'GEOX': -82.065,\n",
" u'GEOY': 29.144000000000002,\n",
" u'INCIDENT_CODE': None,\n",
" u'INCIDENT_ID': None,\n",
" u'INCIDENT_NAME': None,\n",
" u'INCIDENT_NUMBER': None,\n",
" u'IN_100_YR_FLOODPLAIN': u'NO',\n",
" u'IN_500_YR_FLOODPLAIN': None,\n",
" u'IN_SURGE_SLOSH_AREA': u'NO',\n",
" u'LATITUDE': -82.064881,\n",
" u'LOC_NAME': u'GPS',\n",
" u'LONGITUDE': 29.144326,\n",
" u'MAILING_ADDRESS_1': None,\n",
" u'MAILING_ADDRESS_2': None,\n",
" u'MAILING_CITY': None,\n",
" u'MAILING_COUNTY_PARISH': None,\n",
" u'MAILING_STATE': None,\n",
" u'MAILING_ZIP': None,\n",
" u'MAIL_ADDR_SAME_AS_PHYS_ADDR': u'YES',\n",
" u'MATCH_TYPE': None,\n",
" u'MEDICAL_NEEDS_POPULATION': None,\n",
" u'OBJECTID': 66116,\n",
" u'ORG_ADDRESS': u'700 NW 30th Ave',\n",
" u'ORG_CITY': u'Ocala',\n",
" u'ORG_EMAIL': None,\n",
" u'ORG_FAX': None,\n",
" u'ORG_HOTLINE_PHONE': None,\n",
" u'ORG_HOURS_OF_OPERATION': None,\n",
" u'ORG_MAIN_PHONE': None,\n",
" u'ORG_ORGANIZATION_ID': 119235,\n",
" u'ORG_ORGANIZATION_NAME': u'Marion County',\n",
" u'ORG_OTHER_PHONE': None,\n",
" u'ORG_POC_AFTER_HOURS_PHONE': None,\n",
" u'ORG_POC_EMAIL': None,\n",
" u'ORG_POC_NAME': None,\n",
" u'ORG_POC_PHONE': None,\n",
" u'ORG_STATE': u'FL',\n",
" u'ORG_ZIP': u'34478',\n",
" u'OTHER_POPULATION': None,\n",
" u'OTHER_POPULATION_DESCRIPTION': None,\n",
" u'PET_ACCOMMODATIONS_CODE': None,\n",
" u'PET_ACCOMMODATIONS_DESC': None,\n",
" u'PET_POPULATION': None,\n",
" u'POPULATION_CODE': None,\n",
" u'POST_IMPACT_CAPACITY': 1233,\n",
" u'PRE_LANDFALL_SHELTER': None,\n",
" u'REPORTING_PERIOD': None,\n",
" u'SCORE': None,\n",
" u'SELF_SUFFICIENT_ELECTRICITY': u'NO',\n",
" u'SHELTER_CLOSED_DATE': None,\n",
" u'SHELTER_CODE': None,\n",
" u'SHELTER_ID': 350209,\n",
" u'SHELTER_NAME': u'Forest High School',\n",
" u'SHELTER_OPEN_DATE': 1504915200000,\n",
" u'SHELTER_STATUS_CODE': u'OPEN',\n",
" u'STATE': u'FL',\n",
" u'STATUS': None,\n",
" u'SUBFACILITY_CODE': u'GENPOPSHEL',\n",
" u'TOTAL_POPULATION': 115,\n",
" u'WHEELCHAIR_ACCESSIBLE': u'NO',\n",
" u'ZIP': u'34480',\n",
" 'history': {'2017-09-09': 115,\n",
" '2017-09-10': 0,\n",
" '2017-09-11': 387,\n",
" '2017-09-14': 150,\n",
" '2017-09-17': 0}}"
]
},
"execution_count": 121,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"shelter_details[0]"
]
},
{
"cell_type": "code",
"execution_count": 122,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"open('/tmp/shelters-history.json', 'w').write(json.dumps(shelter_details, indent=2))"
]
},
{
"cell_type": "code",
"execution_count": 123,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"!cat /tmp/shelters-history.json | pbcopy"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.12"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment