{"cells": [{"cell_type": "markdown", "metadata": {}, "source": ["# Bike Pattern 2\n", "\n", "We used a little bit of machine learning on [Divvy Data](https://www.divvybikes.com/system-data) to dig into a better division of Chicago. We try to identify patterns among bike stations."]}, {"cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [{"data": {"text/html": ["
run previous cell, wait for 2 seconds
\n", ""], "text/plain": [""]}, "execution_count": 2, "metadata": {}, "output_type": "execute_result"}], "source": ["from jyquickhelper import add_notebook_menu\n", "add_notebook_menu()"]}, {"cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": ["%matplotlib inline"]}, {"cell_type": "markdown", "metadata": {}, "source": ["## The data\n", "\n", "[Divvy Data](https://www.divvybikes.com/system-data) publishes a sample of the data. "]}, {"cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": ["from pyensae.datasource import download_data\n", "file = download_data(\"Divvy_Trips_2016_Q3Q4.zip\", url=\"https://s3.amazonaws.com/divvy-data/tripdata/\")"]}, {"cell_type": "markdown", "metadata": {}, "source": ["We know the stations."]}, {"cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": ["import pandas\n", "stations = pandas.read_csv(\"Divvy_Stations_2016_Q3.csv\")\n", "bikes = pandas.concat([pandas.read_csv(\"Divvy_Trips_2016_Q3.csv\"),\n", " pandas.read_csv(\"Divvy_Trips_2016_Q4.csv\")])"]}, {"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", "
trip_idstarttimestoptimebikeidtripdurationfrom_station_idfrom_station_nameto_station_idto_station_nameusertypegenderbirthyear
0121501609/30/2016 23:59:5810/1/2016 00:04:03495924569Damen Ave & Pierce Ave17Wood St & Division StSubscriberMale1988.0
1121501599/30/2016 23:59:5810/1/2016 00:04:092589251383Ashland Ave & Harrison St320Loomis St & Lexington StSubscriberFemale1990.0
2121501589/30/2016 23:59:5110/1/2016 00:24:5136561500302Sheffield Ave & Wrightwood Ave334Lake Shore Dr & Belmont AveCustomerNaNNaN
3121501579/30/2016 23:59:5110/1/2016 00:03:563570245475Washtenaw Ave & Lawrence Ave471Francisco Ave & Foster AveSubscriberFemale1988.0
4121501569/30/2016 23:59:3210/1/2016 00:26:5031581638302Sheffield Ave & Wrightwood Ave492Leavitt St & Addison StCustomerNaNNaN
\n", "
"], "text/plain": [" trip_id starttime stoptime bikeid tripduration \\\n", "0 12150160 9/30/2016 23:59:58 10/1/2016 00:04:03 4959 245 \n", "1 12150159 9/30/2016 23:59:58 10/1/2016 00:04:09 2589 251 \n", "2 12150158 9/30/2016 23:59:51 10/1/2016 00:24:51 3656 1500 \n", "3 12150157 9/30/2016 23:59:51 10/1/2016 00:03:56 3570 245 \n", "4 12150156 9/30/2016 23:59:32 10/1/2016 00:26:50 3158 1638 \n", "\n", " from_station_id from_station_name to_station_id \\\n", "0 69 Damen Ave & Pierce Ave 17 \n", "1 383 Ashland Ave & Harrison St 320 \n", "2 302 Sheffield Ave & Wrightwood Ave 334 \n", "3 475 Washtenaw Ave & Lawrence Ave 471 \n", "4 302 Sheffield Ave & Wrightwood Ave 492 \n", "\n", " to_station_name usertype gender birthyear \n", "0 Wood St & Division St Subscriber Male 1988.0 \n", "1 Loomis St & Lexington St Subscriber Female 1990.0 \n", "2 Lake Shore Dr & Belmont Ave Customer NaN NaN \n", "3 Francisco Ave & Foster Ave Subscriber Female 1988.0 \n", "4 Leavitt St & Addison St Customer NaN NaN "]}, "execution_count": 6, "metadata": {}, "output_type": "execute_result"}], "source": ["bikes.head()"]}, {"cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": ["from datetime import datetime, time\n", "df = bikes\n", "df[\"dtstart\"] = pandas.to_datetime(df.starttime, infer_datetime_format=True)\n", "df[\"dtstop\"] = pandas.to_datetime(df.stoptime, infer_datetime_format=True)\n", "\n", "df[\"stopday\"] = df.dtstop.apply(lambda r: datetime(r.year, r.month, r.day))\n", "df[\"stoptime\"] = df.dtstop.apply(lambda r: time(r.hour, r.minute, 0))\n", "df[\"stoptime10\"] = df.dtstop.apply(lambda r: time(r.hour, (r.minute // 10)*10, 0)) # every 10 minutes\n", "\n", "df[\"startday\"] = df.dtstart.apply(lambda r: datetime(r.year, r.month, r.day))\n", "df[\"starttime\"] = df.dtstart.apply(lambda r: time(r.hour, r.minute, 0))\n", "df[\"starttime10\"] = df.dtstart.apply(lambda r: time(r.hour, (r.minute // 10)*10, 0)) # every 10 minutes"]}, {"cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": ["df['stopweekday'] = df['dtstop'].dt.dayofweek\n", "df['startweekday'] = df['dtstart'].dt.dayofweek"]}, {"cell_type": "markdown", "metadata": {}, "source": ["## Normalize, aggregating and merging per start and stop time"]}, {"cell_type": "code", "execution_count": 8, "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", "
to_station_idto_station_namestopweekdaystoptime10nb_tripsnb_tripsdaystopdist
02Michigan Ave & Balbo Ave000:10:0029130.002191
12Michigan Ave & Balbo Ave000:20:0029130.002191
22Michigan Ave & Balbo Ave000:30:0029130.002191
32Michigan Ave & Balbo Ave001:00:0039130.003286
42Michigan Ave & Balbo Ave001:10:0029130.002191
\n", "
"], "text/plain": [" to_station_id to_station_name stopweekday stoptime10 nb_trips \\\n", "0 2 Michigan Ave & Balbo Ave 0 00:10:00 2 \n", "1 2 Michigan Ave & Balbo Ave 0 00:20:00 2 \n", "2 2 Michigan Ave & Balbo Ave 0 00:30:00 2 \n", "3 2 Michigan Ave & Balbo Ave 0 01:00:00 3 \n", "4 2 Michigan Ave & Balbo Ave 0 01:10:00 2 \n", "\n", " nb_tripsday stopdist \n", "0 913 0.002191 \n", "1 913 0.002191 \n", "2 913 0.002191 \n", "3 913 0.003286 \n", "4 913 0.002191 "]}, "execution_count": 9, "metadata": {}, "output_type": "execute_result"}], "source": ["key = [\"to_station_id\", \"to_station_name\", \"stopweekday\", \"stoptime10\"]\n", "keep = key + [\"trip_id\"]\n", "\n", "stopaggtime = df[keep].groupby(key, as_index=False).count()\n", "stopaggtime.columns = key + [\"nb_trips\"]\n", "\n", "stopaggday = df[keep[:-2] + [\"trip_id\"]].groupby(key[:-1], as_index=False).count()\n", "stopaggday.columns = key[:-1] + [\"nb_trips\"]\n", "\n", "stopaggday = df[keep[:-2] + [\"trip_id\"]].groupby(key[:-1], as_index=False).count()\n", "stopaggday.columns = key[:-1] + [\"nb_trips\"]\n", "\n", "stopmerge = stopaggtime.merge(stopaggday, on=key[:-1], suffixes=(\"\", \"day\"))\n", "stopmerge[\"stopdist\"] = stopmerge[\"nb_trips\"] / stopmerge[\"nb_tripsday\"]\n", "stopmerge.head()"]}, {"cell_type": "code", "execution_count": 9, "metadata": {"scrolled": false}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["stopmerge[stopmerge[\"to_station_id\"] == 2] \\\n", " .plot(x=\"stoptime10\", y=\"stopdist\", figsize=(14,4), kind=\"area\");"]}, {"cell_type": "code", "execution_count": 10, "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", "
from_station_idfrom_station_namestartweekdaystarttime10nb_tripsnb_tripsdaystartdist
02Michigan Ave & Balbo Ave000:00:00410650.003756
12Michigan Ave & Balbo Ave000:10:00110650.000939
22Michigan Ave & Balbo Ave000:20:00310650.002817
32Michigan Ave & Balbo Ave000:50:00410650.003756
42Michigan Ave & Balbo Ave001:10:00310650.002817
\n", "
"], "text/plain": [" from_station_id from_station_name startweekday starttime10 \\\n", "0 2 Michigan Ave & Balbo Ave 0 00:00:00 \n", "1 2 Michigan Ave & Balbo Ave 0 00:10:00 \n", "2 2 Michigan Ave & Balbo Ave 0 00:20:00 \n", "3 2 Michigan Ave & Balbo Ave 0 00:50:00 \n", "4 2 Michigan Ave & Balbo Ave 0 01:10:00 \n", "\n", " nb_trips nb_tripsday startdist \n", "0 4 1065 0.003756 \n", "1 1 1065 0.000939 \n", "2 3 1065 0.002817 \n", "3 4 1065 0.003756 \n", "4 3 1065 0.002817 "]}, "execution_count": 11, "metadata": {}, "output_type": "execute_result"}], "source": ["key = [\"from_station_id\", \"from_station_name\", \"startweekday\", \"starttime10\"]\n", "keep = key + [\"trip_id\"]\n", "\n", "startaggtime = df[keep].groupby(key, as_index=False).count()\n", "startaggtime.columns = key + [\"nb_trips\"]\n", "\n", "startaggday = df[keep[:-2] + [\"trip_id\"]].groupby(key[:-1], as_index=False).count()\n", "startaggday.columns = key[:-1] + [\"nb_trips\"]\n", "\n", "startaggday = df[keep[:-2] + [\"trip_id\"]].groupby(key[:-1], as_index=False).count()\n", "startaggday.columns = key[:-1] + [\"nb_trips\"]\n", "\n", "startmerge = startaggtime.merge(startaggday, on=key[:-1], suffixes=(\"\", \"day\"))\n", "startmerge[\"startdist\"] = startmerge[\"nb_trips\"] / startmerge[\"nb_tripsday\"]\n", "startmerge.head()"]}, {"cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [{"data": {"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0IAAAEKCAYAAAA/yuVcAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xu4JFV5L/7v2rNnmIiACaBRMRnOAWMAA+r80HM0PCHECzFK8lMTjEZJSIgeSc6JR80YFRMULwkR7xAQBVFhuOrIHsCBmQGGy8zsuc/sPZd9v98vvbt332udP3bXnt7Vq6pWVVd1VXd/P8/Dw57u6urq+3rrfde7hJQSREREREREzaQl6gMgIiIiIiKqNQZCRERERETUdBgIERERERFR02EgRERERERETYeBEBERERERNR0GQkRERERE1HQYCBERERERUdNhIERERERERE2HgRARERERETWd1qgPwIuzzjpLrlu3LurDICIiIiKimNqzZ8+UlPJst+3qKhBat24d2tvboz4MIiIiIiKKKSFEv852LI0jIiIiIqKmw0CIiIiIiIiaDgMhIiIiIiJqOnU1R4iIiIiIqBHl83kMDQ0hk8lEfSh1Y+3atTjnnHOwevVqX7dnIEREREREFLGhoSGcdtppWLduHYQQUR9O7EkpMT09jaGhIZx77rm+9sHSOCIiIiKiiGUyGZx55pkMgjQJIXDmmWdWlUFjIEREREREFAMMgryp9vliIERERERERE2Hc4SIiALyQPsgPv3gQWy87i148387M+rDISKiOrb+y1swlcwFtr+zXroG7Z9/u+fbffOb38R1112Hl7zkJZ5ud9ddd+Ed73gHXvWqV1Vct337dtx888149NFHsWnTJnR0dGDDhg3K/ezfvx8jIyP44z/+Y8/H7oYZISKigDx9fBIA8E8b90d8JEREVO+CDIKq2d83v/lNLC4uerpNsVjEXXfdhZGREddt3/ve99oGQcBSILR582ZP96+LgRARUcAKhoz6EIiIiDxLpVJ497vfjYsvvhgXXXQR/u3f/g0jIyO4/PLLcfnllwMAPv7xj2P9+vW48MIL8cUvfnH5tuvWrcONN96It73tbbj33nvR3t6OD33oQ7jkkkuQTqfx+OOP43Wvex3e9ra34eGHH16+3V133YXrr78eAPDAAw/g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\n", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["startmerge[startmerge[\"from_station_id\"] == 2] \\\n", " .plot(x=\"starttime10\", y=\"startdist\", figsize=(14,4), kind=\"area\");"]}, {"cell_type": "code", "execution_count": 12, "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", "
to_station_idto_station_namestopweekdaystoptime10nb_tripsstopnb_tripsdaystopstopdistfrom_station_idfrom_station_namestartweekdaystarttime10nb_tripsstartnb_tripsdaystartstartdist
02.0Michigan Ave & Balbo Ave0.000:10:002.0913.00.0021912.0Michigan Ave & Balbo Ave0.000:10:001.01065.00.000939
12.0Michigan Ave & Balbo Ave0.000:20:002.0913.00.0021912.0Michigan Ave & Balbo Ave0.000:20:003.01065.00.002817
22.0Michigan Ave & Balbo Ave0.000:30:002.0913.00.002191NaNNaNNaNNaNNaNNaNNaN
32.0Michigan Ave & Balbo Ave0.001:00:003.0913.00.003286NaNNaNNaNNaNNaNNaNNaN
42.0Michigan Ave & Balbo Ave0.001:10:002.0913.00.0021912.0Michigan Ave & Balbo Ave0.001:10:003.01065.00.002817
\n", "
"], "text/plain": [" to_station_id to_station_name stopweekday stoptime10 \\\n", "0 2.0 Michigan Ave & Balbo Ave 0.0 00:10:00 \n", "1 2.0 Michigan Ave & Balbo Ave 0.0 00:20:00 \n", "2 2.0 Michigan Ave & Balbo Ave 0.0 00:30:00 \n", "3 2.0 Michigan Ave & Balbo Ave 0.0 01:00:00 \n", "4 2.0 Michigan Ave & Balbo Ave 0.0 01:10:00 \n", "\n", " nb_tripsstop nb_tripsdaystop stopdist from_station_id \\\n", "0 2.0 913.0 0.002191 2.0 \n", "1 2.0 913.0 0.002191 2.0 \n", "2 2.0 913.0 0.002191 NaN \n", "3 3.0 913.0 0.003286 NaN \n", "4 2.0 913.0 0.002191 2.0 \n", "\n", " from_station_name startweekday starttime10 nb_tripsstart \\\n", "0 Michigan Ave & Balbo Ave 0.0 00:10:00 1.0 \n", "1 Michigan Ave & Balbo Ave 0.0 00:20:00 3.0 \n", "2 NaN NaN NaN NaN \n", "3 NaN NaN NaN NaN \n", "4 Michigan Ave & Balbo Ave 0.0 01:10:00 3.0 \n", "\n", " nb_tripsdaystart startdist \n", "0 1065.0 0.000939 \n", "1 1065.0 0.002817 \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 1065.0 0.002817 "]}, "execution_count": 13, "metadata": {}, "output_type": "execute_result"}], "source": ["everything = stopmerge.merge(startmerge,\n", " left_on=[\"to_station_id\", \"to_station_name\", \"stopweekday\", \"stoptime10\"],\n", " right_on=[\"from_station_id\", \"from_station_name\",\"startweekday\", \"starttime10\"],\n", " suffixes=(\"stop\", \"start\"),\n", " how=\"outer\")\n", "everything.head()"]}, {"cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [{"data": {"text/plain": ["(datetime.datetime(2017, 2, 2, 0, 0), datetime.datetime(2017, 2, 2, 0, 0))"]}, "execution_count": 14, "metadata": {}, "output_type": "execute_result"}], "source": ["import numpy\n", "from datetime import datetime\n", "\n", "def bestof(x, y):\n", " if isinstance(x, (datetime, time, str)):\n", " return x\n", " try:\n", " if x is None or isinstance(y, (datetime, time, str)) or numpy.isnan(x):\n", " return y\n", " else:\n", " return x\n", " except:\n", " print(type(x), type(y))\n", " print(x, y)\n", " raise\n", " \n", "bestof(datetime(2017,2,2), numpy.nan), bestof(numpy.nan, datetime(2017,2,2))"]}, {"cell_type": "code", "execution_count": 14, "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", "
nb_tripsstopnb_tripsdaystopstopdistnb_tripsstartnb_tripsdaystartstartdiststation_namestation_idtime10weekday
02.0913.00.0021911.01065.00.000939Michigan Ave & Balbo Ave2.000:10:000.0
12.0913.00.0021913.01065.00.002817Michigan Ave & Balbo Ave2.000:20:000.0
22.0913.00.002191NaNNaNNaNMichigan Ave & Balbo Ave2.000:30:000.0
33.0913.00.003286NaNNaNNaNMichigan Ave & Balbo Ave2.001:00:000.0
42.0913.00.0021913.01065.00.002817Michigan Ave & Balbo Ave2.001:10:000.0
\n", "
"], "text/plain": [" nb_tripsstop nb_tripsdaystop stopdist nb_tripsstart nb_tripsdaystart \\\n", "0 2.0 913.0 0.002191 1.0 1065.0 \n", "1 2.0 913.0 0.002191 3.0 1065.0 \n", "2 2.0 913.0 0.002191 NaN NaN \n", "3 3.0 913.0 0.003286 NaN NaN \n", "4 2.0 913.0 0.002191 3.0 1065.0 \n", "\n", " startdist station_name station_id time10 weekday \n", "0 0.000939 Michigan Ave & Balbo Ave 2.0 00:10:00 0.0 \n", "1 0.002817 Michigan Ave & Balbo Ave 2.0 00:20:00 0.0 \n", "2 NaN Michigan Ave & Balbo Ave 2.0 00:30:00 0.0 \n", "3 NaN Michigan Ave & Balbo Ave 2.0 01:00:00 0.0 \n", "4 0.002817 Michigan Ave & Balbo Ave 2.0 01:10:00 0.0 "]}, "execution_count": 15, "metadata": {}, "output_type": "execute_result"}], "source": ["every = everything.copy()\n", "every[\"station_name\"] = every.apply(lambda row: bestof(row[\"to_station_name\"], row[\"from_station_name\"]), axis=1)\n", "every[\"station_id\"] = every.apply(lambda row: bestof(row[\"to_station_id\"], row[\"from_station_id\"]), axis=1)\n", "every[\"time10\"] = every.apply(lambda row: bestof(row[\"stoptime10\"], row[\"starttime10\"]), axis=1)\n", "every[\"weekday\"] = every.apply(lambda row: bestof(row[\"stopweekday\"], row[\"startweekday\"]), axis=1)\n", "every = every.drop([\"stoptime10\", \"starttime10\", \"stopweekday\", \"startweekday\",\n", " \"to_station_id\", \"from_station_id\",\n", " \"to_station_name\", \"from_station_name\"], axis=1)\n", "every.head()"]}, {"cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [{"data": {"text/plain": ["((357809, 10), (298013, 7), (299700, 7))"]}, "execution_count": 16, "metadata": {}, "output_type": "execute_result"}], "source": ["every.shape, stopmerge.shape, startmerge.shape"]}, {"cell_type": "markdown", "metadata": {}, "source": ["We need vectors of equal size which means filling NaN values with 0 and adding times when not present."]}, {"cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [{"data": {"text/plain": ["Index(['nb_tripsstop', 'nb_tripsdaystop', 'stopdist', 'nb_tripsstart',\n", " 'nb_tripsdaystart', 'startdist', 'station_name', 'station_id', 'time10',\n", " 'weekday'],\n", " dtype='object')"]}, "execution_count": 17, "metadata": {}, "output_type": "execute_result"}], "source": ["every.columns"]}, {"cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": ["keys = ['station_name', 'station_id', 'weekday', 'time10']\n", "for c in every.columns:\n", " if c not in keys:\n", " every[c].fillna(0)"]}, {"cell_type": "code", "execution_count": 18, "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", "
station_namestation_idtime10weekdaystopdiststartdistnb_tripsstopnb_tripsdaystopnb_tripsstartnb_tripsdaystart
3578092112 W Peterson Ave456.000:00:000.00.00.0000000.00.00.00.0
3578102112 W Peterson Ave456.000:10:000.00.00.0000000.00.00.00.0
3578112112 W Peterson Ave456.000:20:000.00.00.0000000.00.00.00.0
3414432112 W Peterson Ave456.000:30:000.00.00.0212770.00.01.047.0
3578122112 W Peterson Ave456.000:40:000.00.00.0000000.00.00.00.0
\n", "
"], "text/plain": [" station_name station_id time10 weekday stopdist \\\n", "357809 2112 W Peterson Ave 456.0 00:00:00 0.0 0.0 \n", "357810 2112 W Peterson Ave 456.0 00:10:00 0.0 0.0 \n", "357811 2112 W Peterson Ave 456.0 00:20:00 0.0 0.0 \n", "341443 2112 W Peterson Ave 456.0 00:30:00 0.0 0.0 \n", "357812 2112 W Peterson Ave 456.0 00:40:00 0.0 0.0 \n", "\n", " startdist nb_tripsstop nb_tripsdaystop nb_tripsstart \\\n", "357809 0.000000 0.0 0.0 0.0 \n", "357810 0.000000 0.0 0.0 0.0 \n", "357811 0.000000 0.0 0.0 0.0 \n", "341443 0.021277 0.0 0.0 1.0 \n", "357812 0.000000 0.0 0.0 0.0 \n", "\n", " nb_tripsdaystart \n", "357809 0.0 \n", "357810 0.0 \n", "357811 0.0 \n", "341443 47.0 \n", "357812 0.0 "]}, "execution_count": 19, "metadata": {}, "output_type": "execute_result"}], "source": ["from ensae_projects.datainc.data_bikes import add_missing_time\n", "full = df = add_missing_time(every, delay=10, column=\"time10\", \n", " values=[c for c in every.columns if c not in keys])\n", "full = full[['station_name', 'station_id', 'time10', 'weekday', \n", " 'stopdist', 'startdist',\n", " 'nb_tripsstop', 'nb_tripsdaystop', 'nb_tripsstart',\n", " 'nb_tripsdaystart']].sort_values(keys)\n", "full.head()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["## Clustering (stop and start)\n", "\n", "We cluster these distribution to find some patterns. But we need vectors of equal size which should be equal to 24*6."]}, {"cell_type": "markdown", "metadata": {}, "source": ["This is much better."]}, {"cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [{"data": {"image/png": "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vv76eOdNp4EBAzImfKtXAzNnmpv06REAG2Nk4GhqMvvutiYqDETZQoiphsc0SMLy5ZntoKSjREDv3v7ttbSoemeeaXb+SuT220VwTAAReARBEITy5+uvk2urVJysL7sM2Hnn7FcSmApO69YVJjSyky5dMn4fQYwenfF5SYKxY4E+fTKfUylzDdfMmZltUzM4N77+2kzDYxIYIQjTXFBr15rV04W++vpgwW36dP/99v86jj9VuTN4sHofMaK4/ShzROARBEEQio9bcsswmIbXDeKpp5QJkz4Ra2oyS3g5dqxKxqlz441A377BxzY3504qbTOi7t0zryQwFXi6di2c34UusIaJPjZlispZY2MqKHmdhxl48EHzNnR0gScOW7aYhXKOI1QBKrDF6tVmdU3Dd+vXYMkS81xP+aKUErjGJege94MfKE1QUr5kFYYIPIIgCII3tgN1XHMhPx59FDjhBODaa/N3DpuddvLfX1urJha9ewNvvaXK9tkHOPLI4FXup58G7rwz4yfErASoCROCJ5a/+506h5uZ2datmVcSuAk8bpPCQk4UTTUITtavzxZcBgwwP1YXlOL2hTnZpLYmJkxxtZrLl5v/xqYR1vRr0NRU3Bw8X34JHHAAcNddxetDIampUe9JhGuvQETgEQRBsJk9G3j11WL3orRwRqzKB3Z43WHD/Os9/7yaCM6fH/1cJ55oXvfUU7Md2V94wb/+kiVq8m2HN66rU6vwzMH+MuvXq7qPP27ev6g0N+dOqN1CHJeL34A+Hp591txMy9aQJGG2t2xZJvqdTZyVdhNNlR5gwQSnH46p/w5gpnVjzky6S4ENG1SfHnus2D0pLBINzxUReARBEGwOPxw444zks68XmhtvzDhylysffaQm3PpEfMwY9W4SsjgpLrrIrB5z7kT73XfDn++ee8IfE5bm5lxTo9dey61X6OhsUVm3Lvvz6aebHWcLPEl8TzdzNt2BPyx+wpLusxTG/M/pL2Maoc2UL7/M1Y6VwhhKwtdJKHtE4BEEQXAyZ06xexCP224Djjii2L2Ix1NPqfcTTsjdV6gEhmFMutasye1XFIFn8WKl7cknTU253y1KX0uVuXOVwBxEXB8YnZkzczViEycm176O7k9m6oMD5Ao8S5cmq8VzM+krFX8S0XpUPSLwCIIgCKVLWLOdfNK5s/c+p3anowN47z21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\n", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["df = full\n", "import matplotlib.pyplot as plt\n", "fig, ax = plt.subplots(2, 1, figsize=(14,6))\n", "df[df[\"station_id\"] == 2].plot(x=\"time10\", y=\"startdist\", figsize=(14,4), kind=\"area\", ax=ax[0])\n", "df[df[\"station_id\"] == 2].plot(x=\"time10\", y=\"stopdist\", figsize=(14,4), \n", " kind=\"area\", ax=ax[1], color=\"r\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Let's build the features."]}, {"cell_type": "code", "execution_count": 20, "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", " \n", " \n", " \n", "
station_idstation_nameweekdaystartdist...stopdist
time1000:00:0000:10:0000:20:0000:30:0000:40:0000:50:0001:00:00...22:20:0022:30:0022:40:0022:50:0023:00:0023:10:0023:20:0023:30:0023:40:0023:50:00
02.0Michigan Ave & Balbo Ave0.00.0037560.0009390.0028170.0000000.0000000.0037560.000000...0.0043810.0021910.0043810.0021910.0043810.0043810.0054760.0021910.0000000.005476
12.0Michigan Ave & Balbo Ave1.00.0000000.0000000.0011060.0011060.0011060.0022120.000000...0.0093710.0120480.0066930.0040160.0053550.0066930.0026770.0000000.0000000.000000
22.0Michigan Ave & Balbo Ave2.00.0013570.0027140.0000000.0013570.0000000.0054270.000000...0.0029070.0029070.0159880.0058140.0014530.0014530.0116280.0000000.0000000.007267
32.0Michigan Ave & Balbo Ave3.00.0000000.0041440.0000000.0000000.0027620.0041440.000000...0.0092740.0030910.0030910.0077280.0015460.0030910.0092740.0015460.0077280.001546
42.0Michigan Ave & Balbo Ave4.00.0000000.0000000.0000000.0028460.0000000.0000000.000949...0.0082140.0010270.0061600.0041070.0154000.0061600.0020530.0061600.0071870.000000
\n", "

5 rows \u00d7 291 columns

\n", "
"], "text/plain": [" station_id station_name weekday startdist \\\n", "time10 00:00:00 00:10:00 \n", "0 2.0 Michigan Ave & Balbo Ave 0.0 0.003756 0.000939 \n", "1 2.0 Michigan Ave & Balbo Ave 1.0 0.000000 0.000000 \n", "2 2.0 Michigan Ave & Balbo Ave 2.0 0.001357 0.002714 \n", "3 2.0 Michigan Ave & Balbo Ave 3.0 0.000000 0.004144 \n", "4 2.0 Michigan Ave & Balbo Ave 4.0 0.000000 0.000000 \n", "\n", " ... stopdist \\\n", "time10 00:20:00 00:30:00 00:40:00 00:50:00 01:00:00 ... 22:20:00 \n", "0 0.002817 0.000000 0.000000 0.003756 0.000000 ... 0.004381 \n", "1 0.001106 0.001106 0.001106 0.002212 0.000000 ... 0.009371 \n", "2 0.000000 0.001357 0.000000 0.005427 0.000000 ... 0.002907 \n", "3 0.000000 0.000000 0.002762 0.004144 0.000000 ... 0.009274 \n", "4 0.000000 0.002846 0.000000 0.000000 0.000949 ... 0.008214 \n", "\n", " \\\n", "time10 22:30:00 22:40:00 22:50:00 23:00:00 23:10:00 23:20:00 23:30:00 \n", "0 0.002191 0.004381 0.002191 0.004381 0.004381 0.005476 0.002191 \n", "1 0.012048 0.006693 0.004016 0.005355 0.006693 0.002677 0.000000 \n", "2 0.002907 0.015988 0.005814 0.001453 0.001453 0.011628 0.000000 \n", "3 0.003091 0.003091 0.007728 0.001546 0.003091 0.009274 0.001546 \n", "4 0.001027 0.006160 0.004107 0.015400 0.006160 0.002053 0.006160 \n", "\n", " \n", "time10 23:40:00 23:50:00 \n", "0 0.000000 0.005476 \n", "1 0.000000 0.000000 \n", "2 0.000000 0.007267 \n", "3 0.007728 0.001546 \n", "4 0.007187 0.000000 \n", "\n", "[5 rows x 291 columns]"]}, "execution_count": 21, "metadata": {}, "output_type": "execute_result"}], "source": ["features = df.pivot_table(index=[\"station_id\", \"station_name\", \"weekday\"],\n", " columns=\"time10\", values=[\"startdist\", \"stopdist\"]).reset_index()\n", "\n", "features.head()"]}, {"cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [{"data": {"text/plain": ["288"]}, "execution_count": 22, "metadata": {}, "output_type": "execute_result"}], "source": ["names = features.columns[3:]\n", "len(names)"]}, {"cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [{"data": {"text/plain": ["KMeans(algorithm='auto', copy_x=True, init='k-means++', max_iter=300,\n", " n_clusters=8, n_init=10, n_jobs=1, precompute_distances='auto',\n", " random_state=None, tol=0.0001, verbose=0)"]}, "execution_count": 23, "metadata": {}, "output_type": "execute_result"}], "source": ["from sklearn.cluster import KMeans\n", "clus = KMeans(8)\n", "clus.fit(features[names])"]}, {"cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [{"data": {"text/plain": ["{0, 1, 2, 3, 4, 5, 6, 7}"]}, "execution_count": 24, "metadata": {}, "output_type": "execute_result"}], "source": ["pred = clus.predict(features[names])\n", "set(pred)"]}, {"cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": ["features[\"cluster\"] = pred"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Let's see what it means accross day. We need to look whether or not a cluster is related to day of the working week or the week end."]}, {"cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["c:\\python370_x64\\lib\\site-packages\\pandas\\core\\generic.py:3111: PerformanceWarning: dropping on a non-lexsorted multi-index without a level parameter may impact performance.\n", " obj = obj._drop_axis(labels, axis, level=level, errors=errors)\n"]}, {"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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_id
time10
clusterweekday
03.01
4.01
6.01
10.0146
1.0110
2.0106
3.0119
4.0143
5.0553
6.0547
20.0137
1.0141
2.0150
3.0147
4.0149
5.08
6.012
30.01
3.01
42.01
3.01
6.01
56.01
60.01
1.01
2.01
6.01
70.0291
1.0326
2.0322
3.0308
4.0287
5.019
6.017
\n", "
"], "text/plain": [" station_id\n", "time10 \n", "cluster weekday \n", "0 3.0 1\n", " 4.0 1\n", " 6.0 1\n", "1 0.0 146\n", " 1.0 110\n", " 2.0 106\n", " 3.0 119\n", " 4.0 143\n", " 5.0 553\n", " 6.0 547\n", "2 0.0 137\n", " 1.0 141\n", " 2.0 150\n", " 3.0 147\n", " 4.0 149\n", " 5.0 8\n", " 6.0 12\n", "3 0.0 1\n", " 3.0 1\n", "4 2.0 1\n", " 3.0 1\n", " 6.0 1\n", "5 6.0 1\n", "6 0.0 1\n", " 1.0 1\n", " 2.0 1\n", " 6.0 1\n", "7 0.0 291\n", " 1.0 326\n", " 2.0 322\n", " 3.0 308\n", " 4.0 287\n", " 5.0 19\n", " 6.0 17"]}, "execution_count": 26, "metadata": {}, "output_type": "execute_result"}], "source": ["features[[\"cluster\", \"weekday\", \"station_id\"]].groupby([\"cluster\", \"weekday\"]).count()"]}, {"cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["c:\\python370_x64\\lib\\site-packages\\pandas\\core\\generic.py:3111: PerformanceWarning: dropping on a non-lexsorted multi-index without a level parameter may impact performance.\n", " obj = obj._drop_axis(labels, axis, level=level, errors=errors)\n"]}, {"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["nb = features[[\"cluster\", \"weekday\", \"station_id\"]].groupby([\"cluster\", \"weekday\"]).count()\n", "nb = nb.reset_index()\n", "nb[nb.cluster.isin([0, 3, 5, 6])].pivot(\"weekday\",\"cluster\", \"station_id\").plot(kind=\"bar\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Let's draw the clusters."]}, {"cell_type": "code", "execution_count": 27, "metadata": {"scrolled": false}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["centers = clus.cluster_centers_.T\n", "import matplotlib.pyplot as plt\n", "fig, ax = plt.subplots(centers.shape[1], 2, figsize=(10,10))\n", "nbf = centers.shape[0] // 2\n", "x = list(range(0,nbf))\n", "col = 0\n", "dec = 0\n", "colors = [\"red\", \"yellow\", \"gray\", \"green\", \"brown\", \"orange\", \"blue\"]\n", "for i in range(centers.shape[1]):\n", " if 2*i == centers.shape[1]:\n", " col += 1\n", " dec += centers.shape[1] \n", " color = colors[i%len(colors)]\n", " ax[2*i-dec, col].bar (x, centers[:nbf,i], width=1.0, color=color)\n", " ax[2*i-dec, col].set_ylabel(\"cluster %d - start\" % i, color=color)\n", " ax[2*i+1-dec, col].bar (x, centers[nbf:,i], width=1.0, color=color)\n", " ax[2*i+1-dec, col].set_ylabel(\"cluster %d - stop\" % i, color=color)"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Four patterns emerge. Small clusters are annoying but let's show them on a map. The widest one is the one for the week-end."]}, {"cell_type": "markdown", "metadata": {}, "source": ["## Graph\n", "\n", "We first need to get 7 clusters for each stations, one per day."]}, {"cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["c:\\python370_x64\\lib\\site-packages\\pandas\\core\\generic.py:3111: PerformanceWarning: dropping on a non-lexsorted multi-index without a level parameter may impact performance.\n", " obj = obj._drop_axis(labels, axis, level=level, errors=errors)\n"]}, {"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", "
time10
weekday0.01.02.03.04.05.06.0
station_idstation_name
2.0Michigan Ave & Balbo Ave1.07.01.01.01.01.01.0
3.0Shedd Aquarium1.01.01.01.01.01.01.0
4.0Burnham Harbor1.01.01.01.01.01.01.0
5.0State St & Harrison St7.07.07.07.07.01.01.0
6.0Dusable Harbor1.01.01.01.01.01.01.0
\n", "
"], "text/plain": ["time10 \n", "weekday 0.0 1.0 2.0 3.0 4.0 5.0 6.0\n", "station_id station_name \n", "2.0 Michigan Ave & Balbo Ave 1.0 7.0 1.0 1.0 1.0 1.0 1.0\n", "3.0 Shedd Aquarium 1.0 1.0 1.0 1.0 1.0 1.0 1.0\n", "4.0 Burnham Harbor 1.0 1.0 1.0 1.0 1.0 1.0 1.0\n", "5.0 State St & Harrison St 7.0 7.0 7.0 7.0 7.0 1.0 1.0\n", "6.0 Dusable Harbor 1.0 1.0 1.0 1.0 1.0 1.0 1.0"]}, "execution_count": 29, "metadata": {}, "output_type": "execute_result"}], "source": ["piv = features.pivot_table(index=[\"station_id\",\"station_name\"], \n", " columns=\"weekday\", values=\"cluster\")\n", "piv.head()"]}, {"cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": ["piv[\"distincts\"] = piv.apply(lambda row: len(set(row[i] for i in range(0,7))), axis=1)"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Let's see which station is classified in more than 4 clusters. NaN means no bikes stopped at this stations. They are mostly unused stations."]}, {"cell_type": "code", "execution_count": 30, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
time10distincts
weekday0.01.02.03.04.05.06.0
station_idstation_name
391.0Halsted St & 69th St3.07.01.07.01.01.02.04
440.0Lawndale Ave & 23rd St7.07.01.07.02.01.00.04
557.0Damen Ave & Garfield BlvdNaN2.01.0NaN2.0NaNNaN6
558.0Ashland Ave & Garfield BlvdNaN1.01.01.01.02.0NaN4
561.0Damen Ave & 61st St2.07.02.07.0NaN1.01.04
562.0Racine Ave & 61st StNaNNaNNaNNaN7.0NaNNaN7
564.0Racine Ave & 65th St1.01.0NaNNaN7.01.07.04
565.0Ashland Ave & 66th St1.01.0NaN1.00.0NaN5.05
567.0May St & 69th St6.06.02.02.01.01.0NaN4
568.0Normal Ave & 72nd St1.01.07.0NaN7.01.04.04
569.0Woodlawn Ave & 75th St1.0NaN7.01.01.0NaN1.04
576.0Greenwood Ave & 79th St7.01.01.0NaN2.01.01.04
581.0Commercial Ave & 83rd St1.0NaN7.0NaNNaN1.01.05
582.0Phillips Ave & 82nd StNaNNaN1.01.0NaN1.07.05
586.0MLK Jr Dr & 83rd St1.02.06.07.07.07.02.04
587.0Wabash Ave & 83rd StNaNNaN1.0NaN1.02.07.06
588.0South Chicago Ave & 83rd StNaN2.07.03.01.02.07.05
593.0Halsted St & 59th StNaN7.04.04.0NaN1.01.05
\n", "
"], "text/plain": ["time10 \\\n", "weekday 0.0 1.0 2.0 3.0 4.0 5.0 6.0 \n", "station_id station_name \n", "391.0 Halsted St & 69th St 3.0 7.0 1.0 7.0 1.0 1.0 2.0 \n", "440.0 Lawndale Ave & 23rd St 7.0 7.0 1.0 7.0 2.0 1.0 0.0 \n", "557.0 Damen Ave & Garfield Blvd NaN 2.0 1.0 NaN 2.0 NaN NaN \n", "558.0 Ashland Ave & Garfield Blvd NaN 1.0 1.0 1.0 1.0 2.0 NaN \n", "561.0 Damen Ave & 61st St 2.0 7.0 2.0 7.0 NaN 1.0 1.0 \n", "562.0 Racine Ave & 61st St NaN NaN NaN NaN 7.0 NaN NaN \n", "564.0 Racine Ave & 65th St 1.0 1.0 NaN NaN 7.0 1.0 7.0 \n", "565.0 Ashland Ave & 66th St 1.0 1.0 NaN 1.0 0.0 NaN 5.0 \n", "567.0 May St & 69th St 6.0 6.0 2.0 2.0 1.0 1.0 NaN \n", "568.0 Normal Ave & 72nd St 1.0 1.0 7.0 NaN 7.0 1.0 4.0 \n", "569.0 Woodlawn Ave & 75th St 1.0 NaN 7.0 1.0 1.0 NaN 1.0 \n", "576.0 Greenwood Ave & 79th St 7.0 1.0 1.0 NaN 2.0 1.0 1.0 \n", "581.0 Commercial Ave & 83rd St 1.0 NaN 7.0 NaN NaN 1.0 1.0 \n", "582.0 Phillips Ave & 82nd St NaN NaN 1.0 1.0 NaN 1.0 7.0 \n", "586.0 MLK Jr Dr & 83rd St 1.0 2.0 6.0 7.0 7.0 7.0 2.0 \n", "587.0 Wabash Ave & 83rd St NaN NaN 1.0 NaN 1.0 2.0 7.0 \n", "588.0 South Chicago Ave & 83rd St NaN 2.0 7.0 3.0 1.0 2.0 7.0 \n", "593.0 Halsted St & 59th St NaN 7.0 4.0 4.0 NaN 1.0 1.0 \n", "\n", "time10 distincts \n", "weekday \n", "station_id station_name \n", "391.0 Halsted St & 69th St 4 \n", "440.0 Lawndale Ave & 23rd St 4 \n", "557.0 Damen Ave & Garfield Blvd 6 \n", "558.0 Ashland Ave & Garfield Blvd 4 \n", "561.0 Damen Ave & 61st St 4 \n", "562.0 Racine Ave & 61st St 7 \n", "564.0 Racine Ave & 65th St 4 \n", "565.0 Ashland Ave & 66th St 5 \n", "567.0 May St & 69th St 4 \n", "568.0 Normal Ave & 72nd St 4 \n", "569.0 Woodlawn Ave & 75th St 4 \n", "576.0 Greenwood Ave & 79th St 4 \n", "581.0 Commercial Ave & 83rd St 5 \n", "582.0 Phillips Ave & 82nd St 5 \n", "586.0 MLK Jr Dr & 83rd St 4 \n", "587.0 Wabash Ave & 83rd St 6 \n", "588.0 South Chicago Ave & 83rd St 5 \n", "593.0 Halsted St & 59th St 5 "]}, "execution_count": 31, "metadata": {}, "output_type": "execute_result"}], "source": ["piv[piv.distincts >= 4]"]}, {"cell_type": "code", "execution_count": 31, "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", "
station_idstation_name0123456distincts
02.0Michigan Ave & Balbo Ave1.07.01.01.01.01.01.02
13.0Shedd Aquarium1.01.01.01.01.01.01.01
24.0Burnham Harbor1.01.01.01.01.01.01.01
35.0State St & Harrison St7.07.07.07.07.01.01.02
46.0Dusable Harbor1.01.01.01.01.01.01.01
\n", "
"], "text/plain": [" station_id station_name 0 1 2 3 4 5 6 \\\n", "0 2.0 Michigan Ave & Balbo Ave 1.0 7.0 1.0 1.0 1.0 1.0 1.0 \n", "1 3.0 Shedd Aquarium 1.0 1.0 1.0 1.0 1.0 1.0 1.0 \n", "2 4.0 Burnham Harbor 1.0 1.0 1.0 1.0 1.0 1.0 1.0 \n", "3 5.0 State St & Harrison St 7.0 7.0 7.0 7.0 7.0 1.0 1.0 \n", "4 6.0 Dusable Harbor 1.0 1.0 1.0 1.0 1.0 1.0 1.0 \n", "\n", " distincts \n", "0 2 \n", "1 1 \n", "2 1 \n", "3 2 \n", "4 1 "]}, "execution_count": 32, "metadata": {}, "output_type": "execute_result"}], "source": ["pivn = piv.reset_index()\n", "pivn.columns = [' '.join(str(_).replace(\".0\", \"\") for _ in col).strip() for col in pivn.columns.values]\n", "pivn.head()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Let's draw a map on a week day."]}, {"cell_type": "code", "execution_count": 32, "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", "
idnamelatitudelongitudedpcapacityonline_datestation_idstation_name0123456distincts
3572Michigan Ave & Balbo Ave41.872638-87.623979355/8/20152.0Michigan Ave & Balbo Ave1.07.01.01.01.01.01.02
4563Shedd Aquarium41.867226-87.615355314/24/20153.0Shedd Aquarium1.01.01.01.01.01.01.01
534Burnham Harbor41.856268-87.613348235/16/20154.0Burnham Harbor1.01.01.01.01.01.01.01
4975State St & Harrison St41.874053-87.627716236/18/20135.0State St & Harrison St7.07.07.07.07.01.01.02
1886Dusable Harbor41.885042-87.612795314/24/20156.0Dusable Harbor1.01.01.01.01.01.01.01
\n", "
"], "text/plain": [" id name latitude longitude dpcapacity \\\n", "357 2 Michigan Ave & Balbo Ave 41.872638 -87.623979 35 \n", "456 3 Shedd Aquarium 41.867226 -87.615355 31 \n", "53 4 Burnham Harbor 41.856268 -87.613348 23 \n", "497 5 State St & Harrison St 41.874053 -87.627716 23 \n", "188 6 Dusable Harbor 41.885042 -87.612795 31 \n", "\n", " online_date station_id station_name 0 1 2 3 \\\n", "357 5/8/2015 2.0 Michigan Ave & Balbo Ave 1.0 7.0 1.0 1.0 \n", "456 4/24/2015 3.0 Shedd Aquarium 1.0 1.0 1.0 1.0 \n", "53 5/16/2015 4.0 Burnham Harbor 1.0 1.0 1.0 1.0 \n", "497 6/18/2013 5.0 State St & Harrison St 7.0 7.0 7.0 7.0 \n", "188 4/24/2015 6.0 Dusable Harbor 1.0 1.0 1.0 1.0 \n", "\n", " 4 5 6 distincts \n", "357 1.0 1.0 1.0 2 \n", "456 1.0 1.0 1.0 1 \n", "53 1.0 1.0 1.0 1 \n", "497 7.0 1.0 1.0 2 \n", "188 1.0 1.0 1.0 1 "]}, "execution_count": 33, "metadata": {}, "output_type": "execute_result"}], "source": ["data = stations.merge(pivn, left_on=[\"id\", \"name\"],\n", " right_on=[\"station_id\", \"station_name\"], suffixes=('_s', '_c'))\n", "data.sort_values(\"id\").head()"]}, {"cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [{"name": "stdout", "output_type": "stream", "text": ["Cluster 0 is red\n", "Cluster 1 is yellow\n", "Cluster 2 is gray\n", "Cluster 3 is green\n", "Cluster 4 is brown\n", "Cluster 5 is orange\n", "Cluster 6 is blue\n", "Cluster 7 is black\n"]}, {"data": {"text/html": ["
"], "text/plain": [".CustomFoliumMap at 0x2030f4d0c50>"]}, "execution_count": 34, "metadata": {}, "output_type": "execute_result"}], "source": ["from ensae_projects.datainc.data_bikes import folium_html_stations_map\n", "\n", "colors = [\"red\", \"yellow\", \"gray\", \"green\", \"brown\", \"orange\", \"blue\", \"black\"]\n", "for i, c in enumerate(colors):\n", " print(\"Cluster {0} is {1}\".format(i, c))\n", "xy = []\n", "for els in data.apply(lambda row: (row[\"latitude\"], row[\"longitude\"], row[\"1\"], row[\"name\"]), axis=1):\n", " try:\n", " cl = int(els[2])\n", " except:\n", " # NaN\n", " continue\n", " name = \"%s c%d\" % (els[3], cl)\n", " color = colors[cl]\n", " xy.append( ( (els[0], els[1]), (name, color)))\n", "folium_html_stations_map(xy, width=\"80%\")"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Look at the colors close the parks. We notice than people got to the park after work. Let's see during the week-end."]}, {"cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [{"data": {"text/html": ["
"], "text/plain": [".CustomFoliumMap at 0x2030fca2c50>"]}, "execution_count": 35, "metadata": {}, "output_type": "execute_result"}], "source": ["xy = []\n", "for els in data.apply(lambda row: (row[\"latitude\"], row[\"longitude\"], row[\"5\"], row[\"name\"]), axis=1):\n", " try:\n", " cl = int(els[2])\n", " except:\n", " # NaN\n", " continue\n", " name = \"%s c%d\" % (els[3], cl)\n", " color = colors[cl]\n", " xy.append( ( (els[0], els[1]), (name, color)))\n", "folium_html_stations_map(xy, width=\"80%\")"]}, {"cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": []}, {"cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": []}], "metadata": {"kernelspec": {"display_name": "Python 3", "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.7.0"}}, "nbformat": 4, "nbformat_minor": 2}