{ "metadata": { "name": "", "signature": "sha256:d3fe3825e4136fc89103cbaf0c31bbb5a3cdf33bc664c635c56859481bc9c126" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Background" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This script combines building geometries and energy consumption information from publicly available New York City data, and then exports data to GeoJSON and TopoJSON formats for interactive visualization with d3." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Most of the heavy lifting is done by Pandas. GeoPandas is used to help manage the geometry data. You will need both of these installed in order to run this code. If you wish to perform the GeoJSON to TopoJSON included at the very end of this script then you will also need to have TopoJSON installed (notes are included for this below)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import os, re\n", "from pandas import *\n", "from geopandas import *\n", "pylab.rcParams['savefig.dpi'] = 100" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Data Collection and Tidying" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Building Geometry" ] }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Data Source" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The data for building footprints, heights and elevations was downloaded from NYC Open Data:\n", "\n", "https://data.cityofnewyork.us/Housing-Development/Building-Footprints/tb92-6tj8\n", "\n", "https://data.cityofnewyork.us/download/tb92-6tj8/application/zip\n", "\n", "\n", "The zip file contains a metadata file with some explanation of the data. The data is contained in a Shapefile." ] }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Cleaning and Formatting" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that the building_1214_metadata.htm file that makes part of the downloaded zip describes a different map projection specification (in its 'well-known-text' field) than what is found in the building_1214.prj file. The metadata looks to be correct and the .prj file incorrect - the geometry data in the shape file is in feet rather than in longitude-latitude. So the 'well-known-text' field from the metadata file must be copied into the .prj file before reading the shape file with GeoPandas (else all variety of headaches arise when trying to translate and/or export to GeoJSON, as I discovered the hard way).\n", "\n", "The shape file is 216 MB, so be prepared to wait for the following command - it takes about 4 minutes on my mac air." ] }, { "cell_type": "code", "collapsed": false, "input": [ "shpfile = 'building_footprints_shape_webmercator_12-14/building_1214.shp'\n", "bldgs = GeoDataFrame.from_file(shpfile)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "print 'number of rows:\\t' + str(len(bldgs))\n", "print 'columns:\\t' + str(bldgs.columns)\n", "print 'crs:\\t\\t' + str(bldgs.crs) # projection info for the geometry data" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "number of rows:\t1082381\n", "columns:\tIndex([u'BBL', u'BIN', u'BUILDING_T', u'DOITT_ID', u'FEATURE_CO', u'GROUND_ELE', u'HEIGHT_ROO', u'LAST_MODIF', u'NAME', u'OBJECTID', u'SUB_FEATUR', u'Shape_Area', u'Shape_Leng', u'geometry'], dtype='object')\n", "crs:\t\t{'init': u'epsg:2263'}\n" ] } ], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are 1,082,381 buildings in this dataset. Note that the geometry values are in feet, using the EPSG 2263 projection (as specified in the source metadata file).\n", "\n", "For clarity, we revise the table to only include the columns we are interested in. Note that 'BBL' stands for 'Borough - Block - Lot number'. This column is shared with the energy data described below, and will be used as a key for merging the tables, so we make it an index here. For convenience we add a new column 'boro' (keeping with traditional NY spelling) which contains the borough as a single-character string: '1'=Manhattan, '2'=Bronx, etc." ] }, { "cell_type": "code", "collapsed": false, "input": [ "def boronum(bbl):\n", " return int(bbl[0])\n", "boro = bldgs['BBL'].apply(boronum)\n", "bldgs['boro'] = boro\n", "bldgs = bldgs[['BBL','boro','GROUND_ELE','HEIGHT_ROO','Shape_Area','Shape_Leng','geometry']]\n", "bldgs.set_index('BBL', inplace=True)\n", "bldgs.sort(inplace=True)\n", "bldgs.head()" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
boroGROUND_ELEHEIGHT_ROOShape_AreaShape_Lenggeometry
BBL
1000010010 1 9 10.29 277.908100 68.170905 POLYGON ((-8239895.129312261 4966979.423426831...
1000010010 1 10 21.52 3198.675255 365.577623 POLYGON ((-8240318.942692845 4966178.186055238...
1000010010 1 25 29.67 3863.966910 256.501983 POLYGON ((-8239093.847102767 4966770.272564691...
1000010010 1 7 26.66 3138.298489 240.395131 POLYGON ((-8239010.691476121 4966850.24966739,...
1000010010 1 11 28.60 3509.856484 301.591446 POLYGON ((-8239472.205369915 4966449.2249446, ...
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 4, "text": [ " boro GROUND_ELE HEIGHT_ROO Shape_Area Shape_Leng \\\n", "BBL \n", "1000010010 1 9 10.29 277.908100 68.170905 \n", "1000010010 1 10 21.52 3198.675255 365.577623 \n", "1000010010 1 25 29.67 3863.966910 256.501983 \n", "1000010010 1 7 26.66 3138.298489 240.395131 \n", "1000010010 1 11 28.60 3509.856484 301.591446 \n", "\n", " geometry \n", "BBL \n", "1000010010 POLYGON ((-8239895.129312261 4966979.423426831... \n", "1000010010 POLYGON ((-8240318.942692845 4966178.186055238... \n", "1000010010 POLYGON ((-8239093.847102767 4966770.272564691... \n", "1000010010 POLYGON ((-8239010.691476121 4966850.24966739,... \n", "1000010010 POLYGON ((-8239472.205369915 4966449.2249446, ... " ] } ], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Although Cartesian geometry in feet is useful for many purposes, it is not great for browser-based mapping with standard js libraries which expect geometries in longitude-latitude. We thus add a new column with the geometry projected to EPSG 4326, which is the standard geo description used in browser-based mapping." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgs['geometry_latlon'] = bldgs['geometry'].to_crs(epsg=4326)\n", "bldgs.head()" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
boroGROUND_ELEHEIGHT_ROOShape_AreaShape_Lenggeometrygeometry_latlon
BBL
1000010010 1 9 10.29 277.908100 68.170905 POLYGON ((-8239895.129312261 4966979.423426831... POLYGON ((-112.6757750753299 48.09341020820187...
1000010010 1 10 21.52 3198.675255 365.577623 POLYGON ((-8240318.942692845 4966178.186055238... POLYGON ((-112.6759406036311 48.09094854809784...
1000010010 1 25 29.67 3863.966910 256.501983 POLYGON ((-8239093.847102767 4966770.272564691... POLYGON ((-112.6724726056846 48.09382693018913...
1000010010 1 7 26.66 3138.298489 240.395131 POLYGON ((-8239010.691476121 4966850.24966739,... POLYGON ((-112.6723061851977 48.09412009655221...
1000010010 1 11 28.60 3509.856484 301.591446 POLYGON ((-8239472.205369915 4966449.2249446, ... POLYGON ((-112.6733040928157 48.09259833372172...
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 5, "text": [ " boro GROUND_ELE HEIGHT_ROO Shape_Area Shape_Leng \\\n", "BBL \n", "1000010010 1 9 10.29 277.908100 68.170905 \n", "1000010010 1 10 21.52 3198.675255 365.577623 \n", "1000010010 1 25 29.67 3863.966910 256.501983 \n", "1000010010 1 7 26.66 3138.298489 240.395131 \n", "1000010010 1 11 28.60 3509.856484 301.591446 \n", "\n", " geometry \\\n", "BBL \n", "1000010010 POLYGON ((-8239895.129312261 4966979.423426831... \n", "1000010010 POLYGON ((-8240318.942692845 4966178.186055238... \n", "1000010010 POLYGON ((-8239093.847102767 4966770.272564691... \n", "1000010010 POLYGON ((-8239010.691476121 4966850.24966739,... \n", "1000010010 POLYGON ((-8239472.205369915 4966449.2249446, ... \n", "\n", " geometry_latlon \n", "BBL \n", "1000010010 POLYGON ((-112.6757750753299 48.09341020820187... \n", "1000010010 POLYGON ((-112.6759406036311 48.09094854809784... \n", "1000010010 POLYGON ((-112.6724726056846 48.09382693018913... \n", "1000010010 POLYGON ((-112.6723061851977 48.09412009655221... \n", "1000010010 POLYGON ((-112.6733040928157 48.09259833372172... " ] } ], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note the problem here though. These first few buildings in the dataset are located on Governor's Island (just south of the island of Manhattan), and we know that the longitude and latitude of the center of the island is 40.6914\u00b0 N, 74.0161\u00b0 W (ref: [google search](https://www.google.com/search?q=nyc+lat+long&ie=utf-8&oe=utf-8#q=nyc+governor%27s+island+lat+long)), but our conversion notes them as approximately 48.1\u00b0 N, 112.7\u00b0 W. Further investigation of the graphs (below) suggests that the result is also rotated. Something is incorrect about this conversion - if I figure out what, I will post a revision to this document. But for the immediate purposes of data visualization we can use the conversion as it stands, since the resulting maps look to be generally correct, just translated and rotated (or possibly scaled improperly)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# notes for further investigation of the conversion issue: \n", "# GeoPandas uses pyproj; the code below provides an initial suggestion that something might be amiss with the units handling\n", "#\n", "#import pyproj\n", "#x1 = -8239895.129312261\n", "#y1 = 4966979.423426831\n", "#wgs84 = pyproj.Proj(\"+init=EPSG:4326\") # LatLon with WGS84 datum used by GPS units and Google Earth\n", "#epsg2263 = pyproj.Proj(\"+init=EPSG:2263\",preserve_units=True) # local NYC coordinate system\n", "#print pyproj.transform(epsg2263, wgs84, x1, y1)\n", "#conv = 0.3048\n", "#print pyproj.transform(epsg2263, wgs84, x1*conv, y1*conv)\n", "#\n", "# outputs:\n", "# (-112.67577507532987, 48.093410208201874)\n", "# (-87.23011424552195, 43.594327921961934)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Quick Verification" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A couple of quick graphs to ensure that the data format is roughly as expected." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgs.head(500).plot()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n2gpo165di7Te7t0vyyZoI0eO1IbeRzj4PtMmIiLCTywBrVixok6ePLlI21gesdlhwwggPj6e4xLs\n4gAAEtVJREFU66+/ngoVKiAi9OvfH4AFCxaQnp5eqHWlp6czZcoUrr32Wv70p+xhql544QU2/v47\n4AyX33vvPZKTk3n11Vddm0GDBjFq1CgOHTrEzTffXKjtM3LHJkaMck96ejphYWE8+eSTrF+/ng4d\nOhRq+ePGjWPYsAdR9bhpl112GU2bNuWee+7h6t692bJ5s5s3e/ZsvvnmG8AJrDpnzhyOHTvGI488\nQmio/UsWN9YTNMo106ZN49xzz2PMmDFER0czc+ZMHn/8ccLCwgqtjh07dvgJIMDo0aMJCQlhwIAB\nXNa9+ymvT0xMZObMmSaAJYS960a55bfffuPWIUNIPnGChx56iAMHDvDcc88VWvkpKSl89NFHNG3a\nNFteu3bt3NcbNmygX79+XHHFFdx8882Eh4cXWhuMM8dE0Ci33HPPPSSfOOGe//Of/yyUcrds2cLd\nd9/N119/7aZ1vrQzu3fvpm+fvqxYsYJ58+a5eSkpKXl+bohR/Nhw2Ci3jB49mppnxxBdtSobN25k\n1KhRrFmzpsDlLV++nJ07d7Jp0yY/AQS48447mTplKsnJyVxyySXZrs1v1GijGMnPVHJpPLAlMsYp\nOHTokCYlJenUqVPPKLjouHHjNDQ0TOvVO0f379/v96jLnI6OHTtpz5699MMPP9STJ08WgWdGILZt\nzjByoFq1alStWpWOHTu6aYsXL6Z9+/Z5ut7j8fDggw8ybtw4atW6iD171vKXv1xBr169mDx5Mhec\nfz6ZHg9r1671u+7dd9/J8V6hUfqw4bBRrklJSeGKK67gwIEDAISEhPL+++/nabtceno68fHxjBs3\njvPPv4nbb19Bz57j+e9/V7F27Tp2797N6l9/ZeHChYQFzOwOHz68SPwxCh8TQaNcIyIsXLjQPc/M\nzOC/P//MX//6NzwezymuhKlTp/Lll18SF3c5118/hQoVQmjT5naaN7+BlStX0KdPHwBq1KhB586d\nqRgeTt++fRk/fjwzZ84sUr+MwsNE0CjXREREMGbMGMLCwwmrWIlzL+pKZNWabNq0kV9++eWU1958\n881cemkXtmyZz9q1n7npN9wwFYClS5cya9YsAGZ++SXJKSl8+umn3HvvvYhI0TllFCr5EkER6SIi\nX4jIThHxiMg1Odg8IyK7RCRZROaISKOA/AgReVVEDojIMRGZLiIxATbVRWSyiBwRkUMi8raIRGIY\nBaBfv35ERERw9rnns/XnBZw4vJ9Zs2bRqlX27W3gDKHXrl1LhQoV+OqrWcTFNeCzzwaye/cqwLlP\nWL26c78va9tb5cqVLYpLGSW/n1plYBVwr/fcL0CbiDwM3AfcCXQATgDfiEhFH7ME4GrgeqArUAf4\nNKCeyUBz4HKvbRfgzXy21QhSTpw4weLFi93z6tWrc9uQIeza8JOb5jtETk1NdV+np6fT+ZJLaNGi\nBaNGjSIyMpJvv51LVFQlPvqoF4cObeaDDy7n4EEnzl+nTp2KwSOjSMnPVLL6L03xAPE+5wLsBob7\npEUDKcBN3vOqQCpwrY9NU29ZHbznzb3nrX1srgAygVo5tMOWyBguGRkZWtsbLebqq6/W5ORk/dOf\nWmVbwjJgwABNS0vTf/zjH1qjRg1NTEx0r/eNPJ0VqmrJkiUaEVFJQ0LCtUKFEH3sscd07dq1Jemq\nEUCxh9LKQQTjvGktA+zmA2O9r7t7baIDbLYAD3hf3wYcDMgPBdKBa3Joh4mg4dKpUyc/satdp3Y2\nAWzYsKECWrNmTTctJiZWU1JSVFU1JSVFW7Zs6ealp6erqmpiYqLWrVtPp02bVpIuGrlQGkJp1fL+\n3RuQvheI9bFJU9WjOdjU8rHZ55upqhnAQR8bw8jGokWL/IbBAPv2Ol+lncef4UD6KCpGhLJx40YA\njh1L4brrHqdfv1Hs37+PESNGAM5kyrPPPuuWcc01zq3vfv36sXnzJq6//vricMcoJopjsXSxTJM9\n+OCDfg+dBujfvz/9vTHkjPLPJZdcwsCBA/nwww+Ji4tj06ZN1KtXj61bt/Kvx2azcN5GUk9mAFCn\nTnMaNWrHzJkvcc45F9KoUQfeeONN7r//fho3bkx8fDyXXnopCxcudGeAgUKNPmMUnMTExGz7sY8c\nOVKwwvLTbVT/YWheh8MLgAS14bBRTGzatEmbt2juDmdr1arlE8k5Snv0uFtr1KirgNapU0cBjY8f\n6X2aW1e3nJSUFJ00aVLQPr2trFEahsObgT04M7oAiEg00B740Zu0witmvjZNgfo+Nj8C1USktU/Z\n3XFmspcWYnuNckqDBg34v3H/567V27Nnj/tUucjIqsydOwGRNC6++GJ27dpFlSpV+M9/XgBg8eIf\nyMzMBJxh8aBBg2zpSzknX8Nh71q9xj5JcSLSCvhDVbeLyFjgMRFJwundPQvsBD4DUNUjIjIReFlE\nDgLHgP8DFqvqMq/NWhH5GnhLRO4CwoHxQKKq7jkDX40g4rLLLmPgwIF07NiR7du3u3EEjx3bx1VX\nXcWC7793H2R+/PhxAJo0acrEiW8TEhJSYu02SoD8dBuBbjjDWQ/OkpWs1+/42DyNs1QmBZgNNAoo\noyKOqP0BHAemAzEBNmfhrBU8ChwG3gYq59ImGw4b2XjttddyjO6yZs0anTlzZrb02bNnq8fjKelm\nG2dAsUSRUdX5nGaBtao+CTx5ivxUYKj3yM3mEDAgP20zDF/mzJkDQOPGjWndujXHjh5l0gcfUKNG\nDZo3b86wYcOIi4tjyJAhREZG2ja3IMZCaRnlkqlTpzJr1izi4+NRVUTET+gSEhJKsHVGacJE0CiX\nhIWFuev7rJdnnAqb9jIMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQM\nI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gx\nETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQM\nI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gxETQMI6gx\nETQMI6gxESyFJCYmlnQTCpXy5E958gXKnz8FoVSLoIjcKyJbRCRFRJaISLuSblNxUN6+mOXJn/Lk\nC5Q/fwpCqRVBEbkJGAM8CfwJ+Bn4RkTOLtGGGYZRrii1IggMB95U1fdVdR1wF5AM3FayzTIMozxR\nKkVQRMKB1sDcrDRVVe95x5Jql2EY5Y/Qkm5ALtQEQoC9Aen7gGYBaREAa9euLYZmFQ9Hjhxh5cqV\nJd2MQqM8+VOefIHy5Y+PBkTk5zpxOlilCxGpA+wAOqrqUp/0F4AuqnqxT9rNwOTib6VhGKWUAar6\nUV6NS2tP8ACQCcQGpMcCuwPSvgEGAFuAk0XeMsMwSisRwHk4mpBnSmVPEEBElgDLVPV+73kFYBsw\nTlVfKNHGGYZRbiitPUGAl4H3ReQnYDkwDKgEvFuirTIMo1xRakVQVT/2rgl8BqgFrAJ6qur+km2Z\nYRjliVI7HDYMwygOSuU6QcMwjOLCRNAwjKCm1IqgN3CCJ+AYGWBTX0S+FJETIrJXRF4QkZAAm5Yi\nstAbhGGbiIzIoa5uIrJSRE6KSJKIDC5CvyqKyH+9/rQsi/6IyH9EZKu3DbtEZJKI1C6jvpwnIhNF\nZJOIJIvI7yLylIiElUV/vHU8KiKLvf4cysWmzPiTF84o2IqqlsoD2Aw8CsT4HJV98kOA1ThrgloC\nPXF2lPzbxyYa2ANMApoDNwEngNt9bBp4014EmgL3AunAX4rIr1eALwEP0LIs+oMzU98eOAdnG+MP\nwI9l1JcrgHeAy3HWmPX2tuvFsuiPt56ngAeAl4BDOeSXKX/y4O9NOGuEB+PsKHsDOAicnafri7Ox\n+XRsM/DAKfJ7ARm+jgJ3AoeBUO/53TgLr0N9bJ4D1vqcPw/8ElB2IvBVEfjUC/jN+6UKFMEy549P\n+fE4i9tDyrov3joeAjaW9c8GuJWcRbBM+nMKP5firB/OOhecHWcP5+X6Ujsc9vIPETng7W4/FNBd\n74jzAfgumZmN8wt2vo/N96qaEWDTVESq+tjMxZ/ZFHKgBhGJBd4EBgEpOZiUKX+yEJHqODt25qlq\npk8bypwvPlQD/vA5L+v+BFJu/JFCCLZSmkVwHE43txtO9/afgO9OkVpkD7Cw1ycvrzaxudhEi0jF\ngjQ8EBER4D3gdVXNbbd6mfEHQESeF5HjOL2FBjifVRZlyhdfRKQRMBTnO5dFmfUnF8qTP6cKtlIr\nu3l2ilUERWS0ZJ/sCDyaAKhqgqp+r6q/quobOPEF7wu4YS2nqbJIF0Hm0Z+mwH1AFWB0YBGnOQ+k\nyPzJz2fj5QWgFfAXIBX4zCv2bpGnqbI0fDZNAq6pC3wNfKyqEwOLPE2Vpc6f0xV5mvygWUBc3DtG\nXsK5CX0qNueSvhynvecBSTg3bQNngLICLuzx+Rv4a5BXm6OqmnqatubVnz/jdM1T/XWCn0TkQ1Ud\nQsn7k6/PRlX/wBky/i4ia4HtOD4upuR9gXz6I07konnAIlW9I8BuN2XMn9NQGvwpLPITbCVnivMG\n5hne/ByAczO3qve8J9lv7t4BHALCvOd34fyj+t7cHQWs8TkfTfabux8Bswqx7ecALXyOHjgTI32B\nOmXNnxz8q+/151LveU433kutL0BdYANOSDbJIb9MfjbkPjFSJv05hZ9L8J8YqYAzMTIyT9cXZ2Pz\n4dTFOMswLgLicARwL/BugKO/4AxfWuIsddgL/MvHJhrn1+B9nBu+NwHHgb/52JznTXseZ3r9Hpxp\n/h5F6N95ZJ8dLhP+4CyNGYozFD4X6I6zRGY9/5tZLBO+eOuoizOymAPUwenZ1AJqlbXPxqee+t7P\n5wngKM7/USsgsiz6kwd/b8SZbLwFZ+XFGzgCXnaXyOA8WOlHnF+mZOBX4GG8v1IBH/aXOGuV9uHc\np6oQYHMh8L33TdoGjMihvq7ASpy1RknALUXs33k4XfiWAeml3h/gAuBbnGFICrAJeNVXNMqKL97y\nb8X5Qcr0/s06MsuiP9463vP1w+dvl7LoTx59vpf/xRT9EWiX12stgIJhGEFNaV4iYxiGUeSYCBqG\nEdSYCBqGEdSYCBqGEdSYCBqGEdSYCBqGEdSYCBqGEdSYCBpGECEizUTkC2+IuiPeyNHdTmEf6o0Y\n9IuIHBeRnSLyvmSPJP6GOFG5k0Vkn4h85g0eUuC6T9GmuiLyobecZG/b2uS3nCxMBA0juJjl/dsN\naAP8DMz0xrvMiUicHVzPeP9eixNF+j8Bdj/h7L5phrMNT4C5IuKrMfmtOxsichbONs1UnD3QzXEi\nTOX4GIE8lWk7RgwjOBCRmjhb5C5V1R+8aVHAEeByVf0uj+W0BZYB9VV1Ry42LYH/Ag1VdXNe6xaR\nC3DC9XfG2dI3G3hQnahFiMhooKOqdi3Ie5AT1hM0jCBBVQ/ghKQbLCKVRSQUJ1rMXmBFPoqqhhNv\n8HBOmSISCQzBCaqxLa91i0g14DvveRucnl4s8LFP8fHAChGZJs4DolaKyN/y0fbs7bWeoGEEDyIS\ng9O7uhAnsMI+4EpV/TmP10fgDEfXqOqggLx7cCLKRAIbgStUdVNe6xaRx4DOqtrT55p6OELaRFV/\nF5GTOAI8BpiGE9XoFeAuVZ2Uz7cDsJ6gYZR58hp12tv7+gIn1l5nnMCqn+HclzttKHpvVPePcUTo\n7hxMPsQJ2dUVWAN85e0Vkse6LwL+LCLHsg5grbe+hl6bCsAKVX1MVX9W1beAt3B6lQXCeoKGUcbx\n3m+rfhqzzTiPFf0CqKaqx32u3wBMVNXnT1FHlgCeB3RX1VNORHjtDwF3qupkEel1irrfVtUXROQr\nnPiED+dQ5B5VTRaRLcBs9Yn+LSJ3A4+qar1TvgO5UNzh9Q3DKGS899sOnM7OO1OrOENRvyI4xTNH\nfASwIfDn0wmglwreMiv4nOdWd5bNCuA6YKv+78mFgfyAMwPtSxOcWIIFwobDhhE8/IDzUPJJItLS\nO0R+ESdC+JdZRiKyTkT6eF+HAdNxJioGAmEiUst7hHltGojIIyLSWkTqi0gnnPt1yfxvWUxe6n4V\np0ebKCJtRaShiFwhIu/4LLVJAC721tdIRG4GbvdeWyBMBA0jSFDVwzhr+CJxooMvBzoB16jqah/T\nJjjh9cF5/EBv79//Aru8x07+91zfkzj3+WbhRJeegrP0pVPW0pa81K2qu4FLcB6hORvnEQAJOM9J\n8XhtfsJ5Nk9/YDXwKPCAqiYW9H2xe4KGYQQ11hM0DCOoMRE0DCOoMRE0DCOoMRE0DCOoMRE0DCOo\nMRE0DCOoMRE0DCOoMRE0DCOoMRE0DCOoMRE0DCOoMRE0DCOo+X/YsK1P2ofq+QAAAABJRU5ErkJg\ngg==\n", "text": [ "" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "bldgs[bldgs.boro == 1].plot()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nU089tdS2derUCWIkFosXL2bnzp1BL0dRMVOqEAsWLCA5ObnU9ocPB/8AYLC26z569GhIyopmtDGv\nVBkq66hh7969AdDBtuCiNTOlSvD111+HO4QSCdTCdaVwVMyUKsH1119fattQ7mJRr149fv31V664\n4gpq166tghZEVMyUKkFZpmKEsrl38OBBJk+ezMGDB6lZs6Y2NYOIipkS8VT2LannzJnDp59+SlZW\nFv/617/CHU6VRcVMiXiqVatWalv/HSLKy7HHNqRTp04lG/rRsmXLgJSvFETFTIlYdu3axTXXXFOm\nd0aMGFHhcjt37szevfuYMmVKycYOateuxa5du3SaRpDQqRlKRPLtt99y9tlnl2zooE2bNgEpe+PG\njZx55pllXjKVmXmEKVOmMGfOW+ze7b/BsVJRVMyUiKRFixaISJk61BMTEwM2klmR4+dSU/eQn59P\nTExMycZKqdFmphKR5OTklHlksEGDBkGKpuxs3rw53CFUOVTMlIjB7Xazbt06AE466aQyv3/33XeX\nbBQixo8fz9Kl/geDQX5+Pjk5OYW8oZSEipkSMTzwwAN069at0uztXx6OOeYYUlJSWL58ORdddBEA\nqampiAjvvfceY8eOJS4uTifXlgMVMyVi6NOnD+3atWPChAnhDqXcpKWl0bp1ax577DHWrl0L/L16\n4YorrqB79+7ExMRw00034Xa7wxlqxKE7zZYB3Wk2/DRv3py//vqrwn6MMQHzVZEYANLT0znxxBPZ\nv3+/T3779u355ZdfQh6X7jSrKEFm1apVARGfzMxMwJqn5na7iYuLq7DP8pCba529Ex8fT2pqKnXr\n1vXJ37JlC127dg1HaBGJiplSacnOzmbUqFFkZWUBcO6551bYZ6tWrXw62EWEo0ePkpaWRnx8fIX9\nl4WVK1d672NiYgpdLL9hwwYeeOCBUIYVsaiYKZWWTz75hDfeeIMXX3wRICCjfDt27GDYsGEF0uPj\n40lLS+PWW2+tcBmlZdGiRT7PzzzzTKFLsx577LFQhRTRqJgplZYhQ4awZMkSJk6cyFVXXVVhfxdd\ndBGXXXYZN954ozetb9++iIi36ekRk44dO1a4vJLwX5FQvXr1IkcxZ8yYEfR4Ih0VM6VS06dPH0aN\nGsXcuXMr7Gvx4sV88MEHPjWzVatWAZZwAkydOpX8/HwaN25c4fJK4o8//iiQZne8+3DxxRdTrVq1\n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\npk+fbgBTp04dn1/o2rVrV1gw6tWr51PWb7/95l2k3qpVK/Phhx9686699tqQCdn8+fONMcZ89NFH\nBfLGjh0b0u8/2ESqmGmfmVImfvrpJ9atWwdYfUdOAjFZ1XmO5rJly9i0aRP79+8nLq46O3bs4LLL\nLuOOO+5g+fLlZT4vs7yMHDmSiy++GIBHH320QP60adNCEodSAuFW00i60JqZtzZyyimnmNatWwe0\n9vOPf/zDpKWlGWOMycnJ8aZv2bLFe3/ssceGrDaGXdv0sGnTJp+8G264waSkpITrnyJoRGrNTNdm\nKqUmJSWFK6+8krlz53prZx07duSXX34hP99/v82ys2DBApo1a0ZmZibVqlXjqquuomnTprRo0YK4\nuDiys7OLXdoUDMaNG+e979Chg/d+5syZjB07NqSxKCUQbjWNpIsor5mddfZZBjBtT2hrunfvHtQa\n0W233VagfEeNIWTXrl27jDHGdOrUyQCmevXqxuVyhfqrDymRWjPTPjOlVBhjGDzIOhFp22/bWLt2\nLWeddVbQdqh48cUXERHOP/98b1pCQgI7d+4M2eLuSZMm0axZM4YOHcpPP/0EWNsLud3uKr2cKWIJ\nt5pG0kUU18ymTJliAHPnnXeawYMHh7yG9MYbb3hjCUV548ePN8YYs3PnzgJ5VWlOWWFEas0s7AFE\n0hXNYtamTRufX+hLL7005IJWp04d88wzz4SkLA8xMTEF8r7//vsw/ksEn0gVM21mKqVixowZPs/z\n588PeQyHDx/mnnvuCXo57733HmB1+PsPbNx333307NmzsNeUMKOjmUqpaNr070Ppa9asydGjRz21\n1ZAS7DJ79OjB5ZdfzjHHHEN6enqB/MLmmSmVA62ZKaWie/fu3tO7s7KywiJkwSY+Pp5vvvmGrVu3\nFhCyDh07smXLFlwu/ZWprGjNTCkVH374IXv37g13GEFl3759uFwu2rdvXyBv/J13cuKJJ4YhKqW0\n6J8ZpUR+/PFHhg4dSr169cIdStCYNm0aLpeLiy66qNB858aQSuVExUwplkWLFnH66afTqlUrDh48\nGO5wgsL555/vnen/zTffFMjv1q1bwLYBV4KHiplSgEOHDnk3Vrz44ovJyclhx44dYY4qOPTs2ZPF\nixcD1nkDMbExPvnVqlVj7dq14QhNKSMqZkoBrhh+Bc1bNOeWW24JdyhB5c4772TVqlVUq1aNRx55\n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\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Energy Consumption Data" ] }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Data Source" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Energy consumption data is available for a subset of the buildings via NYC Open Data, and was downloaded in csv form:\n", "\n", "https://data.cityofnewyork.us/Environment/Energy-and-Water-Data-Disclosure-for-Local-Law-84-/5gde-fmj3\n", "\n", "\n", "This dataset contains annual energy and water consumption data for buildings in New York City that have greater than 50,000 square feet of floor area, as per the disclosure specifications in [NYC Local Law 84](http://www.nyc.gov/html/gbee/html/plan/ll84_about.shtml)." ] }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Cleaning and Formatting" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The csv file presents one major challenge before it can be read by Pandas. The last data column in the csv occasionally has newline characters within it - in these cases, the data entry is held within double quotes. In this cleaning script, these intra-entry newline characters are replaced by single space (' ') characters. The script also removes some unnecessary white space from the csv. A new 'cleaned' csv file is produced." ] }, { "cell_type": "code", "collapsed": false, "input": [ "filename = 'Energy_and_Water_Data_Disclosure_for_Local_Law_84__2012_.csv'\n", "cleanedcsv = ''\n", "multilinekeeper = ''\n", "with open(filename,'rU') as f:\n", " for line in f:\n", " line = re.sub(' +',' ',line)\n", " line = re.sub(', ',',',line)\n", " if multilinekeeper == '':\n", " if len(re.findall('\"',line)) == 1:\n", " multilinekeeper = line.strip()\n", " else:\n", " cleanedcsv += line\n", " else:\n", " if '\"' in line:\n", " cleanedcsv += multilinekeeper + line\n", " multilinekeeper = ''\n", " else:\n", " multilinekeeper += ' ' + line.strip()\n", " \n", "with open('cleaned_' + filename,'w') as f:\n", " f.write(cleanedcsv)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The cleaned csv can now be read into a dataframe by Pandas." ] }, { "cell_type": "code", "collapsed": false, "input": [ "energy = read_csv('cleaned_' + filename)\n", "print 'number of rows:\\t' + str(len(energy))\n", "print 'columns:'\n", "print energy.columns" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "number of rows:\t14112\n", "columns:\n", "Index([u'BBL', u'Street Number', u'Street Name', u'Borough', u'Zip', u'Benchmarking Submission', u'Entry Number', u'Site EUI(kBtu/ft2)', u'Weather Normalized Source EUI(kBtu/ft2)', u'Indoor Water Intensity (All Water Sources)(gal/ft2)', u'Reported Water Method', u'ENERGY STAR Score', u'Total GHG Emissions(MtCO2e)', u'Property Floor Area (Buildngs and Parking)(ft2)', u'Primary Property Type - Self Selected', u'Number of Buildings', u'Reported BINs'], dtype='object')\n" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that the number of entries in this table (14,112) is much smaller than the number of entries in the buildings table (1,082,381), since it only contains entries for buildings with more than 50,000 ft2 of floor area.\n", "\n", "The BBL column was read in as integers, but want it to be strings in order to to compare with the bldgs BBL key. For clarity, we also take only the subset of data columns we are interested in, and we set the 'BBL' column to be the index." ] }, { "cell_type": "code", "collapsed": false, "input": [ "energy['BBL'] = energy['BBL'].astype(str)\n", "energy = energy.ix[:,[0,1,2,7,8,11,12,13,14,15]]\n", "energy.set_index('BBL', inplace=True)\n", "energy.sort(inplace=True)\n", "energy.head()" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Street NumberStreet NameSite EUI(kBtu/ft2)Weather Normalized Source EUI(kBtu/ft2)ENERGY STAR ScoreTotal GHG Emissions(MtCO2e)Property Floor Area (Buildngs and Parking)(ft2)Primary Property Type - Self SelectedNumber of Buildings
BBL
1000010010 1 GOVERNORS ISLAND NaN NaN NaN NaN NaN NaN 1
1000020002 NaN MARGINAL STREET NaN NaN NaN NaN NaN NaN 0
1000047501 1 WATER STREET 102.0 287.9 75 25932.68 2428325 Office 1
1000057501 125 BROAD STREET 119.6 261.5 70 11637.42 1338000 Office 1
1000087501 39 WHITEHALL STREET 59.0 163.2 NaN 848.55 169055 Multifamily Housing 1
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 11, "text": [ " Street Number Street Name Site EUI(kBtu/ft2) \\\n", "BBL \n", "1000010010 1 GOVERNORS ISLAND NaN \n", "1000020002 NaN MARGINAL STREET NaN \n", "1000047501 1 WATER STREET 102.0 \n", "1000057501 125 BROAD STREET 119.6 \n", "1000087501 39 WHITEHALL STREET 59.0 \n", "\n", " Weather Normalized Source EUI(kBtu/ft2) ENERGY STAR Score \\\n", "BBL \n", "1000010010 NaN NaN \n", "1000020002 NaN NaN \n", "1000047501 287.9 75 \n", "1000057501 261.5 70 \n", "1000087501 163.2 NaN \n", "\n", " Total GHG Emissions(MtCO2e) \\\n", "BBL \n", "1000010010 NaN \n", "1000020002 NaN \n", "1000047501 25932.68 \n", "1000057501 11637.42 \n", "1000087501 848.55 \n", "\n", " Property Floor Area (Buildngs and Parking)(ft2) \\\n", "BBL \n", "1000010010 NaN \n", "1000020002 NaN \n", "1000047501 2428325 \n", "1000057501 1338000 \n", "1000087501 169055 \n", "\n", " Primary Property Type - Self Selected Number of Buildings \n", "BBL \n", "1000010010 NaN 1 \n", "1000020002 NaN 0 \n", "1000047501 Office 1 \n", "1000057501 Office 1 \n", "1000087501 Multifamily Housing 1 " ] } ], "prompt_number": 11 }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Quick Verification" ] }, { "cell_type": "code", "collapsed": false, "input": [ "energy.plot(x=2,y=5,kind='scatter')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 12, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 12 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Merging Data Tables" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "An outer merge brings the two data tables together. For convenience, we add two new columns to denote which original tables had which entries (which will let us subset data when desired, akin to taking an inner merge but without duplication). Note that the merge results in a Pandas DataFrame object, rather than a GeoPandas GeoDataFrame object." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergy = merge(bldgs, energy, left_index=True, right_index=True, how='outer')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "print 'number of rows:\\t' + str(len(bldgsenergy))\n", "print 'columns:'\n", "print bldgsenergy.columns\n", "bldgsenergy.ix[:,['HEIGHT_ROO','geometry','geometry_latlon','Site EUI(kBtu/ft2)','Total GHG Emissions(MtCO2e)',\n", " 'Number of Buildings']].head()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "number of rows:\t1100100\n", "columns:\n", "Index([u'boro', u'GROUND_ELE', u'HEIGHT_ROO', u'Shape_Area', u'Shape_Leng', u'geometry', u'geometry_latlon', u'Street Number', u'Street Name', u'Site EUI(kBtu/ft2)', u'Weather Normalized Source EUI(kBtu/ft2)', u'ENERGY STAR Score', u'Total GHG Emissions(MtCO2e)', u'Property Floor Area (Buildngs and Parking)(ft2)', u'Primary Property Type - Self Selected', u'Number of Buildings'], dtype='object')\n" ] }, { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
HEIGHT_ROOgeometrygeometry_latlonSite EUI(kBtu/ft2)Total GHG Emissions(MtCO2e)Number of Buildings
BBL
1000010010 10.29 POLYGON ((-8239895.129312261 4966979.423426831... POLYGON ((-112.6757750753299 48.09341020820187...NaNNaN 1
1000010010 21.52 POLYGON ((-8240318.942692845 4966178.186055238... POLYGON ((-112.6759406036311 48.09094854809784...NaNNaN 1
1000010010 29.67 POLYGON ((-8239093.847102767 4966770.272564691... POLYGON ((-112.6724726056846 48.09382693018913...NaNNaN 1
1000010010 26.66 POLYGON ((-8239010.691476121 4966850.24966739,... POLYGON ((-112.6723061851977 48.09412009655221...NaNNaN 1
1000010010 28.60 POLYGON ((-8239472.205369915 4966449.2249446, ... POLYGON ((-112.6733040928157 48.09259833372172...NaNNaN 1
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 14, "text": [ " HEIGHT_ROO geometry \\\n", "BBL \n", "1000010010 10.29 POLYGON ((-8239895.129312261 4966979.423426831... \n", "1000010010 21.52 POLYGON ((-8240318.942692845 4966178.186055238... \n", "1000010010 29.67 POLYGON ((-8239093.847102767 4966770.272564691... \n", "1000010010 26.66 POLYGON ((-8239010.691476121 4966850.24966739,... \n", "1000010010 28.60 POLYGON ((-8239472.205369915 4966449.2249446, ... \n", "\n", " geometry_latlon \\\n", "BBL \n", "1000010010 POLYGON ((-112.6757750753299 48.09341020820187... \n", "1000010010 POLYGON ((-112.6759406036311 48.09094854809784... \n", "1000010010 POLYGON ((-112.6724726056846 48.09382693018913... \n", "1000010010 POLYGON ((-112.6723061851977 48.09412009655221... \n", "1000010010 POLYGON ((-112.6733040928157 48.09259833372172... \n", "\n", " Site EUI(kBtu/ft2) Total GHG Emissions(MtCO2e) \\\n", "BBL \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "\n", " Number of Buildings \n", "BBL \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 " ] } ], "prompt_number": 14 }, { "cell_type": "code", "collapsed": false, "input": [ "def inbldgs(i):\n", " return i in bldgs.index\n", "def inenergy(i):\n", " return i in energy.index\n", "bldgsenergy['geometry_avail'] = Series(bldgsenergy.index,index=bldgsenergy.index).apply(inbldgs)\n", "bldgsenergy['energy_avail'] = Series(bldgsenergy.index,index=bldgsenergy.index).apply(inenergy)\n", "bldgsenergy.ix[:,['geometry_avail','energy_avail','HEIGHT_ROO','geometry','geometry_latlon','Site EUI(kBtu/ft2)',\n", " 'Total GHG Emissions(MtCO2e)','Number of Buildings']].head()" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
geometry_availenergy_availHEIGHT_ROOgeometrygeometry_latlonSite EUI(kBtu/ft2)Total GHG Emissions(MtCO2e)Number of Buildings
BBL
1000010010 True True 10.29 POLYGON ((-8239895.129312261 4966979.423426831... POLYGON ((-112.6757750753299 48.09341020820187...NaNNaN 1
1000010010 True True 21.52 POLYGON ((-8240318.942692845 4966178.186055238... POLYGON ((-112.6759406036311 48.09094854809784...NaNNaN 1
1000010010 True True 29.67 POLYGON ((-8239093.847102767 4966770.272564691... POLYGON ((-112.6724726056846 48.09382693018913...NaNNaN 1
1000010010 True True 26.66 POLYGON ((-8239010.691476121 4966850.24966739,... POLYGON ((-112.6723061851977 48.09412009655221...NaNNaN 1
1000010010 True True 28.60 POLYGON ((-8239472.205369915 4966449.2249446, ... POLYGON ((-112.6733040928157 48.09259833372172...NaNNaN 1
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ " geometry_avail energy_avail HEIGHT_ROO \\\n", "BBL \n", "1000010010 True True 10.29 \n", "1000010010 True True 21.52 \n", "1000010010 True True 29.67 \n", "1000010010 True True 26.66 \n", "1000010010 True True 28.60 \n", "\n", " geometry \\\n", "BBL \n", "1000010010 POLYGON ((-8239895.129312261 4966979.423426831... \n", "1000010010 POLYGON ((-8240318.942692845 4966178.186055238... \n", "1000010010 POLYGON ((-8239093.847102767 4966770.272564691... \n", "1000010010 POLYGON ((-8239010.691476121 4966850.24966739,... \n", "1000010010 POLYGON ((-8239472.205369915 4966449.2249446, ... \n", "\n", " geometry_latlon \\\n", "BBL \n", "1000010010 POLYGON ((-112.6757750753299 48.09341020820187... \n", "1000010010 POLYGON ((-112.6759406036311 48.09094854809784... \n", "1000010010 POLYGON ((-112.6724726056846 48.09382693018913... \n", "1000010010 POLYGON ((-112.6723061851977 48.09412009655221... \n", "1000010010 POLYGON ((-112.6733040928157 48.09259833372172... \n", "\n", " Site EUI(kBtu/ft2) Total GHG Emissions(MtCO2e) \\\n", "BBL \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "\n", " Number of Buildings \n", "BBL \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 \n", "1000010010 1 " ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [ "print 'number of rows in bldgs:\\t\\t\\t\\t\\t' + str(len(bldgs))\n", "print 'number of rows in energy:\\t\\t\\t\\t\\t' + str(len(energy))\n", "print 'number of rows in bldgsenergy:\\t\\t\\t\\t\\t' + str(len(bldgsenergy))\n", "print 'number of rows in bldgsenergy with geometry:\\t\\t\\t' + str(len(bldgsenergy[bldgsenergy['geometry_avail']]))\n", "print 'number of rows in bldgsenergy with energy:\\t\\t\\t' + str(len(bldgsenergy[bldgsenergy['energy_avail']]))\n", "print 'number of rows in bldgsenergy with both gometry and energy:\\t' + \\\n", " str(len(bldgsenergy[bldgsenergy['energy_avail'] & bldgsenergy['geometry_avail']]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "number of rows in bldgs:\t\t\t\t\t1082381\n", "number of rows in energy:\t\t\t\t\t14112\n", "number of rows in bldgsenergy:\t\t\t\t\t1100100\n", "number of rows in bldgsenergy with geometry:\t\t\t1099761" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "number of rows in bldgsenergy with energy:\t\t\t45620\n", "number of rows in bldgsenergy with both gometry and energy:\t45281" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n" ] } ], "prompt_number": 16 }, { "cell_type": "heading", "level": 4, "metadata": {}, "source": [ "Summary and Notes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We now have a tidy data table in the variable 'bldgsenergy'. A note for further investigation later, if this data is to be used for further analysis: there look to be a lot of buildings that share a BBL identifier, which will likely cause some hassles." ] }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "GeoJSON Export and TopoJSON Conversion" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the d3 visualization, we will use just a small section of the city, and will only consider those buildings for which we have both geometry data and energy data." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo = GeoDataFrame(bldgsenergy[bldgsenergy['geometry_avail'] & bldgsenergy['energy_avail']])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 17 }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo.head(500).plot()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 18, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nZWnfvn01PT1dfT6frl69WmNjY92uXUJCgqqarQj83b+ioiJNcZ7hfOWVV6qq6qRJk5xZ8hO1fv2L\n3PqnT5+u6h6I5TtEtS91CeFkKU5ezyC5fwEvOO8HOzIJQTJfA1Oc93cCp4PK44BC4OYQdvQBdNOm\nTdq1a1fXIfyO4k29e/fWRx55xH3U7Jo1a1RVdcaMGa7MW2+9pcXFxZqammrmILZM1rVr19rooaVW\nONl/OnlJQXKLgDTn/a1AQQhdG4GnnffTgZ0hZI4BPw+R3wfQwYMHhwyxv/Z/x5bIa9Wqs8bExOql\nl3Z3nce77isvL0/z8/N16tSpevTo0Sh8XZbvIrU5hF8tz/PxrhGLjY1FRCj2FRMjkJAYz5ls85SU\njh2v5JtvjtCjxzV8/vkqfv/733P//fczb948unXrhqoyc+ZMnn766YDHHlm+X6SlpZGWlhaQl52d\nXTFlkXikBrYg4XYXVwNzNMrdxa1bt+q8efMCVhvXqRPnvm/cuKUmJ3dSQGNjYzUhoZkmJLTQBg0a\nuHt+LFq0SFNTU8sM81u+v9SG7qIARwgd+Pixc1xW4ONK5zhU4GMoYQQ+VFV37NihcY5z1a9f33Wy\n2Ng4bdCggbYKsZnN6tWro/W9WC4gqmucrKGI9BKRXk5WinPcVlUVeAH4HxG5SUQuB+YDGcB7TquZ\nDbwOzBaRQSJyBfBnYJ2qbnJkdgArgddEpK+IXAX8EXNfF7jGPwRdunThB1f8gBtvvBGfz6yQjouL\nY8CA/uTl5XHU8yjYxMREXnnlFQYOHBjJZbBYIiMSjwQGYVoZH6Zl8b9/wyPza0woPx/4EOgUpCMe\n4zSngBxgMdAySOYizFjZGeAbYB7QoBSbAlqyxx9/vERLNXXqVD19+rTGe1YpX3PNNVpYWBidvzzL\nBUm1BD5U9V+UM4CtqjOAGWWUnwUmO6k0mSygQk+0Gz58OH/960KmTn0YVWXQoEHu3MJNGzeSlJRU\n6bVlFkskXHAThPv168eePbtDLu+3U6AsNcEFudGE3T/DUpuwv0aLJcpYJ7NYoox1Moslylgns1ii\njHUyiyXKWCezWKKMdTKLJcpYJ7NYoox1Moslylgns1iijHUyiyXKWCezWKKMdTKLJcpYJ7NYoox1\nMoslylgns1iijHUyiyXKWCezWKKMdTKLJcpYJ7NYoox1Moslylgns1iijHUyiyXKWCezWKKMdTKL\n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\n", "text": [ "" ] } ], "prompt_number": 18 }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the GeoJSON export, we will use the latitude and longitude as the geometry." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo.rename(columns={'geometry':'geometryfeet'}, inplace=True)\n", "bldgsenergygeo.rename(columns={'geometry_latlon':'geometry'}, inplace=True)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo.head(500).plot()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 20, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 20 }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the interactive graph, we want to have the address variables reformatted to a single column of strings." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo['Address'] = bldgsenergygeo['Street Number'] + ' ' + bldgsenergygeo['Street Name']" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 21 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We want to keep the file size to a minimum in order to keep the graph interaction smooth, so we will only include the columns we will use." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo.columns" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 22, "text": [ "Index([u'boro', u'GROUND_ELE', u'HEIGHT_ROO', u'Shape_Area', u'Shape_Leng', u'geometryfeet', u'geometry', u'Street Number', u'Street Name', u'Site EUI(kBtu/ft2)', u'Weather Normalized Source EUI(kBtu/ft2)', u'ENERGY STAR Score', u'Total GHG Emissions(MtCO2e)', u'Property Floor Area (Buildngs and Parking)(ft2)', u'Primary Property Type - Self Selected', u'Number of Buildings', u'geometry_avail', u'energy_avail', u'Address'], dtype='object')" ] } ], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeo = bldgsenergygeo.ix[:,[0,2,6,9,10,11,12,13,14,18]]\n", "bldgsenergygeo.head()" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
boroHEIGHT_ROOgeometrySite EUI(kBtu/ft2)Weather Normalized Source EUI(kBtu/ft2)ENERGY STAR ScoreTotal GHG Emissions(MtCO2e)Property Floor Area (Buildngs and Parking)(ft2)Primary Property Type - Self SelectedAddress
BBL
1000010010 1 10.29 POLYGON ((-112.6757750753299 48.09341020820187...NaNNaN NaNNaNNaN NaN 1 GOVERNORS ISLAND
1000010010 1 21.52 POLYGON ((-112.6759406036311 48.09094854809784...NaNNaN NaNNaNNaN NaN 1 GOVERNORS ISLAND
1000010010 1 29.67 POLYGON ((-112.6724726056846 48.09382693018913...NaNNaN NaNNaNNaN NaN 1 GOVERNORS ISLAND
1000010010 1 26.66 POLYGON ((-112.6723061851977 48.09412009655221...NaNNaN NaNNaNNaN NaN 1 GOVERNORS ISLAND
1000010010 1 28.60 POLYGON ((-112.6733040928157 48.09259833372172...NaNNaN NaNNaNNaN NaN 1 GOVERNORS ISLAND
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 23, "text": [ " boro HEIGHT_ROO \\\n", "BBL \n", "1000010010 1 10.29 \n", "1000010010 1 21.52 \n", "1000010010 1 29.67 \n", "1000010010 1 26.66 \n", "1000010010 1 28.60 \n", "\n", " geometry \\\n", "BBL \n", "1000010010 POLYGON ((-112.6757750753299 48.09341020820187... \n", "1000010010 POLYGON ((-112.6759406036311 48.09094854809784... \n", "1000010010 POLYGON ((-112.6724726056846 48.09382693018913... \n", "1000010010 POLYGON ((-112.6723061851977 48.09412009655221... \n", "1000010010 POLYGON ((-112.6733040928157 48.09259833372172... \n", "\n", " Site EUI(kBtu/ft2) Weather Normalized Source EUI(kBtu/ft2) \\\n", "BBL \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "\n", " ENERGY STAR Score Total GHG Emissions(MtCO2e) \\\n", "BBL \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "1000010010 NaN NaN \n", "\n", " Property Floor Area (Buildngs and Parking)(ft2) \\\n", "BBL \n", "1000010010 NaN \n", "1000010010 NaN \n", "1000010010 NaN \n", "1000010010 NaN \n", "1000010010 NaN \n", "\n", " Primary Property Type - Self Selected Address \n", "BBL \n", "1000010010 NaN 1 GOVERNORS ISLAND \n", "1000010010 NaN 1 GOVERNORS ISLAND \n", "1000010010 NaN 1 GOVERNORS ISLAND \n", "1000010010 NaN 1 GOVERNORS ISLAND \n", "1000010010 NaN 1 GOVERNORS ISLAND " ] } ], "prompt_number": 23 }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the graph, we are only interested in a region roughly correlated with Midtown in Manhattan - we will select only those rows for which boro = 1 and they have points between 48.117 and 48.129 degrees latitude (noting that these are not the proper latitude numbers, given our earlier problem)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "bldgsenergygeomidtown = bldgsenergygeo[(bldgsenergygeo.boro == 1) & \n", " (bldgsenergygeo.geometry.bounds['miny'] < 48.129) & \n", " (bldgsenergygeo.geometry.bounds['maxy'] > 48.117) ]\n", "print len(bldgsenergygeomidtown)\n", "bldgsenergygeomidtown.head()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "2348\n" ] }, { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
boroHEIGHT_ROOgeometrySite EUI(kBtu/ft2)Weather Normalized Source EUI(kBtu/ft2)ENERGY STAR ScoreTotal GHG Emissions(MtCO2e)Property Floor Area (Buildngs and Parking)(ft2)Primary Property Type - Self SelectedAddress
BBL
1006650010 1 37.756688 POLYGON ((-112.6865457039683 48.11973501029388...NaNNaN NaNNaNNaN NaN NaN
1006800001 1 12.110000 POLYGON ((-112.6858515626195 48.1203140388577,...NaNNaN NaNNaNNaN NaN 360 WEST STREET
1006800001 1 32.826755 POLYGON ((-112.6848804688391 48.12020064719905...NaNNaN NaNNaNNaN NaN 360 WEST STREET
1006800001 1 12.467149 POLYGON ((-112.6853330443247 48.12031129386528...NaNNaN NaNNaNNaN NaN 360 WEST STREET
1006800001 1 11.625806 POLYGON ((-112.6852809913021 48.12031449853709...NaNNaN NaNNaNNaN NaN 360 WEST STREET
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 24, "text": [ " boro HEIGHT_ROO \\\n", "BBL \n", "1006650010 1 37.756688 \n", "1006800001 1 12.110000 \n", "1006800001 1 32.826755 \n", "1006800001 1 12.467149 \n", "1006800001 1 11.625806 \n", "\n", " geometry \\\n", "BBL \n", "1006650010 POLYGON ((-112.6865457039683 48.11973501029388... \n", "1006800001 POLYGON ((-112.6858515626195 48.1203140388577,... \n", "1006800001 POLYGON ((-112.6848804688391 48.12020064719905... \n", "1006800001 POLYGON ((-112.6853330443247 48.12031129386528... \n", "1006800001 POLYGON ((-112.6852809913021 48.12031449853709... \n", "\n", " Site EUI(kBtu/ft2) Weather Normalized Source EUI(kBtu/ft2) \\\n", "BBL \n", "1006650010 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "\n", " ENERGY STAR Score Total GHG Emissions(MtCO2e) \\\n", "BBL \n", "1006650010 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "1006800001 NaN NaN \n", "\n", " Property Floor Area (Buildngs and Parking)(ft2) \\\n", "BBL \n", "1006650010 NaN \n", "1006800001 NaN \n", "1006800001 NaN \n", "1006800001 NaN \n", "1006800001 NaN \n", "\n", " Primary Property Type - Self Selected Address \n", "BBL \n", "1006650010 NaN NaN \n", "1006800001 NaN 360 WEST STREET \n", "1006800001 NaN 360 WEST STREET \n", "1006800001 NaN 360 WEST STREET \n", "1006800001 NaN 360 WEST STREET " ] } ], "prompt_number": 24 }, { "cell_type": "code", "collapsed": false, "input": [ "with open('bldgsenergygeo.json','w') as f:\n", " f.write(bldgsenergygeomidtown.to_json())" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 25 }, { "cell_type": "markdown", "metadata": {}, "source": [ "This writes a GeoJSON file for Manhattan to 'bldgsenergygeo.json' that can be used for browser-based mapping. For the d3.js interactive graph, the TopoJSON format is used because it is a smaller file format and thus allows for faster uploading and interaction. Converting between the GeoJSON file and the TopoJSON file is carried out using [this js library](https://github.com/mbostock/topojson), which requires node.js and is installed via 'sudo npm install topojson'. The conversion is carried out with the following command line call. The resulting file 'bldgsenergytopo.json' is 1.2 MB, compared with the 2.9 MB GeoJSON file." ] }, { "cell_type": "code", "collapsed": false, "input": [ "os.system('topojson -p -o bldgsenergytopo.json bldgsenergygeo.json')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 26, "text": [ "0" ] } ], "prompt_number": 26 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The html and js code for the graph is included in this [github repo](https://github.com/bricof/nyc_bldgenergygeo), and the graph can be viewed in this [blog post](http://briancoffey.ca/blogpost2.html)." ] } ], "metadata": {} } ] }