{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Unsupervised modeling\n", "\n", "The goal of this notebook is to identify and extract clusters that can review user's habit and common routine, such as home/school/work clusters" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "%reload_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[PosixPath('data/ny.html'),\n", " PosixPath('data/houston_processed.feather'),\n", " PosixPath('data/florida.html'),\n", " PosixPath('data/tx.html'),\n", " PosixPath('data/houston_ready.feather'),\n", " PosixPath('data/houston.html'),\n", " PosixPath('data/location_history.json'),\n", " PosixPath('data/houston_processed_miles_time_diff.feather')]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "import pandas as pd\n", "from pathlib import Path\n", "import json\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "# from geopy.distance import distance\n", "\n", "PATH = Path('data')\n", "list(PATH.iterdir())\n", "\n", "from IPython.core.interactiveshell import InteractiveShell\n", "InteractiveShell.ast_node_interactivity = \"all\"" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# from mpl_toolkits.basemap import Basemap\n", "import folium\n", "from folium.plugins import MarkerCluster,FastMarkerCluster\n", "\n", "from sklearn.cluster import KMeans\n", "k=5\n", "\n", "import matplotlib.cm as cmx\n", "import matplotlib.colors as mcolors\n", "# from cycler import cycler\n", "\n", "# def get_cmap(N):\n", "# color_norm = mcolors.Normalize(vmin=0, vmax=N-1)\n", "# return cmx.ScalarMappable(norm=color_norm, cmap='tab10').to_rgba\n", "# num_colr = k\n", "# cmap = get_cmap(num_colr)\n", "# colr_list = [cmap(float(x)) for x in range(num_colr)]\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "df = pd.read_feather(PATH/'houston_ready.feather')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
012
accuracy30211259
altitude000
headingNaNNaNNaN
velocityNaNNaNNaN
verticalAccuracyNaNNaNNaN
act_conf146NaN100
act_type1UNKNOWNNoneTILTING
act_cont227NaNNaN
act_type2IN_VEHICLENoneNone
extra_intValNaNNaNNaN
extra_nameNoneNoneNone
extra_typeNoneNoneNone
date_time2015-11-30 21:41:32.110000-06:002015-11-30 21:43:05.510000-06:002015-11-30 21:47:40.071000-06:00
year201520152015
month111111
day303030
day_of_week000
hour212121
minute414347
latitude29.689429.689329.6924
longitude-95.2712-95.2712-95.2805
cluster000
mile_diff00.004938730.599316
planeFalseFalseFalse
\n", "
" ], "text/plain": [ " 0 \\\n", "accuracy 30 \n", "altitude 0 \n", "heading NaN \n", "velocity NaN \n", "verticalAccuracy NaN \n", "act_conf1 46 \n", "act_type1 UNKNOWN \n", "act_cont2 27 \n", "act_type2 IN_VEHICLE \n", "extra_intVal NaN \n", "extra_name None \n", "extra_type None \n", "date_time 2015-11-30 21:41:32.110000-06:00 \n", "year 2015 \n", "month 11 \n", "day 30 \n", "day_of_week 0 \n", "hour 21 \n", "minute 41 \n", "latitude 29.6894 \n", "longitude -95.2712 \n", "cluster 0 \n", "mile_diff 0 \n", "plane False \n", "\n", " 1 \\\n", "accuracy 21 \n", "altitude 0 \n", "heading NaN \n", "velocity NaN \n", "verticalAccuracy NaN \n", "act_conf1 NaN \n", "act_type1 None \n", "act_cont2 NaN \n", "act_type2 None \n", "extra_intVal NaN \n", "extra_name None \n", "extra_type None \n", "date_time 2015-11-30 21:43:05.510000-06:00 \n", "year 2015 \n", "month 11 \n", "day 30 \n", "day_of_week 0 \n", "hour 21 \n", "minute 43 \n", "latitude 29.6893 \n", "longitude -95.2712 \n", "cluster 0 \n", "mile_diff 0.00493873 \n", "plane False \n", "\n", " 2 \n", "accuracy 1259 \n", "altitude 0 \n", "heading NaN \n", "velocity NaN \n", "verticalAccuracy NaN \n", "act_conf1 100 \n", "act_type1 TILTING \n", "act_cont2 NaN \n", "act_type2 None \n", "extra_intVal NaN \n", "extra_name None \n", "extra_type None \n", "date_time 2015-11-30 21:47:40.071000-06:00 \n", "year 2015 \n", "month 11 \n", "day 30 \n", "day_of_week 0 \n", "hour 21 \n", "minute 47 \n", "latitude 29.6924 \n", "longitude -95.2805 \n", "cluster 0 \n", "mile_diff 0.599316 \n", "plane False " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "(341045, 24)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(3).T\n", "df.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Clustering and plotting cluster" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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MZF84QvNMTHR3fcAAAAwuoRHq8yWLU3H0ZSZYRLL69prkwMHmnNXxsebeVhvf3vzGAAAAJaa8GiIHL18rZTktNNe/Ofce2+zS1vSbNWu+2gwtm5Nxsaac1d6vSac+vjHLVkDAACgG2YeDZG22Ud79iT33//ihiDv3JlcdVXz+KUvTQ4eXJISAQAAgFXCzKMVbipIeslLkt27m5k2V1zRDEheiCuvTM45p3n8ne8k55678PcCAAAATBEeDZGZg7MPH07uuCP51V9Ntm1Lnnkmue225M1vTo5b4L+13buTdeuax3fdlfzYj3VXOwAAALA6CY+GWK+XfPjDzRDsj350+nqtyd69C3v/z//89PMnn2yCpwsvXOpKAQAAgNVKeLRC9HpHzkR673ub5+ef3/6e7dub7qOZak1uuaV573zHS17ywmunnmr5GwAAAIwS4dEKcvhw8u53J694RfLcc821O++cDnbWrJneWa3fTz7xicV937PPvvDao48mP/7jzRBuu7h1Z+/e5IILFtZhBgAAAF2y29oK0+8nExPJpz+d3Hff7Pds3Jg89NDiv+v442cPkI62bVuya9fiv49pF1yQPPBAsmlTcuutg64GAACA1chua6vU1Byke+9NTj559nsWEhxt23bkgO7ZjmeeOfL5HXckW7cmmzcf+VnXXpvs2GE521Latq0JjrZtG3QlAAAAjDqdR6vEmWcuvNtoz55mCPdSft/3f3/yl3/ZLK2bWlL3+tc3IRcAAAAwfHQejZgHH2y6g8bH57/36quX5vve8Y5m97bzzmuCpGeemQ6OkmZZ3dQ8puOPn3s4d9tsn7PPnr7nuONmH+I9dQybYa4NAAAAFkp4tMpcf/0Ll5915eabk+efT/btSz74wWYZ3bp1s987M1SazWWXJRs2NLvHTQUu55575FynWueewXTiicnLXtbMfJo6n3jiC0OmdeuWfxD1Kacs7/cBAADAUhEerWKnnTZ718uHPrT033XllcljjzXhTq0vnNXTFirNdPBgs3vclC9/+cjQZaqDqc3TTydPPpl89avN+etfb64d7dChJqyaGSidf/789S3G4483nVMAAACw0nT242wp5YRSyhdLKV8qpXyllLJz8vprSym3l1LuL6X8TilljjiAY7VzZ/LII7O/tth5Rwuxa9eR3U9TodLRxx13JGvXNu9Zv75ZAjfljW9M/uiPpu89fPiFQ7zHx6dDmRNOSE46KXnNa5rz6ac31xbizjtf2KG0YcPS/prUqgMJAACAlWdth5/9TJKLaq0HSynrktxWSvlckg8k+Wit9bpSyseSbE1yTYd1jJy5Zuzs2bN8dSxErzf/kra5XH/9i7t/797kn/yT2TuSjnbwYLMU74knXvzw77Z/B48/vvDPAAAAgGHQWedRbRycfLpu8qhJLkrye5PX9yS5pKsaSK666shOneXoOhpmW7YkTz01/euxZ09y6qmz37tmTRMcJc3spdNOa5bNXbLI37FTwdLUssLTTlvc5wEAAECXOp3CUkpZU0q5K8mjST6f5D8neaLWemjylq8lOb3lvdtLKf1SSv/AgQNdlrmq9PtHPr/yysHUsVJs2ZJ885uzL6n7sz9LXv7y6XsfeaTpkpqYmF7atn379Ot79y58d7VSppcVti0v5IV27rSLHQAAwHLrNDyqtT5faz0nyRlJ3pLkDbPd1vLeXbXWXq21NzY21mWZq8o110zPENq4cbC1rHS9XrPMbHy8feD37t3THUSXXba89Y2ia68ddAUAAACjZ1n2f6q1PpHk5iRvTfLyUsrUrKUzkjy8HDWMgr17kxtuSMbGkq1bkwcfHHRFq8P11zcDv7dtm323N51Dy2fr1kFXAAAAMHq63G1trJTy8snHJyZ5Z5J7ktyU5Kcnb7ssyURXNYySSy5pOl++9a2m8+h97xt0RavPrl1H7va2VO64Y+k+a7W78sojlxYCAADQvS53W/veJHtKKWvShFS/W2u9oZTyF0muK6VcneTPk1iIsgj9fjOD54YbmufPP59cfXWz5Irht369f1cAAAAMt87Co1rr3UnOneX6X6WZf8Qi9PvJBz/YdK289rXJ931f8td/nVx8sR3Vlkutix/afPBg0zV2/fVLUxMAAAAstWWZecTS6veTK65odgN75pnkq19NPvnJZi6PEGJul1zSzC265JLm13HHjuT885M1a5rziSc2gdAppzSv7dzZDB5/xSuandW2bk02bFja3b4mJpqlhscd13zmcf5UAgAAMES6XLbGErrwwuSWW6afv/SlzbFuXfJLv2TpU9KEO3v2JCefnLz1rcmddzZhz5VXTi/v+8M/TA4dSm68MXnjG5P9+5v7kulz0uyytn9/8oUvJF//etNldN11yRlnNN1CS+3556cf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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig,ax = plt.subplots(figsize=(20,10))\n", "_=ax.scatter(df.longitude,df.latitude,c='blue',s=3,alpha=0.5)\n", "\n", "_=ax.set_ylabel('latitude')\n", "_=ax.set_xlabel('longitude')\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's exclude flight GPS points" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# recalculate miles differences\n", "def haversine_array(lat1, lng1, lat2, lng2):\n", " lat1, lng1, lat2, lng2 = map(np.radians, (lat1, lng1, lat2, lng2))\n", " AVG_EARTH_RADIUS = 6371 # in km\n", " lat = lat2 - lat1\n", " lng = lng2 - lng1\n", " d = np.sin(lat * 0.5) ** 2 + np.cos(lat1) * np.cos(lat2) * np.sin(lng * 0.5) ** 2\n", " h = 2 * AVG_EARTH_RADIUS * np.arcsin(np.sqrt(d))\n", " return h\n", "\n", "lat2 = df.latitude.values.tolist()\n", "long2 = df.longitude.values.tolist()\n", "\n", "lat1 = df.latitude.shift().values.tolist()\n", "lat1[0] = lat2[0]\n", "long1 = df.longitude.shift().values.tolist()\n", "long1[0] = long2[0]\n", "\n", "km_diff = haversine_array(lat1,long1,lat2,long2) \n", "df['mile_diff'] = km_diff * 0.621371 # to miles" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "year month day\n", "2016 4 18 19.314191\n", " 5 31 162.667397\n", " 6 3 708.936381\n", " 10 13 236.593397\n", " 12 21 26.120457\n", " 22 938.012779\n", " 24 139.839309\n", " 26 25.258437\n", " 29 95.911094\n", "2017 1 3 139.469908\n", "Name: mile_diff, dtype: float64" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df[df.mile_diff>12].groupby(['year','month','day']).mile_diff.mean()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "df['plane'] = df.mile_diff>12" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# df.to_feather(PATH/'houston_ready.feather')" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "df_ground = df[~df.plane].copy().reset_index(drop=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Apply kmeans clustering" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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e+bDM/Zc79gtnz9qvf0TX73786770cmv7t7+3P+7Js+JtdkWrUr3ukfjWpMbztj8Ium6e54N9cvbH8+Mvcfl/efcmPufWJaz3rZfXjt13BbnBQAAYGBQHvUxq1atynnnnbfeLJ7n+tCHPlRbHD3yyCNZsWJFhgwZkgsvvDAjRozIa17zmjz++OO56qqrNjj+kUfWX8/noYceyh133JFf/vKXqaoqI0eOzKpVq7Js2bLcfffdKaV0jx00aFB23333DBkyJCtWrHje/UeMGJFly5ZtMGtLS0v32k277LLL887v2rIo92RC2lpKVrR3ZuzIwRnUUmXxys5M2mFYfvyhg7Nw2eoMH9yaoYNan3f9frtuv8Hnbk1feNchOffmS7b6fed3bHrMxvzwpFfm6K9fneGDW/MPb903v75zQa6798lUST5y3u/zh5kW5AYAAKBnfG2tD/j2t7+dxx57rPZ8KSXjx4/PLrvskje96U3dx+fPn5877rgjN910U3bYYYc89NBD3TOCnmvChAl59NFHe5zpQx/6UC644IIsWrQoJ5xwQkaNGpWf/exnmTx5co466qiUUrJkyZLuWUwbs3DhwowePTrLly/PiBEjUlVVWlvXlj133HFHkmTvvffuHr9y5crceeedeelLX5rW1taUUlJV1XqlVV/ywJPL87p/uGK9YxeefFD22WX7fODcObn2vic3677zztw6r7AlyZNLV2XGP16ZJSvX5HUv3innvu+VW+3eAAAA9E89/dqa8qjJvvGNb2ThwoUbPDds2LC84x3vyG677bbe8fnz5+eBBx7I5ZdfnjVr1mRTf4YtLS056aSTcskll2Tp0qU58MADM3z48Fx66aWZPHlyjjnmmDz66KP5n//5nyxfvjxTp07NO9/5znR2dqajo2PAf8VtU9Z0dGbPzz77euGGSp9nXkd7oSaPas1Vnzlq0wN7oKqqPLF0dXYaObjPFnEAAAD0HuVRH7RkyZLMnTs3++67b6655prMmTOnduzf//3fp7W1NZ2dnfnDH/6Qiy++uHsdoba2tlRV1T0bZ9CgQdlll10yf/78rF69OqWUHHPMMbn88suz22675YgjjsiYMWN667fJBnzux3Ny7py1s8ueWy5tqlj65akH58UT/PkBAACwdSmP+qAzzjijuwCq8453vCOTJ0/O1Vdfnaeeeir33ntvOjrW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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "k=5\n", "kmeans = KMeans(n_clusters=k,random_state=42).fit(df_ground[['latitude','longitude']])\n", "df_ground['cluster']= kmeans.predict(df_ground[['latitude','longitude']])\n", "\n", "fig,ax = plt.subplots(figsize=(20,10))\n", "_=ax.scatter(df_ground.longitude,df_ground.latitude,c=df_ground.cluster,cmap='tab10',s=3,alpha=1)\n", "\n", "_=ax.set_ylabel('latitude')\n", "_=ax.set_xlabel('longitude')\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Look like we still have some residuals of flight GPS left. We did get rid most of flight GPS to Florida (bottom right) and around Dallas (above dense Houston points).\n", "\n", "K-means did a good job on separate travelling points (outside of Houston). Let's plot each of them" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig,axes = plt.subplots(nrows=k,figsize=(15,8*k));\n", "for i in range(k):\n", " _=axes[i].scatter(df_ground[df_ground.cluster==i].longitude,df_ground[df_ground.cluster==i].latitude, c=colr_list[i],s=3,alpha=1)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "After few k, k=5 seems to fit best as kmeans recognizes all the major states and cities I visited. Let's take a look at few of them" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Mapping GPS point with Folium" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## cluster 1: Florida" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(8830, 24)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_flo = df_ground[df_ground.cluster==1].reset_index(drop=True)\n", "df_flo.shape" ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [], "source": [ "\n", "callback = \"\"\"\\\n", "function (row) {\n", " var icon, marker;\n", " icon = L.AwesomeMarkers.icon({\n", " icon: \"map-marker\", markerColor: \"red\"});\n", " marker = L.marker(new L.LatLng(row[0], row[1]));\n", " marker.setIcon(icon);\n", " return marker;\n", "};\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "FLORIDA=[26.492328,-80.497977]\n", "\n", " \n", "m_flo = folium.Map(location=FLORIDA,tiles='cartodbpositron',zoom_start=7)\n", "\n", "FastMarkerCluster(data=list(zip(df_flo.latitude.values,df_flo.longitude.values)),\n", " callback = callback).add_to(m_flo)\n", "\n", "# for lat,long in zip(df_flo.latitude.values,df_flo.longitude.values): \n", "# _=folium.CircleMarker([lat,long], radius=1,\n", "# color='#0080bb', fill_color='#0080bb').add_to(m_flo);\n", "\n", "folium.LayerControl().add_to(m_flo)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "# m_flo.save(str(PATH/'florida.html'))" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ "
" ], "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m_flo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## cluster 2: NY" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(3165, 24)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_ny = df_ground[df_ground.cluster==2].reset_index(drop=True)\n", "df_ny.shape" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "NY=[40.735954,-73.993896]\n", "\n", " \n", "m_ny = folium.Map(location=NY,tiles='cartodbpositron',zoom_start=10)\n", "\n", "FastMarkerCluster(data=list(zip(df_ny.latitude.values,df_ny.longitude.values)),\n", " callback = callback).add_to(m_ny)\n", "\n", "# for lat,long in zip(df_ny.latitude.values,df_ny.longitude.values): \n", "# _=folium.CircleMarker([lat,long], radius=1,\n", "# color='#0080bb', fill_color='#0080bb').add_to(m_ny);\n", "\n", "\n", "folium.LayerControl().add_to(m_ny)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "# m_ny.save(str(PATH/'ny.html'))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
" ], "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m_ny" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cluster 3: Austin + San Antonio + Dallas" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(7395, 24)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_tx = df_ground[df_ground.cluster==3].reset_index(drop=True)\n", "df_tx.shape" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "TX=[30.265253, -97.714187]\n", "\n", " \n", "m_tx = folium.Map(location=TX,tiles='cartodbpositron',zoom_start=7)\n", "\n", "FastMarkerCluster(data=list(zip(df_tx.latitude.values,df_tx.longitude.values)),\n", " callback = callback).add_to(m_tx)\n", "\n", "# for lat,long in zip(df_tx.latitude.values,df_tx.longitude.values): \n", "# _=folium.CircleMarker([lat,long], radius=1,\n", "# color='#0080bb', fill_color='#0080bb').add_to(m_tx);\n", "\n", "\n", "folium.LayerControl().add_to(m_tx)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "# m_tx.save(str(PATH/'tx.html'))" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
" ], "text/plain": [ "" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m_tx" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cluster 4: Maryland" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(549, 24)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_md = df_ground[df_ground.cluster==4].reset_index(drop=True)\n", "df_md.shape" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "MD=[39.084967, -77.152883]\n", "\n", " \n", "m_md = folium.Map(location=MD,tiles='cartodbpositron',zoom_start=10)\n", "\n", "FastMarkerCluster(data=list(zip(df_md.latitude.values,df_md.longitude.values)),\n", " callback = callback).add_to(m_md)\n", "\n", "# for lat,long in zip(df_tx.latitude.values,df_tx.longitude.values): \n", "# _=folium.CircleMarker([lat,long], radius=1,\n", "# color='#0080bb', fill_color='#0080bb').add_to(m_tx);\n", "\n", "\n", "folium.LayerControl().add_to(m_md)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ "
" ], "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m_md" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Main target: hometown Houston" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(321048, 24)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_h = df_ground[df_ground.cluster==0].reset_index(drop=True)\n", "df_h.shape" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "# plot fewer data points for folium\n", "n=50000\n", "idxs = np.random.permutation(len(df_h))[:n]" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "H=[29.766672, -95.339652]\n", "\n", " \n", "m_h = folium.Map(location=H,tiles='cartodbpositron',zoom_start=10)\n", "\n", "FastMarkerCluster(data=list(zip(df_h.loc[idxs,:].latitude.values,df_h.loc[idxs,:].longitude.values)),\n", " callback = callback).add_to(m_h)\n", "\n", "# for lat,long in zip(df_h.latitude.values,df_h.longitude.values): \n", "# _=folium.CircleMarker([lat,long], radius=1,\n", "# color='#0080bb', fill_color='#0080bb').add_to(m_h);\n", "\n", "\n", "folium.LayerControl().add_to(m_h)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "# m_h.save(str(PATH/'houston.html'))" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/html": [ "