Created
October 15, 2017 21:20
-
-
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
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"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