Created
September 17, 2018 19:56
-
-
Save knaaptime/9d197d6fcb8bc10d5d4ddded4f1c6baa to your computer and use it in GitHub Desktop.
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": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"import pandas as pd\n", | |
"import geopandas as gpd\n", | |
"import geopy as gp\n", | |
"import mplleaflet as leaf\n", | |
"%matplotlib inline" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## Geocoding" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 21, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"addr_list = ['1360 Gillaspie Dr', '1505 30th St', '1789 28th St,']" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"addr_sheet = pd.read_csv('~/pelias/projects/colorado/addresses.csv')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 22, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"geocoded = gpd.tools.geocode(addr_list, provider=gp.geocoders.Pelias, domain=\"cgs.knaaptime.com:4000\",scheme='http')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 23, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>geometry</th>\n", | |
" <th>address</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>POINT (-105.2486 39.974524)</td>\n", | |
" <td>1360 Gillaspie Dr</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>POINT (-105.255012 40.012607)</td>\n", | |
" <td>1505 30th St</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>POINT (-105.259579 40.018816)</td>\n", | |
" <td>1789 28th St</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" geometry address\n", | |
"0 POINT (-105.2486 39.974524) 1360 Gillaspie Dr\n", | |
"1 POINT (-105.255012 40.012607) 1505 30th St\n", | |
"2 POINT (-105.259579 40.018816) 1789 28th St" | |
] | |
}, | |
"execution_count": 23, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"geocoded.head()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 24, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"ax = geocoded.plot()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 25, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<iframe src=\"data:text/html;base64,PGhlYWQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvbGVhZmxldC8wLjcuMy9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvbGVhZmxldC8wLjcuMy9sZWFmbGV0LmNzcyIgLz4KICA8c3R5bGU+CiAgICAjbWFwOTZmMjIxZjE4YjZjNDA3OGIxYTg3OWI0ZDkwNTc1OWIgewogICAgICBoZWlnaHQ6MTAwJTsKICAgIH0KICA8L3N0eWxlPiAKPC9oZWFkPgo8Ym9keT4KICA8ZGl2IGlkPSJtYXA5NmYyMjFmMThiNmM0MDc4YjFhODc5YjRkOTA1NzU5YiI+PC9kaXY+CjxzY3JpcHQgdGV4dD0idGV4dC9qYXZhc2NyaXB0Ij4KdmFyIG1hcCA9IEwubWFwKCdtYXA5NmYyMjFmMThiNmM0MDc4YjFhODc5YjRkOTA1NzU5YicpOwpMLnRpbGVMYXllcigKICAiaHR0cDovL3tzfS50aWxlLm9wZW5zdHJlZXRtYXAub3JnL3t6fS97eH0ve3l9LnBuZyIsCiAge21heFpvb206MTksIGF0dHJpYnV0aW9uOiAnPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2p3YXNzL21wbGxlYWZsZXQiPm1wbGxlYWZsZXQ8L2E+IHwgTWFwIGRhdGEgKGMpIDxhIGhyZWY9Imh0dHA6Ly9vcGVuc3RyZWV0bWFwLm9yZyI+T3BlblN0cmVldE1hcDwvYT4gY29udHJpYnV0b3JzJ30pLmFkZFRvKG1hcCk7CnZhciBnakRhdGEgPSB7InR5cGUiOiAiRmVhdHVyZUNvbGxlY3Rpb24iLCAiZmVhdHVyZXMiOiBbeyJ0eXBlIjogIkZlYXR1cmUiLCAiZ2VvbWV0cnkiOiB7InR5cGUiOiAiUG9pbnQiLCAiY29vcmRpbmF0ZXMiOiBbLTEwNS4yNDg2MDAwMDAwMDAwMSwgMzkuOTc0NTI0XX0sICJwcm9wZXJ0aWVzIjogeyJodG1sIjogIjxzdmcgd2lkdGg9XCI4cHhcIiBoZWlnaHQ9XCI4cHhcIiB2aWV3Qm94PVwiLTQuMCAtNC4wIDguMCA4LjBcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiPiAgPHBhdGggZD1cIk0gMC4wIDMuMCBDIDAuNzk1NjA5MzAwMDAwMDAwMSAzLjAgMS41NTg3Mzk2MTIzNTQ1NjA1IDIuNjgzOTAxMDc0NzY0NzI1IDIuMTIxMzIwMzQzNTU5NjQzIDIuMTIxMzIwMzQzNTU5NjQzIEMgMi42ODM5MDEwNzQ3NjQ3MjUgMS41NTg3Mzk2MTIzNTQ1NjA1IDMuMCAwLjc5NTYwOTMwMDAwMDAwMDEgMy4wIC0wLjAgQyAzLjAgLTAuNzk1NjA5MzAwMDAwMDAwMSAyLjY4MzkwMTA3NDc2NDcyNSAtMS41NTg3Mzk2MTIzNTQ1NjA1IDIuMTIxMzIwMzQzNTU5NjQzIC0yLjEyMTMyMDM0MzU1OTY0MyBDIDEuNTU4NzM5NjEyMzU0NTYwNSAtMi42ODM5MDEwNzQ3NjQ3MjUgMC43OTU2MDkzMDAwMDAwMDAxIC0zLjAgMC4wIC0zLjAgQyAtMC43OTU2MDkzMDAwMDAwMDAxIC0zLjAgLTEuNTU4NzM5NjEyMzU0NTYwNSAtMi42ODM5MDEwNzQ3NjQ3MjUgLTIuMTIxMzIwMzQzNTU5NjQzIC0yLjEyMTMyMDM0MzU1OTY0MyBDIC0yLjY4MzkwMTA3NDc2NDcyNSAtMS41NTg3Mzk2MTIzNTQ1NjA1IC0zLjAgLTAuNzk1NjA5MzAwMDAwMDAwMSAtMy4wIC0wLjAgQyAtMy4wIDAuNzk1NjA5MzAwMDAwMDAwMSAtMi42ODM5MDEwNzQ3NjQ3MjUgMS41NTg3Mzk2MTIzNTQ1NjA1IC0yLjEyMTMyMDM0MzU1OTY0MyAyLjEyMTMyMDM0MzU1OTY0MyBDIC0xLjU1ODczOTYxMjM1NDU2MDUgMi42ODM5MDEwNzQ3NjQ3MjUgLTAuNzk1NjA5MzAwMDAwMDAwMSAzLjAgMC4wIDMuMCBaXCIgc3Ryb2tlPVwiIzFGNzdCNFwiIHN0cm9rZS13aWR0aD1cIjEuMFwiIHN0cm9rZS1vcGFjaXR5PVwiTm9uZVwiIGZpbGw9XCIjMUY3N0I0XCIgZmlsbC1vcGFjaXR5PVwiTm9uZVwiIC8+PC9zdmc+IiwgImFuY2hvcl94IjogNC4wLCAiYW5jaG9yX3kiOiA0LjB9fSwgeyJ0eXBlIjogIkZlYXR1cmUiLCAiZ2VvbWV0cnkiOiB7InR5cGUiOiAiUG9pbnQiLCAiY29vcmRpbmF0ZXMiOiBbLTEwNS4yNTUwMTIwMDAwMDAwMSwgNDAuMDEyNjA3XX0sICJwcm9wZXJ0aWVzIjogeyJodG1sIjogIjxzdmcgd2lkdGg9XCI4cHhcIiBoZWlnaHQ9XCI4cHhcIiB2aWV3Qm94PVwiLTQuMCAtNC4wIDguMCA4LjBcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiPiAgPHBhdGggZD1cIk0gMC4wIDMuMCBDIDAuNzk1NjA5MzAwMDAwMDAwMSAzLjAgMS41NTg3Mzk2MTIzNTQ1NjA1IDIuNjgzOTAxMDc0NzY0NzI1IDIuMTIxMzIwMzQzNTU5NjQzIDIuMTIxMzIwMzQzNTU5NjQzIEMgMi42ODM5MDEwNzQ3NjQ3MjUgMS41NTg3Mzk2MTIzNTQ1NjA1IDMuMCAwLjc5NTYwOTMwMDAwMDAwMDEgMy4wIC0wLjAgQyAzLjAgLTAuNzk1NjA5MzAwMDAwMDAwMSAyLjY4MzkwMTA3NDc2NDcyNSAtMS41NTg3Mzk2MTIzNTQ1NjA1IDIuMTIxMzIwMzQzNTU5NjQzIC0yLjEyMTMyMDM0MzU1OTY0MyBDIDEuNTU4NzM5NjEyMzU0NTYwNSAtMi42ODM5MDEwNzQ3NjQ3MjUgMC43OTU2MDkzMDAwMDAwMDAxIC0zLjAgMC4wIC0zLjAgQyAtMC43OTU2MDkzMDAwMDAwMDAxIC0zLjAgLTEuNTU4NzM5NjEyMzU0NTYwNSAtMi42ODM5MDEwNzQ3NjQ3MjUgLTIuMTIxMzIwMzQzNTU5NjQzIC0yLjEyMTMyMDM0MzU1OTY0MyBDIC0yLjY4MzkwMTA3NDc2NDcyNSAtMS41NTg3Mzk2MTIzNTQ1NjA1IC0zLjAgLTAuNzk1NjA5MzAwMDAwMDAwMSAtMy4wIC0wLjAgQyAtMy4wIDAuNzk1NjA5MzAwMDAwMDAwMSAtMi42ODM5MDEwNzQ3NjQ3MjUgMS41NTg3Mzk2MTIzNTQ1NjA1IC0yLjEyMTMyMDM0MzU1OTY0MyAyLjEyMTMyMDM0MzU1OTY0MyBDIC0xLjU1ODczOTYxMjM1NDU2MDUgMi42ODM5MDEwNzQ3NjQ3MjUgLTAuNzk1NjA5MzAwMDAwMDAwMSAzLjAgMC4wIDMuMCBaXCIgc3Ryb2tlPVwiIzFGNzdCNFwiIHN0cm9rZS13aWR0aD1cIjEuMFwiIHN0cm9rZS1vcGFjaXR5PVwiTm9uZVwiIGZpbGw9XCIjMUY3N0I0XCIgZmlsbC1vcGFjaXR5PVwiTm9uZVwiIC8+PC9zdmc+IiwgImFuY2hvcl94IjogNC4wLCAiYW5jaG9yX3kiOiA0LjB9fSwgeyJ0eXBlIjogIkZlYXR1cmUiLCAiZ2VvbWV0cnkiOiB7InR5cGUiOiAiUG9pbnQiLCAiY29vcmRpbmF0ZXMiOiBbLTEwNS4yNTk1NzksIDQwLjAxODgxNl19LCAicHJvcGVydGllcyI6IHsiaHRtbCI6ICI8c3ZnIHdpZHRoPVwiOHB4XCIgaGVpZ2h0PVwiOHB4XCIgdmlld0JveD1cIi00LjAgLTQuMCA4LjAgOC4wXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIj4gIDxwYXRoIGQ9XCJNIDAuMCAzLjAgQyAwLjc5NTYwOTMwMDAwMDAwMDEgMy4wIDEuNTU4NzM5NjEyMzU0NTYwNSAyLjY4MzkwMTA3NDc2NDcyNSAyLjEyMTMyMDM0MzU1OTY0MyAyLjEyMTMyMDM0MzU1OTY0MyBDIDIuNjgzOTAxMDc0NzY0NzI1IDEuNTU4NzM5NjEyMzU0NTYwNSAzLjAgMC43OTU2MDkzMDAwMDAwMDAxIDMuMCAtMC4wIEMgMy4wIC0wLjc5NTYwOTMwMDAwMDAwMDEgMi42ODM5MDEwNzQ3NjQ3MjUgLTEuNTU4NzM5NjEyMzU0NTYwNSAyLjEyMTMyMDM0MzU1OTY0MyAtMi4xMjEzMjAzNDM1NTk2NDMgQyAxLjU1ODczOTYxMjM1NDU2MDUgLTIuNjgzOTAxMDc0NzY0NzI1IDAuNzk1NjA5MzAwMDAwMDAwMSAtMy4wIDAuMCAtMy4wIEMgLTAuNzk1NjA5MzAwMDAwMDAwMSAtMy4wIC0xLjU1ODczOTYxMjM1NDU2MDUgLTIuNjgzOTAxMDc0NzY0NzI1IC0yLjEyMTMyMDM0MzU1OTY0MyAtMi4xMjEzMjAzNDM1NTk2NDMgQyAtMi42ODM5MDEwNzQ3NjQ3MjUgLTEuNTU4NzM5NjEyMzU0NTYwNSAtMy4wIC0wLjc5NTYwOTMwMDAwMDAwMDEgLTMuMCAtMC4wIEMgLTMuMCAwLjc5NTYwOTMwMDAwMDAwMDEgLTIuNjgzOTAxMDc0NzY0NzI1IDEuNTU4NzM5NjEyMzU0NTYwNSAtMi4xMjEzMjAzNDM1NTk2NDMgMi4xMjEzMjAzNDM1NTk2NDMgQyAtMS41NTg3Mzk2MTIzNTQ1NjA1IDIuNjgzOTAxMDc0NzY0NzI1IC0wLjc5NTYwOTMwMDAwMDAwMDEgMy4wIDAuMCAzLjAgWlwiIHN0cm9rZT1cIiMxRjc3QjRcIiBzdHJva2Utd2lkdGg9XCIxLjBcIiBzdHJva2Utb3BhY2l0eT1cIk5vbmVcIiBmaWxsPVwiIzFGNzdCNFwiIGZpbGwtb3BhY2l0eT1cIk5vbmVcIiAvPjwvc3ZnPiIsICJhbmNob3JfeCI6IDQuMCwgImFuY2hvcl95IjogNC4wfX1dfTsKCmlmIChnakRhdGEuZmVhdHVyZXMubGVuZ3RoICE9IDApIHsKICB2YXIgZ2ogPSBMLmdlb0pzb24oZ2pEYXRhLCB7CiAgICBzdHlsZTogZnVuY3Rpb24gKGZlYXR1cmUpIHsKICAgICAgcmV0dXJuIGZlYXR1cmUucHJvcGVydGllczsKICAgIH0sCiAgICBwb2ludFRvTGF5ZXI6IGZ1bmN0aW9uIChmZWF0dXJlLCBsYXRsbmcpIHsKICAgICAgdmFyIGljb24gPSBMLmRpdkljb24oeydodG1sJzogZmVhdHVyZS5wcm9wZXJ0aWVzLmh0bWwsIAogICAgICAgIGljb25BbmNob3I6IFtmZWF0dXJlLnByb3BlcnRpZXMuYW5jaG9yX3gsIAogICAgICAgICAgICAgICAgICAgICBmZWF0dXJlLnByb3BlcnRpZXMuYW5jaG9yX3ldLCAKICAgICAgICAgIGNsYXNzTmFtZTogJ2VtcHR5J30pOyAgLy8gV2hhdCBjYW4gSSBkbyBhYm91dCBlbXB0eT8KICAgICAgcmV0dXJuIEwubWFya2VyKGxhdGxuZywge2ljb246IGljb259KTsKICAgIH0KICB9KTsKICBnai5hZGRUbyhtYXApOwogIAogIG1hcC5maXRCb3VuZHMoZ2ouZ2V0Qm91bmRzKCkpOwp9IGVsc2UgewogIG1hcC5zZXRWaWV3KFswLCAwXSwgMSk7Cn0KPC9zY3JpcHQ+CjwvYm9keT4=\" width=\"100%\" height=\"240\"></iframe>" | |
], | |
"text/plain": [ | |
"<IPython.core.display.HTML object>" | |
] | |
}, | |
"execution_count": 25, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"leaf.display(fig=ax.figure, crs=geocoded.crs)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## Parks" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"[Geofabrik extracts](https://download.geofabrik.de/north-america/us/colorado-latest-free.shp.zip) provide freely available OSM downloads in shapefile format. \n", | |
"\n", | |
"To find parks, we can choose a selection of types from OSM's landuse data" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"landuse = gpd.GeoDataFrame.from_file('colorado-latest-free.shp/gis_osm_landuse_a_free_1.shp')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>osm_id</th>\n", | |
" <th>code</th>\n", | |
" <th>fclass</th>\n", | |
" <th>name</th>\n", | |
" <th>geometry</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>7670436</td>\n", | |
" <td>7218</td>\n", | |
" <td>grass</td>\n", | |
" <td>None</td>\n", | |
" <td>POLYGON ((-104.8776099 38.8382117, -104.877526...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>8062757</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>Freedom Square Park</td>\n", | |
" <td>POLYGON ((-105.0955626 40.5955058, -105.094970...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>12559765</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>Beattie Park</td>\n", | |
" <td>POLYGON ((-105.0857437 40.5456289, -105.085731...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>17134722</td>\n", | |
" <td>7203</td>\n", | |
" <td>residential</td>\n", | |
" <td>None</td>\n", | |
" <td>POLYGON ((-104.5936421 38.290731, -104.5931882...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>23550375</td>\n", | |
" <td>7206</td>\n", | |
" <td>cemetery</td>\n", | |
" <td>Loveland Burial Park</td>\n", | |
" <td>POLYGON ((-105.0774965 40.4144193, -105.073183...</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" osm_id code fclass name \\\n", | |
"0 7670436 7218 grass None \n", | |
"1 8062757 7202 park Freedom Square Park \n", | |
"2 12559765 7202 park Beattie Park \n", | |
"3 17134722 7203 residential None \n", | |
"4 23550375 7206 cemetery Loveland Burial Park \n", | |
"\n", | |
" geometry \n", | |
"0 POLYGON ((-104.8776099 38.8382117, -104.877526... \n", | |
"1 POLYGON ((-105.0955626 40.5955058, -105.094970... \n", | |
"2 POLYGON ((-105.0857437 40.5456289, -105.085731... \n", | |
"3 POLYGON ((-104.5936421 38.290731, -104.5931882... \n", | |
"4 POLYGON ((-105.0774965 40.4144193, -105.073183... " | |
] | |
}, | |
"execution_count": 9, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"landuse.head()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 34, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"ax = landuse[landuse.osm_id=='7670436'].plot()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"array(['grass', 'park', 'residential', 'cemetery', 'industrial', 'meadow',\n", | |
" 'retail', 'recreation_ground', 'farm', 'nature_reserve',\n", | |
" 'military', 'commercial', 'forest', 'scrub', 'allotments',\n", | |
" 'quarry', 'orchard', 'heath', 'vineyard'], dtype=object)" | |
] | |
}, | |
"execution_count": 10, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"landuse.fclass.unique()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"parks = landuse[landuse.fclass.isin(['grass', 'park', 'meadow', 'recreation_ground', 'nature_preserve', 'orchard', 'vineyard'])]" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>osm_id</th>\n", | |
" <th>code</th>\n", | |
" <th>fclass</th>\n", | |
" <th>name</th>\n", | |
" <th>geometry</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>7670436</td>\n", | |
" <td>7218</td>\n", | |
" <td>grass</td>\n", | |
" <td>None</td>\n", | |
" <td>POLYGON ((-104.8776099 38.8382117, -104.877526...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>8062757</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>Freedom Square Park</td>\n", | |
" <td>POLYGON ((-105.0955626 40.5955058, -105.094970...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>12559765</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>Beattie Park</td>\n", | |
" <td>POLYGON ((-105.0857437 40.5456289, -105.085731...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>5</th>\n", | |
" <td>25654168</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>Challenger Regional Park</td>\n", | |
" <td>POLYGON ((-104.7894733 39.535079, -104.7894262...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>6</th>\n", | |
" <td>25676795</td>\n", | |
" <td>7202</td>\n", | |
" <td>park</td>\n", | |
" <td>LoDo Children's Playground</td>\n", | |
" <td>POLYGON ((-105.0043669 39.750123, -105.0043629...</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" osm_id code fclass name \\\n", | |
"0 7670436 7218 grass None \n", | |
"1 8062757 7202 park Freedom Square Park \n", | |
"2 12559765 7202 park Beattie Park \n", | |
"5 25654168 7202 park Challenger Regional Park \n", | |
"6 25676795 7202 park LoDo Children's Playground \n", | |
"\n", | |
" geometry \n", | |
"0 POLYGON ((-104.8776099 38.8382117, -104.877526... \n", | |
"1 POLYGON ((-105.0955626 40.5955058, -105.094970... \n", | |
"2 POLYGON ((-105.0857437 40.5456289, -105.085731... \n", | |
"5 POLYGON ((-104.7894733 39.535079, -104.7894262... \n", | |
"6 POLYGON ((-105.0043669 39.750123, -105.0043629... " | |
] | |
}, | |
"execution_count": 12, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"parks.head()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"61513" | |
] | |
}, | |
"execution_count": 13, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"len(parks)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 33, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"ax = parks.plot()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
" This is every \"park\" that OSM knows about in the state of CO\n", | |
"\n", | |
" ...unfortunately that's too much data to pipe into a webmap" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 35, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<iframe src=\"data:text/html;base64,PGhlYWQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvbGVhZmxldC8wLjcuMy9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvbGVhZmxldC8wLjcuMy9sZWFmbGV0LmNzcyIgLz4KICA8c3R5bGU+CiAgICAjbWFwMzJkZjRmMmUwZGE2NDFjZjk2YWFmZTY1MjE1NzRiNzUgewogICAgICBoZWlnaHQ6MTAwJTsKICAgIH0KICA8L3N0eWxlPiAKPC9oZWFkPgo8Ym9keT4KICA8ZGl2IGlkPSJtYXAzMmRmNGYyZTBkYTY0MWNmOTZhYWZlNjUyMTU3NGI3NSI+PC9kaXY+CjxzY3JpcHQgdGV4dD0idGV4dC9qYXZhc2NyaXB0Ij4KdmFyIG1hcCA9IEwubWFwKCdtYXAzMmRmNGYyZTBkYTY0MWNmOTZhYWZlNjUyMTU3NGI3NScpOwpMLnRpbGVMYXllcigKICAiaHR0cDovL3tzfS50aWxlLm9wZW5zdHJlZXRtYXAub3JnL3t6fS97eH0ve3l9LnBuZyIsCiAge21heFpvb206MTksIGF0dHJpYnV0aW9uOiAnPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2p3YXNzL21wbGxlYWZsZXQiPm1wbGxlYWZsZXQ8L2E+IHwgTWFwIGRhdGEgKGMpIDxhIGhyZWY9Imh0dHA6Ly9vcGVuc3RyZWV0bWFwLm9yZyI+T3BlblN0cmVldE1hcDwvYT4gY29udHJpYnV0b3JzJ30pLmFkZFRvKG1hcCk7CnZhciBnakRhdGEgPSB7InR5cGUiOiAiRmVhdHVyZUNvbGxlY3Rpb24iLCAiZmVhdHVyZXMiOiBbeyJ0eXBlIjogIkZlYXR1cmUiLCAiZ2VvbWV0cnkiOiB7InR5cGUiOiAiUG9seWdvbiIsICJjb29yZGluYXRlcyI6IFtbWy0xMDQuODc3NjA5OSwgMzguODM4MjExN10sIFstMTA0Ljg3NzUyNjgsIDM4LjgzODI5MTFdLCBbLTEwNC44NzcyMzk4LCAzOC44MzgyNzY1XSwgWy0xMDQuODc3MTc4MSwgMzguODM4Mzc4OTAwMDAwMDFdLCBbLTEwNC44NzcxOTk1MDAwMDAwMiwgMzguODM4NTk4Ml0sIFstMTA0Ljg3Njk3OTYsIDM4LjgzODc0ODddLCBbLTEwNC44NzY5MjA2LCAzOC44Mzg4NDY5XSwgWy0xMDQuODc2ODUwOCwgMzguODM5MjI5Ml0sIFstMTA0Ljg3NjcxNjcsIDM4LjgzOTI1MjJdLCBbLTEwNC44NzY2ODQ1LCAzOC44Mzk0ODJdLCBbLTEwNC44NzY2MjAyLCAzOC44Mzk1NDg4XSwgWy0xMDQuODc2NDk5NSwgMzguODM5NTY3Nl0sIFstMTA0Ljg3NjQ3NTMsIDM4LjgzOTY0OTFdLCBbLTEwNC44NzYzOTQ5LCAzOC44NDAwNjA3XSwgWy0xMDQuODc2MTkzNywgMzguODQwMDI3M10sIFstMTA0Ljg3NjIwNDQsIDM4LjgzOTg2MDFdLCBbLTEwNC44NzYyMDcxLCAzOC44Mzk4MjA0XSwgWy0xMDQuODc2MTk2NCwgMzguODM5NzQ5NF0sIFstMTA0Ljg3NjA5OTgsIDM4LjgzOTcxMThdLCBbLTEwNC44NzYxNjY5LCAzOC44MzkzNTQ1XSwgWy0xMDQuODc1OTg3MiwgMzguODM5MzMxNl0sIFstMTA0Ljg3NjAwNTksIDM4LjgzOTI1ODRdLCBbLTEwNC44NzU2NjUzLCAzOC44MzkxNzddLCBbLTEwNC44NzU2MTE3LCAzOC44MzkyMzEzXSwgWy0xMDQuODc1NTMxMiwgMzguODM5NjQwOF0sIFstMTA0Ljg3NTU2MDcwMDAwMDAxLCAzOC44Mzk3OTMzXSwgWy0xMDQuODc1NjAwOTAwMDAwMDEsIDM4Ljg0MDAyNzNdLCBbLTEwNC44NzU2MDA5MDAwMDAwMSwgMzguODQwMTI3NV0sIFstMTA0Ljg3NTY2MjYsIDM4Ljg0MDIxMTFdLCBbLTEwNC44NzU1MTI0LCAzOC44NDAyMDQ4XSwgWy0xMDQuODc1MTg1MiwgMzguODQwMjEzMl0sIFstMTA0Ljg3NDE2ODUsIDM4Ljg0MDI3NzddLCBbLTEwNC44NzQ0NzQ0LCAzOC44Mzk3NTE1XSwgWy0xMDQuODc1MTQ3NiwgMzguODM4MTk1XSwgWy0xMDQuODc0NzYwOSwgMzguODM3MDQ4NV0sIFstMTA0Ljg3NTA0NTcsIDM4LjgzNjg2XSwgWy0xMDQuODc1MjA0LCAzOC44MzY3NTM0XSwgWy0xMDQuODc1Njk3NSwgMzguODM2NDQyMV0sIFstMTA0Ljg3NjA5NDUsIDM4LjgzNjE5MzVdLCBbLTEwNC44NzYzMzMyLCAzOC44MzYwMDM0XSwgWy0xMDQuODc2NTUwNCwgMzguODM1Nzc1N10sIFstMTA0Ljg3Njc2NzcsIDM4LjgzNTg5MjddLCBbLTEwNC44NzY3OTcyLCAzOC44MzYwMTgwMDAwMDAwMV0sIFstMTA0Ljg3NjY5NzksIDM4LjgzNjI1NDFdLCBbLTEwNC44NzY1NTU4LCAzOC44MzY0NTI2MDAwMDAwMV0sIFstMTA0Ljg3NjQyMTcsIDM4LjgzNjg3MjVdLCBbLTEwNC44NzY0NywgMzguODM3MTAwM10sIFstMTA0Ljg3NzAzMDUsIDM4LjgzNzIwMDZdLCBbLTEwNC44Nzc0ODkyLCAzOC44MzcyMzgyXSwgWy0xMDQuODc3NDkxOSwgMzguODM3NDAxMV0sIFstMTA0Ljg3NzQwNjEsIDM4LjgzNzU3ODddLCBbLTEwNC44Nzc1NTg5LCAzOC44Mzc3MjVdLCBbLTEwNC44Nzc2MDk5LCAzOC44MzgyMTE3XV1dfSwgInByb3BlcnRpZXMiOiB7ImNvbG9yIjogIm5vbmUiLCAid2VpZ2h0IjogMS4wLCAib3BhY2l0eSI6IG51bGwsICJmaWxsQ29sb3IiOiAiIzFGNzdCNCIsICJkYXNoQXJyYXkiOiAiMTAsMCJ9fV19OwoKaWYgKGdqRGF0YS5mZWF0dXJlcy5sZW5ndGggIT0gMCkgewogIHZhciBnaiA9IEwuZ2VvSnNvbihnakRhdGEsIHsKICAgIHN0eWxlOiBmdW5jdGlvbiAoZmVhdHVyZSkgewogICAgICByZXR1cm4gZmVhdHVyZS5wcm9wZXJ0aWVzOwogICAgfSwKICAgIHBvaW50VG9MYXllcjogZnVuY3Rpb24gKGZlYXR1cmUsIGxhdGxuZykgewogICAgICB2YXIgaWNvbiA9IEwuZGl2SWNvbih7J2h0bWwnOiBmZWF0dXJlLnByb3BlcnRpZXMuaHRtbCwgCiAgICAgICAgaWNvbkFuY2hvcjogW2ZlYXR1cmUucHJvcGVydGllcy5hbmNob3JfeCwgCiAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmUucHJvcGVydGllcy5hbmNob3JfeV0sIAogICAgICAgICAgY2xhc3NOYW1lOiAnZW1wdHknfSk7ICAvLyBXaGF0IGNhbiBJIGRvIGFib3V0IGVtcHR5PwogICAgICByZXR1cm4gTC5tYXJrZXIobGF0bG5nLCB7aWNvbjogaWNvbn0pOwogICAgfQogIH0pOwogIGdqLmFkZFRvKG1hcCk7CiAgCiAgbWFwLmZpdEJvdW5kcyhnai5nZXRCb3VuZHMoKSk7Cn0gZWxzZSB7CiAgbWFwLnNldFZpZXcoWzAsIDBdLCAxKTsKfQo8L3NjcmlwdD4KPC9ib2R5Pg==\" width=\"100%\" height=\"240\"></iframe>" | |
], | |
"text/plain": [ | |
"<IPython.core.display.HTML object>" | |
] | |
}, | |
"execution_count": 35, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"leaf.display(fig=ax.figure, crs=parks.crs)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## Trails" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"To locate trails, we can do something similar using OSM's roads data" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 16, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"roads = gpd.GeoDataFrame.from_file('colorado-latest-free.shp/gis_osm_roads_free_1.shp')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div>\n", | |
"<style scoped>\n", | |
" .dataframe tbody tr th:only-of-type {\n", | |
" vertical-align: middle;\n", | |
" }\n", | |
"\n", | |
" .dataframe tbody tr th {\n", | |
" vertical-align: top;\n", | |
" }\n", | |
"\n", | |
" .dataframe thead th {\n", | |
" text-align: right;\n", | |
" }\n", | |
"</style>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>osm_id</th>\n", | |
" <th>code</th>\n", | |
" <th>fclass</th>\n", | |
" <th>name</th>\n", | |
" <th>ref</th>\n", | |
" <th>oneway</th>\n", | |
" <th>maxspeed</th>\n", | |
" <th>layer</th>\n", | |
" <th>bridge</th>\n", | |
" <th>tunnel</th>\n", | |
" <th>geometry</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>4271726</td>\n", | |
" <td>5115</td>\n", | |
" <td>tertiary</td>\n", | |
" <td>30th Street</td>\n", | |
" <td>None</td>\n", | |
" <td>F</td>\n", | |
" <td>40</td>\n", | |
" <td>0</td>\n", | |
" <td>F</td>\n", | |
" <td>F</td>\n", | |
" <td>LINESTRING (-105.2530527 39.9999373, -105.2531...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>4279016</td>\n", | |
" <td>5122</td>\n", | |
" <td>residential</td>\n", | |
" <td>Table Mesa Court</td>\n", | |
" <td>None</td>\n", | |
" <td>B</td>\n", | |
" <td>0</td>\n", | |
" <td>0</td>\n", | |
" <td>F</td>\n", | |
" <td>F</td>\n", | |
" <td>LINESTRING (-105.2601343 39.9802969, -105.2601...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>4280551</td>\n", | |
" <td>5122</td>\n", | |
" <td>residential</td>\n", | |
" <td>Stephens Road</td>\n", | |
" <td>None</td>\n", | |
" <td>B</td>\n", | |
" <td>0</td>\n", | |
" <td>0</td>\n", | |
" <td>F</td>\n", | |
" <td>F</td>\n", | |
" <td>LINESTRING (-105.2627278 39.9812253, -105.2620...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>4322008</td>\n", | |
" <td>5111</td>\n", | |
" <td>motorway</td>\n", | |
" <td>Denver Boulder Turnpike</td>\n", | |
" <td>US 36</td>\n", | |
" <td>F</td>\n", | |
" <td>104</td>\n", | |
" <td>0</td>\n", | |
" <td>F</td>\n", | |
" <td>F</td>\n", | |
" <td>LINESTRING (-105.0572053 39.8646509, -105.0569...</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>4325613</td>\n", | |
" <td>5121</td>\n", | |
" <td>unclassified</td>\n", | |
" <td>Innovation Drive</td>\n", | |
" <td>None</td>\n", | |
" <td>F</td>\n", | |
" <td>0</td>\n", | |
" <td>0</td>\n", | |
" <td>F</td>\n", | |
" <td>F</td>\n", | |
" <td>LINESTRING (-105.2485297 40.0093799, -105.2484...</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" osm_id code fclass name ref oneway \\\n", | |
"0 4271726 5115 tertiary 30th Street None F \n", | |
"1 4279016 5122 residential Table Mesa Court None B \n", | |
"2 4280551 5122 residential Stephens Road None B \n", | |
"3 4322008 5111 motorway Denver Boulder Turnpike US 36 F \n", | |
"4 4325613 5121 unclassified Innovation Drive None F \n", | |
"\n", | |
" maxspeed layer bridge tunnel \\\n", | |
"0 40 0 F F \n", | |
"1 0 0 F F \n", | |
"2 0 0 F F \n", | |
"3 104 0 F F \n", | |
"4 0 0 F F \n", | |
"\n", | |
" geometry \n", | |
"0 LINESTRING (-105.2530527 39.9999373, -105.2531... \n", | |
"1 LINESTRING (-105.2601343 39.9802969, -105.2601... \n", | |
"2 LINESTRING (-105.2627278 39.9812253, -105.2620... \n", | |
"3 LINESTRING (-105.0572053 39.8646509, -105.0569... \n", | |
"4 LINESTRING (-105.2485297 40.0093799, -105.2484... " | |
] | |
}, | |
"execution_count": 17, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"roads.head()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"array(['tertiary', 'residential', 'motorway', 'unclassified', 'service',\n", | |
" 'secondary', 'cycleway', 'motorway_link', 'secondary_link',\n", | |
" 'footway', 'primary', 'primary_link', 'track', 'track_grade2',\n", | |
" 'path', 'track_grade5', 'track_grade4', 'unknown', 'track_grade3',\n", | |
" 'tertiary_link', 'living_street', 'track_grade1', 'pedestrian',\n", | |
" 'trunk_link', 'trunk', 'steps', 'bridleway'], dtype=object)" | |
] | |
}, | |
"execution_count": 18, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"roads.fclass.unique()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"For trails, OSM [recommends](https://wiki.openstreetmap.org/wiki/Tag:highway=trail) using tags like path, footway, cycleway, and bridleway" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 19, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"trails = roads[roads.fclass.isin(['footway', 'cycleway', 'bridleway', 'path'])] # , 'pedestrian', 'steps' ?" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 20, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f875b2f68d0>" | |
] | |
}, | |
"execution_count": 20, | |
"metadata": {}, | |
"output_type": "execute_result" | |
}, | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"trails.plot()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 26, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"107555" | |
] | |
}, | |
"execution_count": 26, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"len(trails)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": {}, | |
"outputs": [], | |
"source": [] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python [default]", | |
"language": "python", | |
"name": "python3" | |
}, | |
"language_info": { | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"file_extension": ".py", | |
"mimetype": "text/x-python", | |
"name": "python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython3", | |
"version": "3.6.5" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment