{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "b16c5a59",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T17:10:17.136326Z",
"start_time": "2023-11-10T17:10:08.811268Z"
}
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"from scipy import stats\n",
"import sweetviz\n",
"import folium\n",
"import geopandas\n",
"from geopy.distance import geodesic\n",
"from datetime import datetime"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "8f50b52d",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T17:10:56.594324Z",
"start_time": "2023-11-10T17:10:17.144773Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(5733451, 13)"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data = pd.read_csv('../../../Desktop/SamX/Bike_Study_Files/big_raw.csv')\n",
"data.shape"
]
},
{
"cell_type": "markdown",
"id": "2eecc8dd",
"metadata": {},
"source": [
"#### Note:\n",
"For the purposes of this analysis, I do not need to be crunching through all 5 million rows of data. A sample of 50,000 is more than enough, and possibly too much for the heatmapping functions. I may need to tweak the parameters of the heatmap, or further restrict the sample size later down the road"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "75b6b8f7",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T17:10:58.285248Z",
"start_time": "2023-11-10T17:10:56.598253Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(50000, 13)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data = data.sample(n=50000, replace=False, random_state=42)\n",
"data.shape"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "77b350ad",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T17:11:10.768501Z",
"start_time": "2023-11-10T17:11:10.313426Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ride_id | \n",
" rideable_type | \n",
" member_casual | \n",
" started_at | \n",
" ended_at | \n",
" ride_duration | \n",
" start_date | \n",
" start_hour | \n",
" day_of_week | \n",
" week_of_year | \n",
"
\n",
" \n",
" \n",
" \n",
" 3479634 | \n",
" DF3F95B75B6DFBBC | \n",
" electric_bike | \n",
" member | \n",
" 2022-08-09 09:54:27 | \n",
" 2022-08-09 09:57:36 | \n",
" 3.150000 | \n",
" 2022-08-09 | \n",
" 9 | \n",
" Tuesday | \n",
" 32 | \n",
"
\n",
" \n",
" 2954009 | \n",
" E62A501C91C9283A | \n",
" electric_bike | \n",
" casual | \n",
" 2022-07-05 17:32:36 | \n",
" 2022-07-05 17:39:24 | \n",
" 6.800000 | \n",
" 2022-07-05 | \n",
" 17 | \n",
" Tuesday | \n",
" 27 | \n",
"
\n",
" \n",
" 4233289 | \n",
" 2332C4F5E2EE3457 | \n",
" classic_bike | \n",
" member | \n",
" 2022-09-15 17:05:35 | \n",
" 2022-09-15 17:20:22 | \n",
" 14.783333 | \n",
" 2022-09-15 | \n",
" 17 | \n",
" Thursday | \n",
" 37 | \n",
"
\n",
" \n",
" 4282455 | \n",
" 063065272EF72853 | \n",
" classic_bike | \n",
" member | \n",
" 2022-09-08 13:51:19 | \n",
" 2022-09-08 13:55:26 | \n",
" 4.116667 | \n",
" 2022-09-08 | \n",
" 13 | \n",
" Thursday | \n",
" 36 | \n",
"
\n",
" \n",
" 2265302 | \n",
" AFC7A810123AB8EB | \n",
" classic_bike | \n",
" casual | \n",
" 2022-06-19 11:36:21 | \n",
" 2022-06-19 12:39:10 | \n",
" 62.816667 | \n",
" 2022-06-19 | \n",
" 11 | \n",
" Sunday | \n",
" 24 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ride_id rideable_type member_casual started_at \\\n",
"3479634 DF3F95B75B6DFBBC electric_bike member 2022-08-09 09:54:27 \n",
"2954009 E62A501C91C9283A electric_bike casual 2022-07-05 17:32:36 \n",
"4233289 2332C4F5E2EE3457 classic_bike member 2022-09-15 17:05:35 \n",
"4282455 063065272EF72853 classic_bike member 2022-09-08 13:51:19 \n",
"2265302 AFC7A810123AB8EB classic_bike casual 2022-06-19 11:36:21 \n",
"\n",
" ended_at ride_duration start_date start_hour \\\n",
"3479634 2022-08-09 09:57:36 3.150000 2022-08-09 9 \n",
"2954009 2022-07-05 17:39:24 6.800000 2022-07-05 17 \n",
"4233289 2022-09-15 17:20:22 14.783333 2022-09-15 17 \n",
"4282455 2022-09-08 13:55:26 4.116667 2022-09-08 13 \n",
"2265302 2022-06-19 12:39:10 62.816667 2022-06-19 11 \n",
"\n",
" day_of_week week_of_year \n",
"3479634 Tuesday 32 \n",
"2954009 Tuesday 27 \n",
"4233289 Thursday 37 \n",
"4282455 Thursday 36 \n",
"2265302 Sunday 24 "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Convert 'started_at' and 'ended_at' to datetime objects\n",
"data['started_at'] = pd.to_datetime(data['started_at'])\n",
"data['ended_at'] = pd.to_datetime(data['ended_at'])\n",
"\n",
"# Calculate ride duration in minutes\n",
"data['ride_duration'] = (data['ended_at'] - data['started_at']).dt.total_seconds() / 60\n",
"\n",
"# Additional columns for temporal analysis\n",
"data['start_date'] = data['started_at'].dt.date\n",
"data['start_hour'] = data['started_at'].dt.hour\n",
"data['day_of_week'] = data['started_at'].dt.day_name()\n",
"data['week_of_year'] = data['started_at'].dt.isocalendar().week\n",
"\n",
"# Preview the data with new columns\n",
"data[['ride_id', 'rideable_type', 'member_casual', 'started_at', 'ended_at', 'ride_duration', 'start_date', 'start_hour', 'day_of_week', 'week_of_year']].head()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "7acdb78f",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T17:11:26.783881Z",
"start_time": "2023-11-10T17:11:26.762772Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(50000, 18)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data.shape"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "c8dd36f3",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T19:58:13.877366Z",
"start_time": "2023-11-10T19:58:13.839405Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"electric_bike 25436\n",
"classic_bike 22953\n",
"docked_bike 1611\n",
"Name: rideable_type, dtype: int64"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data.rideable_type.value_counts()"
]
},
{
"cell_type": "markdown",
"id": "f7073cf1",
"metadata": {},
"source": [
"Let's start by getting a sense for who is using these e-bikes"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "b264102f",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:09:25.636815Z",
"start_time": "2023-11-10T20:09:24.570812Z"
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\sshanks\\AppData\\Local\\Temp\\ipykernel_26956\\3599449609.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" e_bikes_members['day_of_week'] = e_bikes_members['started_at'].dt.dayofweek\n",
"C:\\Users\\sshanks\\AppData\\Local\\Temp\\ipykernel_26956\\3599449609.py:9: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" e_bikes_members_weekdays['hour_of_day'] = e_bikes_members_weekdays['started_at'].dt.hour\n"
]
},
{
"data": {
"image/png": "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85//2PVhXl5eGjt27HU1BAAAAABlAasRAgAAAIAJHApbe/fu1eDBgxUZGSlvb2/5+PgoMjJSgwcP1r59+8zqEQAAAABKHbuXft+4caNiYmLUuXNnTZgwQcHBwTIMQ+np6dq6davatWunt99+W3379jWzXwAAAAAoFewOW08++aSmT5+uadOmldgXGxurWbNm6fHHHydsAQAAAIAcuIzwhx9+UP/+/a+4v1+/fjp27JhTmgIAAACA0s7usFWvXj1t3Ljxivvfffdd1a1b1xk9AQAAAECpZ/dlhNOnT9fAgQOVlJSkbt26KTg4WBaLRWlpaUpMTNTWrVu1du1aM3sFAAAAgFLD7rD197//XTt27NDLL7+sefPmKS0tTZIUEhKi6OhoJSUlKTo62rRGAQAAAKA0sTtsSVJ0dDSBCgAAAADs4FDYuqSwsFAZGRmyWCwKCAiQh4eHs/sCAAAAgFLNoYcab9iwQe3atZOPj4/CwsIUGhoqHx8ftWvX7i8XzwAAAACA8sbusPXaa69p4MCBat68udatW6edO3fqs88+07p169S8eXMNHDhQS5cuNbNXAAAAACg17L6McM6cOVq0aJFGjhxZYl+/fv102223acaMGRo1apRTGwQAAACA0sjuma2ffvpJ7du3v+L+tm3b6vTp005pCgAAAABKO7vDVpMmTbRkyZIr7l+6dKmaNGnilKYAAAAAoLSz+zLCuXPn6p577tHmzZsv+1DjkydP6sMPPzSzVwAAAAAoNewOWx07dtShQ4e0ePFiffnll8UeatyrVy+NGTNGderUMatPAAAAAChVHHrOVp06dTRr1iyzegEAAACAMsOh52xdcvLkSe3evVt79uzRyZMnnd2TTUFBgZ588klFRkbK29tbdevW1fTp01VUVGQbYxiG4uPjFRYWJm9vb3Xq1EmHDx8u9jm5ubl65JFHFBgYqCpVqqhPnz768ccfTesbAAAAABwKWy+99JLCw8NVt25dRUdH64477lDdunUVHh6u+fPnO725WbNm6dVXX9XChQuVkpKi2bNna86cOVqwYIFtzOzZszVv3jwtXLhQe/fuVUhIiLp27arz58/bxsTGxmrDhg1au3atdu7cqQsXLqhXr14qLCx0es8AAAAAIDlwGeFzzz2nF198UY8//ri6d++u4OBgGYah9PR0bdmyRfHx8bpw4YKefPJJpzX3xRdfqG/fvrrnnnsk/X4Z41tvvaV9+/ZJ+n1Wa/78+XriiSfUv39/SdLKlSsVHBysNWvWaPTo0crKytKyZcu0atUqdenSRZK0evVqhYeHa9u2berevbvT+gUAAACAS+ye2VqyZIlWrlypqVOn6pZbblFoaKjCwsJ0yy23aOrUqVq+fLkWL17s1Obat2+vjz/+WN99950k6euvv9bOnTvVs2dPSdKJEyeUlpambt262d7j5eWljh07ateuXZKk/fv3Kz8/v9iYsLAwNW3a1DbmcnJzc3Xu3LliPwAAAABgL7tnts6cOaMGDRpccX9UVJQyMzOd0tQlU6dOVVZWlho2bCgPDw8VFhZqxowZ+uc//ylJthURg4ODi70vODjYdi9ZWlqaKlWqpOrVq5cYc+n9lzNz5kw9++yzzjwcAAAAAOWI3TNbt99+u2bMmKGCgoIS+woKCpSQkKDbb7/dqc2tW7dOq1ev1po1a3TgwAGtXLlSL774olauXFlsnMViKfbaMIwS2/7samPi4uKUlZVl+zl16tS1HwgAAACAcsfuma0FCxaoW7duCgoKUseOHYs91HjHjh3y8vJSYmKiU5t79NFHNW3aNA0cOFCS1KxZM508eVIzZ87U8OHDFRISIun32avQ0FDb+9LT022zXSEhIcrLy1NmZmax2a309HS1bdv2irW9vLzk5eXl1OMBAAAAUH7YPbPVrFkzfffdd5oxY4aqVq2qEydO6Pjx46patapmzJihI0eOqEmTJk5tLjs7WxUqFG/Rw8PDtvR7ZGSkQkJCioW8vLw8JSUl2YJUq1at5OnpWWxMamqqDh069JdhCwAAAACuh0MPNfb19dX//M//6H/+53/M6qeY3r17a8aMGYqIiFCTJk301Vdfad68eXrggQck/X75YGxsrBISElS/fn3Vr19fCQkJ8vHx0aBBgyRJfn5+GjlypCZPnqyAgAD5+/trypQpatasmW11QgAAAABwNofClqstWLBATz31lMaOHav09HSFhYVp9OjRevrpp21jHnvsMeXk5Gjs2LHKzMxUmzZttHXrVvn6+trGvPTSS6pYsaJiYmKUk5Ojzp07a8WKFfLw8HDHYQEAAAAoB5watipUqKBOnTppzpw5atWq1XV/nq+vr+bPn/+XD0y2WCyKj49XfHz8FcdUrlxZCxYsKPYwZAAAAAAwk933bNnjjTfeUMeOHTV+/HhnfiwAAAAAlDpOndkaMWKEJOmZZ55x5scCAAAAQKnj1JktAAAAAMDvHApbe/fu1eDBgxUZGSlvb2/5+PgoMjJSgwcP1r59+8zqEQAAAABKHbsvI9y4caNiYmLUuXNnTZgwQcHBwTIMQ+np6dq6davatWunt99+W3379jWzXwAAAAAoFewOW08++aSmT5+uadOmldgXGxurWbNm6fHHHydsAQAAAIAcuIzwhx9+UP/+/a+4v1+/fjp27JhTmgIAAACA0s7usFWvXj1t3Ljxivvfffdd1a1b1xk9AQAAAECpZ/dlhNOnT9fAgQOVlJSkbt26KTg4WBaLRWlpaUpMTNTWrVu1du1aM3sFAAAAgFLD7rD197//XTt27NDLL7+sefPmKS0tTZIUEhKi6OhoJSUlKTo62rRGAQAAAKA0ceihxtHR0QQqAAAAALADDzUGAAAAABM4LWylpKSwQAYAAAAA/B+nha28vDydPHnSWR8HAAAAAKWa3fdsTZo06S/3//LLL9fdDAAAAACUFXaHrZdfflm33HKLqlatetn9Fy5ccFpTAAAAAFDa2R226tevr4kTJ2rIkCGX3Z+cnKxWrVo5rTEAAFD+WK1WZWRkuLRmSkqKS+sBKD/sDlutWrXS/v37rxi2LBaLDMNwWmMAAKB8sVqtatSwobJzctxSPy83zy11AZRddoetuXPnKjc394r7W7RooaKiIqc0BQAAyp+MjAxl5+QobkBPRQQFuKzuniPHtTzxcxUUFLisJoDywe6wFRISYmYfAAAAkqSIoABF1Qx2WT1r+hmX1QJQvji89Pu2bduuuO+11167rmYAAAAAoKxwOGzdc889mjx5svLy/v91zb/88ot69+6tuLg4pzYHAAAAAKWVw2Frx44deu+993Tbbbfp8OHD+uCDD9S0aVNduHBBX3/9tRk9AgAAAECp43DYatOmjb766is1b95crVq10r333qvJkyfrk08+UXh4uBk9AgAAAECp43DYkqSjR49q7969qlWrlipWrKgjR44oOzvb2b0BAAAAQKnlcNh64YUXFB0dra5du+rQoUPau3evbabriy++MKNHAAAAACh1HA5bL7/8sjZu3KgFCxaocuXKatKkifbs2aP+/furU6dOJrQIAAAAAKWP3c/ZuuTgwYMKDAwsts3T01Nz5sxRr169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BwCAa2V32KpQocJVL82zWCxO/Q2jr6+vmjZtWmxblSpVFBAQYNseGxurhIQE1a9fX/Xr11dCQoJ8fHw0aNAgSZKfn59GjhypyZMnKyAgQP7+/poyZYqaNWtmW50QAAAAAJzN7rC1YcOGK+7btWuXFixYIMMwnNKUIx577DHl5ORo7NixyszMVJs2bbR161bbM7Yk6aWXXlLFihUVExOjnJwcde7cWStWrOAZWwAAAABMY3fY6tu3b4ltR44cUVxcnN577z0NHjxYzz33nFObu5xPP/202GuLxaL4+HjFx8df8T2VK1fWggULtGDBAnObAwAAAID/U+Fa3nT69GmNGjVKzZs3V0FBgZKTk7Vy5UrW9gcAAACA/+NQ2MrKytLUqVN188036/Dhw/r444/13nvvlbivCgAAAADKO7svI5w9e7ZmzZqlkJAQvfXWW5e9rBAAAAAA8Du7w9a0adPk7e2tm2++WStXrtTKlSsvO279+vVOaw4AAAAASiu7w9awYcOuuvQ7AAAAAOB3doetFStWmNgGAAAAAJQt17QaIQAAAADgrxG2AAAAAMAEhC0AAAAAMAFhCwAAAABMQNgCAAAAABMQtgAAAADABIQtAAAAADABYQsAAAAATEDYAgAAAAATELYAAAAAwASELQAAAAAwQUV3NwCg/LFarcrIyHBZvZSUFJfVAgAAuISwBcClrFarGjVsqOycHJfXzsvNc3lNAABQfhG2ALhURkaGsnNyFDegpyKCAlxSc8+R41qe+LkKCgpcUg8AAEAibAFwk4igAEXVDHZJLWv6GZfUAQAA+CMWyAAAAAAAExC2AAAAAMAEhC0AAAAAMAFhCwAAAABMQNgCAAAAABMQtgAAAADABIQtAAAAADABYQsAAAAATEDYAgAAAAATELYAAAAAwASELQAAAAAwAWELAAAAAExA2AIAAAAAExC2AAAAAMAEhC0AAAAAMAFhCwAAAABMQNgCAAAAABMQtgAAAADABIQtAAAAADABYQsAAAAATEDYAgAAAAATELYAAAAAwASELQAAAAAwAWELAAAAAExQ0d0NAAAAALg+KSkpLq0XGBioiIgIl9YsjQhbAAAAQCl19vxFWSQNGTLEpXV9vL2VcuQIgesqCFsAAABAKXUh5zcZkib2vUtRETVdUtOafkYz132ojIwMwtZVELYAAACAUq5WQHVF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DBmigIAA+fj46JZbbtH+/ftNr1unTp0Sx2yxWDRu3DjTaxcUFOjJJ59UZGSkvL29VbduXU2fPl1FRUWm1z5//rxiY2NVu3ZteXt7q23bttq7d6/T61zt3GEYhuLj4xUWFiZvb2916tRJhw8fdknt9evXq3v37goMDJTFYlFycrLpdfPz8zV16lQ1a9ZMVapUUVhYmIYNG6bTp0+bXlv6/e94w4YNVaVKFVWvXl1dunTR7t27XVL7j0aPHi2LxaL58+ebXnfEiBEl/n7fcccd113XntqSlJKSoj59+sjPz0++vr664447ZLVaTa17uXOaxWLRnDlzrquuPbUvXLighx9+WLVq1ZK3t7caNWqkxYsXX3dde2r//PPPGjFihMLCwuTj46O7775b33///XXXtee7iBnnMnvqmnUeu1ptM89l9hy3mecyZyNslSLr1q1TbGysnnjiCX311Vf629/+ph49elz3SdseFy9eVIsWLbRw4ULTa/1RUlKSxo0bpy+//FKJiYkqKChQt27ddPHiRdNr16pVSy+88IL27dunffv26a677lLfvn2d9kXQHnv37tWSJUvUvHlzl9Vs0qSJUlNTbT8HDx40vWZmZqbatWsnT09PffTRR/r22281d+5cVatWzfTae/fuLXa8lx5+ft9995lee9asWXr11Ve1cOFCpaSkaPbs2ZozZ44WLFhgeu0HH3xQiYmJWrVqlQ4ePKhu3bqpS5cu+umnn5xa52rnjtmzZ2vevHlauHCh9u7dq5CQEHXt2lXnz583vfbFixfVrl07vfDCC9ddy9662dnZOnDggJ566ikdOHBA69ev13fffac+ffqYXluSoqKitHDhQh08eFA7d+5UnTp11K1bN/3yyy+m175k48aN2r17t8LCwq67pr1177777mJ/zz/88EOX1D527Jjat2+vhg0b6tNPP9XXX3+tp556SpUrVza17h+PNTU1VW+88YYsFov+/ve/X1dde2pPnDhRmzdv1urVq5WSkqKJEyfqkUce0bvvvmtqbcMw1K9fPx0/flzvvvuuvvrqK9WuXVtdunS57u8M9nwXMeNcZk9ds85jV6tt5rnMnuM281zmdAZKjdtvv90YM2ZMsW0NGzY0pk2b5tI+JBkbNmxwac1L0tPTDUlGUlKSW+pXr17deP31111S6/z580b9+vWNxMREo2PHjsaECRNMr/nMM88YLVq0ML3On02dOtVo3769y+tezoQJE4x69eoZRUVFpte65557jAceeKDYtv79+xtDhgwxtW52drbh4eFhvP/++8W2t2jRwnjiiSdMq/vnc0dRUZEREhJivPDCC7Ztv/32m+Hn52e8+uqrptb+oxMnThiSjK+++sqpNa9W95I9e/YYkoyTJ0+6vHZWVpYhydi2bZtLav/4449GzZo1jUOHDhm1a9c2XnrpJdPrDh8+3Ojbt69T69hbe8CAAab/fbbn33Pfvn2Nu+66yyW1mzRpYkyfPr3YtltvvdV48sknTa199OhRQ5Jx6NAh27aCggLD39/fWLp0qVNr//m7iKvOZX/1HcjM89jVal9i1rnMntpmncucgZmtUiIvL0/79+9Xt27dim3v1q2bdu3a5aauXC8rK0uS5O/v79K6hYWFWrt2rS5evKjo6GiX1Bw3bpzuuecedenSxSX1Lvn+++8VFhamyMhIDRw4UMePHze95qZNm9S6dWvdd999CgoKUsuWLbV06VLT6/5ZXl6eVq9erQceeEAWi8X0eu3bt9fHH3+s7777TpL09ddfa+fOnerZs6epdQsKClRYWFjit+ve3t7auXOnqbX/6MSJE0pLSyt2XvPy8lLHjh3L3XnNYrG4ZCb3j/Ly8rRkyRL5+fmpRYsWptcrKirS0KFD9eijj6pJkyam1/ujTz/9VEFBQYqKitKoUaOUnp5ues2ioiJ98MEHioqKUvfu3RUUFKQ2bdq47DL8S37++Wd98MEHGjlypEvqtW/fXps2bdJPP/0kwzC0fft2fffdd+revbupdXNzcyWp2HnNw8NDlSpVcvp57c/fRVx1LnPXdyB7a5t1LrtabVefyxxF2ColMjIyVFhYqODg4GLbg4ODlZaW5qauXMswDE2aNEnt27dX06ZNXVLz4MGDuummm+Tl5aUxY8Zow4YNaty4sel1165dqwMHDmjmzJmm1/qjNm3a6M0339SWLVu0dOlSpaWlqW3btjpz5oypdY8fP67Fixerfv362rJli8aMGaPx48frzTffNLXun23cuFG//vqrRowY4ZJ6U6dO1T//+U81bNhQnp6eatmypWJjY/XPf/7T1Lq+vr6Kjo7Wc889p9OnT6uwsFCrV6/W7t27lZqaamrtP7p07irP57XffvtN06ZN06BBg1S1alWX1Hz//fd10003qXLlynrppZeUmJiowMBA0+vOmjVLFStW1Pjx402v9Uc9evTQv//9b33yySeaO3eu9u7dq7vuusv25dws6enpunDhgl544QXdfffd2rp1q+699171799fSUlJptb+o5UrV8rX11f9+/d3Sb1XXnlFjRs3Vq1atVSpUiXdfffdWrRokdq3b29q3YYNG6p27dqKi4tTZmam8vLy9MILLygtLc2p57XLfRdxxbnMHd+BHKlt1rnsr2q761zmqIrubgCO+fNv2w3DcMlv4G8EDz/8sL755huX/ua9QYMGSk5O1q+//qp33nlHw4cPV1JSkqmB69SpU5owYYK2bt163df1O6pHjx62Pzdr1kzR0dGqV6+eVq5cqUmTJplWt6ioSK1bt1ZCQoIkqWXLljp8+LAWL16sYcOGmVb3z5YtW6YePXo47V6Sq1m3bp1Wr16tNWvWqEmTJkpOTlZsbKzCwsI0fPhwU2uvWrVKDzzwgGrWrCkPDw/deuutGjRokA4cOGBq3cspr+e1/Px8DRw4UEVFRVq0aJHL6t55551KTk5WRkaGli5dqpiYGO3evVtBQUGm1dy/f79efvllHThwwOX/bgcMGGD7c9OmTdW6dWvVrl1bH3zwgakB5NJCN3379tXEiRMlSbfccot27dqlV199VR07djSt9h+98cYbGjx4sMv+f/LKK6/oyy+/1KZNm1S7dm3t2LFDY8eOVWhoqKlXanh6euqdd97RyJEj5e/vLw8PD3Xp0qXY/9ec4a++i5h5LnPHdyB7a5t5Lvur2u44l10LZrZKicDAQHl4eJT4DUl6enqJ36SURY888og2bdqk7du3q1atWi6rW6lSJd18881q3bq1Zs6cqRYtWujll182teb+/fuVnp6uVq1aqWLFiqpYsaKSkpL0yiuvqGLFiiosLDS1/h9VqVJFzZo1c8pqTn8lNDS0RIBt1KiRSxZ/ueTkyZPatm2bHnzwQZfVfPTRRzVt2jQNHDhQzZo109ChQzVx4kSXzGjWq1dPSUlJunDhgk6dOqU9e/YoPz9fkZGRpte+5NJKl+XxvJafn6+YmBidOHFCiYmJLpvVkn7/e33zzTfrjjvu0LJly1SxYkUtW7bM1JqfffaZ0tPTFRERYTuvnTx5UpMnT1adOnVMrf1noaGhql27tunntcDAQFWsWNGt57bPPvtMR48eddl5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mjVrqkqVKmrTpo0+/fTTq/4z8vX1VUhIiCIiItShQwctWbJETz31lJ5++mkdPXpUklRYWKiRI0cqMjJS3t7eatCggV5++WXbZ+zYsUOenp5KS0sr9tmTJ09Whw4drtoDAMAxhC0AgFvt379fMTExGjhwoA4ePKj4+Hg99dRTtiDliKlTp2r8+PFKSUlR9+7dS+w3DEP9+vXT2bNnlZSUpMTERB07dkwDBgyQJA0YMEDbtm2TJO3Zs0epqakKDw8v8Tl79uyRJG3btk2pqalav369bd/27dt17Ngxbd++XStXrtSKFSuKHcv999+vzz//XGvXrtU333yj++67T3fffbe+//57h493woQJMgxD7777riSpqKhItWrV0ttvv61vv/1WTz/9tB5//HG9/fbbkqQOHTqobt26WrVqle0zCgoKtHr1at1///0O1wcA/LWK7m4AAFB2vf/++7rpppuKbSssLCz2et68eercubOeeuopSVJUVJS+/fZbzZkzRyNGjHCoXmxsrPr373/F/du2bdM333yjEydO2ELUqlWr1KRJE+3du1e33XabAgICJEk1atRQSEjIZT+nRo0akqSAgIASY6pXr66FCxfKw8NDDRs21D333KOPP/5Yo0aN0rFjx/TWW2/pxx9/VFhYmCRpypQp2rx5s5YvX66EhASHjtff319BQUG22TdPT089++yztv2RkZHatWuX3n77bcXExEiSRo4cqeXLl+vRRx+VJH3wwQfKzs627QcAOA8zWwAA09x5551KTk4u9vP6668XG5OSkqJ27doV29auXTt9//33JYLZ1bRu3fov96ekpCg8PLzYbFXjxo1VrVo1paSkOFTrSpo0aSIPDw/b69DQUKWnp0uSDhw4IMMwFBUVpZtuusn2k5SUpGPHjl1TPcMwZLFYbK9fffVVtW7dWjVq1NBNN92kpUuXymq12vaPGDFCP/zwg7788ktJ0htvvKGYmBhVqVLlmuoDAK6MmS0AgGmqVKmim2++udi2H3/8sdjrP4eFS9v+yGKxlNh2uQUwrhYYLlfrr7ZfC09Pz2KvLRaLioqKJP1+mZ+Hh4f2799fLJBJKjEDaI8zZ87ol19+sd1D9vbbb2vixImaO3euoqOj5evrqzlz5mj37t229wQFBal3795avny56tatqw8//NCue8YAAI4jbAEA3Kpx48bauXNnsW27du1SVFSULZDUqFFDqamptv3ff/+9srOzr6mW1WrVqVOnbLNb3377rbKystSoUSO7P6dSpUqSSl4SeTUtW7ZUYWGh0tPT9be//c2h917Oyy+/rAoVKtiW2P/ss8/Utm1bjR071jbmcjNmDz74oAYOHKhatWqpXr16JWYWAQDOQdgCALjV5MmTddttt+m5557TgAED9MUXX2jhwoVatGiRbcxdd92lhQsX6o477lBRUZGmTp1aYgbJHl26dFHz5s01ePBgzZ8/XwUFBRo7dqw6dux41UsQ/ygoKEje3t7avHmzatWqpcqVK8vPz++q74uKitLgwYM1bNgwzZ07Vy1btlRGRoY++eQTNWvWTD179rzie8+fP6+0tDTl5+frxIkTWr16tV5//XXNnDnTNnt48803680339SWLVsUGRmpVatWae/evbaZr0u6d+8uPz8/Pf/885o+fbrdxw0AcAz3bAEA3OrWW2/V22+/rbVr16pp06Z6+umnNX369GKLY8ydO1fh4eHq0KGDBg0apClTplzT868uLSFfvXp1dejQQV26dFHdunW1bt06hz6nYsWKeuWVV/Taa68pLCxMffv2tfu9y5cv17BhwzR58mQ1aNBAffr00e7duy+76uEfPf300woNDdXNN9+soUOHKisrSx9//LGmTp1qGzNmzBj1799fAwYMUJs2bXTmzJlis1yXVKhQQSNGjFBhYaGGDRtm/4EDABxiMf58ETwAACjzRo0apZ9//lmbNm1ydysAUGZxGSEAAOVIVlaW9u7dq3//+9+253MBAMxB2AIAoBzp27ev9uzZo9GjR6tr167ubgcAyjQuIwQAAAAAE7BABgAAAACYgLAFAAAAACYgbAEAAACACQhbAAAAAGACwhYAAAAAmICwBQAAAAAmIGwBAAAAgAkIWwAAAABgAsIWAAAAAJjg/wHxj2ueBXmreQAAAABJRU5ErkJggg==",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Filter for only classic bikes used by members\n",
"e_bikes_members = data[(data['rideable_type'] == 'electric_bike') & (data['member_casual'] == 'member')]\n",
"\n",
"# Filter for Monday to Friday\n",
"e_bikes_members['day_of_week'] = e_bikes_members['started_at'].dt.dayofweek\n",
"e_bikes_members_weekdays = e_bikes_members[e_bikes_members['day_of_week'] < 5]\n",
"\n",
"# Extract hour of day\n",
"e_bikes_members_weekdays['hour_of_day'] = e_bikes_members_weekdays['started_at'].dt.hour\n",
"\n",
"# Plotting histogram\n",
"plt.figure(figsize=(10, 6))\n",
"sns.histplot(e_bikes_members_weekdays['hour_of_day'], bins=24, kde=False, color='#a76046')\n",
"#plt.title('Usage of Classic Bikes by Members (Monday-Friday)')\n",
"plt.xlabel('Hour of the Day')\n",
"plt.ylabel('Number of Rides (x10,000)')\n",
"plt.xticks(range(0, 24))\n",
"plt.grid(False)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "e47ed483",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:10:02.288201Z",
"start_time": "2023-11-10T20:10:02.267520Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(14301, 18)"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"e_bikes_members.shape"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "90a849d0",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:11:04.620374Z",
"start_time": "2023-11-10T20:11:04.150444Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(25436, 18)"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"e_bikes = data[(data['rideable_type'] == 'electric_bike')]\n",
"e_bikes.shape"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "d3ed6ecb",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:11:41.415129Z",
"start_time": "2023-11-10T20:11:41.324313Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"ride_id 0\n",
"rideable_type 0\n",
"started_at 0\n",
"ended_at 0\n",
"start_station_name 7519\n",
"start_station_id 7519\n",
"end_station_name 7980\n",
"end_station_id 7980\n",
"start_lat 0\n",
"start_lng 0\n",
"end_lat 0\n",
"end_lng 0\n",
"member_casual 0\n",
"ride_duration 0\n",
"start_date 0\n",
"start_hour 0\n",
"day_of_week 0\n",
"week_of_year 0\n",
"dtype: int64"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"e_bikes.isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "f2ca0c06",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:13:53.774404Z",
"start_time": "2023-11-10T20:13:53.760136Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"68.62714263248938"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"percentage_with_end_station_name = e_bikes['end_station_name'].notna().mean() * 100\n",
"\n",
"percentage_with_end_station_name"
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "5e015fe7",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:09:48.345877Z",
"start_time": "2023-11-10T21:09:48.307484Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(17917, 19)"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"eb_start_yes = e_bikes[e_bikes['start_station_name'].notnull()]\n",
"eb_start_yes.shape"
]
},
{
"cell_type": "code",
"execution_count": 59,
"id": "90854ac8",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:27:39.463975Z",
"start_time": "2023-11-10T21:27:39.421659Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(3.699481050479635, 64.92766158200976, 31.372857367510615)"
]
},
"execution_count": 59,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Calculate the three scenarios\n",
"total_electric_with_start = len(e_bikes)\n",
"match_count = (e_bikes['start_station_name'] == e_bikes['end_station_name']).sum()\n",
"different_count = ((e_bikes['start_station_name'] != e_bikes['end_station_name']) & \n",
" e_bikes['end_station_name'].notnull()).sum()\n",
"no_end_station_count = e_bikes['end_station_name'].isnull().sum()\n",
"\n",
"# Calculate percentages\n",
"percent_match = (match_count / total_electric_with_start) * 100\n",
"percent_different = (different_count / total_electric_with_start) * 100\n",
"percent_no_end_station = (no_end_station_count / total_electric_with_start) * 100\n",
"\n",
"percent_match, percent_different, percent_no_end_station"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "40269986",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 60,
"id": "135ee6b1",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:28:19.803660Z",
"start_time": "2023-11-10T21:28:19.775586Z"
}
},
"outputs": [],
"source": [
"# Calculate the three scenarios\n",
"total_electric_with_start = len(eb_start_yes)\n",
"match_count = (eb_start_yes['start_station_name'] == eb_start_yes['end_station_name']).sum()\n",
"different_count = ((eb_start_yes['start_station_name'] != eb_start_yes['end_station_name']) & \n",
" eb_start_yes['end_station_name'].notnull()).sum()\n",
"no_end_station_count = eb_start_yes['end_station_name'].isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 61,
"id": "4a056691",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:28:20.503727Z",
"start_time": "2023-11-10T21:28:20.491478Z"
}
},
"outputs": [],
"source": [
"# Calculate percentages\n",
"percent_match = (match_count / total_electric_with_start) * 100\n",
"percent_different = (different_count / total_electric_with_start) * 100\n",
"percent_no_end_station = (no_end_station_count / total_electric_with_start) * 100\n",
"\n",
"results = (percent_match, percent_different, percent_no_end_station)"
]
},
{
"cell_type": "code",
"execution_count": 62,
"id": "99d8aae1",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:28:22.091882Z",
"start_time": "2023-11-10T21:28:21.990952Z"
}
},
"outputs": [
{
"data": {
"image/png": "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7/N+S6fTwWKxtOt5UVFRqKmpaf4cQItzlZSUICMjA++99x6GDRsGANi2bdsl5/nt834rOjoaOp0O27Ztw+zZswEATU1N2LdvHx5++OE2ZyfHxUvARETUag0NDSgsLMS5c+ewf/9+vPjii5gyZQomTZqEOXPmdOjct956K7y9vTFlyhRs3boVp0+fxubNm/HHP/4ReXl5nf683woPD8eWLVtw7ty55j39fmvlypW47bbbsHLlSpw4cQLHjx/Hv/71L6xatQpTpkwBAISFhUGSJKxcuRIXLlxAdXU1TCYTvLy88P777yMrKws//vgjHn300Rbn9vX1hdFoxJo1a3D+/HlUVFRc8vrOzs64//778fjjj2PNmjU4duwY7rnnHtTW1uKuu+5q9XslYgEkIqJWW7NmDQICAhAeHo7x48dj48aNeOutt/DNN9+0mF/XHk5OTtiyZQtCQ0Mxbdo0xMfHY968eairq7vqyF57n/dbzz//PHJychAVFdXi0vGvJSQkwMnJCY899hh69+6NgQMHYunSpfjwww9x++23AwCCgoLw3HPP4cknn4Sfnx/+8Ic/QKVSYcmSJUhLS0NiYiIeeeQR/POf/2xxbo1Gg7feegvvvfceAgMDmwvlb7388suYPn06br/9dqSmpiIrKwtr166FyWRq9Xsl4r2AiYiIiBwMRwCJiIiIHAwLIBEREZGDYQEkIiIicjAsgEREREQOhgWQiIiIyMGwABIRERE5GBZAIiIiIgfDAkhERETkYFgAiYiIiBwMCyARERGRg2EBJCIiInIwLIBEREREDoYFkIiIiMjBsAASERERORgWQCIiIiIHwwJIRERE5GBYAImIiIgczP8HKGKdTVh/zxwAAAAASUVORK5CYII=",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Creating a 2D pie chart with the provided percentages\n",
"\n",
"# Tuple of results and their corresponding labels\n",
"#results = (3.7, 64.9, 31.4)\n",
"labels = ['Same Station', 'Different Station', 'No End Station']\n",
"colours = ['#e0caa9', '#a76046', '#636348']\n",
"\n",
"# Create a pie chart\n",
"plt.figure(figsize=(8, 6))\n",
"plt.pie(results, labels=labels, autopct='%1.1f%%', startangle=140, colors=colours)\n",
"#plt.title('Distribution of Electric Bike Rides by End Station Status')\n",
"plt.axis('equal') # Equal aspect ratio ensures the pie chart is circular.\n",
"\n",
"# Show the pie chart\n",
"plt.show()\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ae9e411c",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "c0220216",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "7ada39c3",
"metadata": {},
"source": [
"The following will create a new data feature that is the distance betweent the starting and ending latitude/longitude points."
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "1d67fe2c",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:38:52.210092Z",
"start_time": "2023-11-10T20:38:52.188076Z"
}
},
"outputs": [],
"source": [
"# Redefining the Haversine function to handle potential issues\n",
"def haversine(lat1, lon1, lat2, lon2):\n",
" # Convert latitude and longitude from degrees to radians\n",
" lat1, lon1, lat2, lon2 = map(np.radians, [lat1, lon1, lat2, lon2])\n",
"\n",
" # Haversine formula\n",
" dlon = lon2 - lon1\n",
" dlat = lat2 - lat1\n",
" a = np.sin(dlat/2.0)**2 + np.cos(lat1) * np.cos(lat2) * np.sin(dlon/2.0)**2\n",
"\n",
" c = 2 * np.arcsin(np.sqrt(a))\n",
" km = 6371 * c\n",
" miles = km * 0.621371\n",
" return miles"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "3f828c39",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T20:40:48.365485Z",
"start_time": "2023-11-10T20:40:47.289087Z"
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\sshanks\\AppData\\Local\\Temp\\ipykernel_26956\\597787971.py:3: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" e_bikes['distance_miles'] = e_bikes.apply(\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ride_id | \n",
" distance_miles | \n",
"
\n",
" \n",
" \n",
" \n",
" 3479634 | \n",
" DF3F95B75B6DFBBC | \n",
" 0.462689 | \n",
"
\n",
" \n",
" 2954009 | \n",
" E62A501C91C9283A | \n",
" 0.928844 | \n",
"
\n",
" \n",
" 3711879 | \n",
" 060C412712E514E3 | \n",
" 1.804045 | \n",
"
\n",
" \n",
" 1548221 | \n",
" DFF76679ACF3456A | \n",
" 1.188627 | \n",
"
\n",
" \n",
" 187158 | \n",
" C39C9D29A5DC9733 | \n",
" 0.636397 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ride_id distance_miles\n",
"3479634 DF3F95B75B6DFBBC 0.462689\n",
"2954009 E62A501C91C9283A 0.928844\n",
"3711879 060C412712E514E3 1.804045\n",
"1548221 DFF76679ACF3456A 1.188627\n",
"187158 C39C9D29A5DC9733 0.636397"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Applying the Haversine function to the electric bike data\n",
"try:\n",
" e_bikes['distance_miles'] = e_bikes.apply(\n",
" lambda row: haversine(row['start_lat'], row['start_lng'], row['end_lat'], row['end_lng']), axis=1)\n",
"except Exception as e:\n",
" error_message = str(e)\n",
"\n",
"# Checking if the operation was successful or if there was an error\n",
"if 'e_bikes' in locals():\n",
" result = e_bikes[['ride_id', 'distance_miles']].head()\n",
"else:\n",
" result = error_message\n",
"\n",
"result"
]
},
{
"cell_type": "code",
"execution_count": 40,
"id": "4be8e232",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T21:10:17.577617Z",
"start_time": "2023-11-10T21:10:17.564549Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(17917, 19)"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"eb_start_yes.shape"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a44845d3",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "436a1e02",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 139,
"id": "fc0985a3",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:22:14.207424Z",
"start_time": "2023-11-10T22:22:12.827148Z"
}
},
"outputs": [],
"source": [
"# Aggregate Data by Station Name\n",
"aggregated_data = eb_start_yes.groupby('start_station_name').apply(\n",
" lambda df: pd.Series({\n",
" 'Starts': len(df),\n",
" 'Same Station': (df['start_station_name'] == df['end_station_name']).sum(),\n",
" 'Different Station': ((df['start_station_name'] != df['end_station_name']) & df['end_station_name'].notnull()).sum(),\n",
" 'No End Station': df['end_station_name'].isnull().sum(),\n",
" 'No End Pct': (df['end_station_name'].isnull().sum() / len(df)),\n",
" 'start_lat': df['start_lat'],\n",
" 'start_lng': df['start_lng']\n",
" })\n",
").reset_index()"
]
},
{
"cell_type": "code",
"execution_count": 140,
"id": "6e31961b",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:22:16.055669Z",
"start_time": "2023-11-10T22:22:16.003265Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" start_station_name | \n",
" Starts | \n",
" Same Station | \n",
" Different Station | \n",
" No End Station | \n",
" No End Pct | \n",
" start_lat | \n",
" start_lng | \n",
"
\n",
" \n",
" \n",
" \n",
" 744 | \n",
" Streeter Dr & Grand Ave | \n",
" 204 | \n",
" 30 | \n",
" 132 | \n",
" 42 | \n",
" 0.205882 | \n",
" 3316649 41.892225\n",
"3260783 41.892193\n",
"2995... | \n",
" 3316649 -87.612317\n",
"3260783 -87.611869\n",
"2995... | \n",
"
\n",
" \n",
" 204 | \n",
" Damen Ave & Pierce Ave | \n",
" 104 | \n",
" 4 | \n",
" 69 | \n",
" 31 | \n",
" 0.298077 | \n",
" 1352900 41.909391\n",
"141002 41.909399\n",
"3768... | \n",
" 1352900 -87.677693\n",
"141002 -87.677736\n",
"3768... | \n",
"
\n",
" \n",
" 146 | \n",
" Clark St & Elm St | \n",
" 129 | \n",
" 5 | \n",
" 94 | \n",
" 30 | \n",
" 0.232558 | \n",
" 3973389 41.902746\n",
"4581229 41.902878\n",
"2873... | \n",
" 3973389 -87.631636\n",
"4581229 -87.631649\n",
"2873... | \n",
"
\n",
" \n",
" 788 | \n",
" Wells St & Concord Ln | \n",
" 144 | \n",
" 5 | \n",
" 110 | \n",
" 29 | \n",
" 0.201389 | \n",
" 5196969 41.911938\n",
"4413969 41.912070\n",
"2047... | \n",
" 5196969 -87.634788\n",
"4413969 -87.634863\n",
"2047... | \n",
"
\n",
" \n",
" 757 | \n",
" University Ave & 57th St | \n",
" 55 | \n",
" 1 | \n",
" 25 | \n",
" 29 | \n",
" 0.527273 | \n",
" 3158488 41.791483\n",
"5652976 41.791498\n",
"7045... | \n",
" 3158488 -87.599900\n",
"5652976 -87.599842\n",
"7045... | \n",
"
\n",
" \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" 255 | \n",
" Ewing Ave & Burnham Greenway | \n",
" 9 | \n",
" 0 | \n",
" 1 | \n",
" 8 | \n",
" 0.888889 | \n",
" 3156796 41.881413\n",
"1361087 41.871347\n",
"1723... | \n",
" 3156796 -87.674816\n",
"1361087 -87.673930\n",
"1723... | \n",
"
\n",
" \n",
" 394 | \n",
" Lakefront Trail & Wilson Ave | \n",
" 27 | \n",
" 2 | \n",
" 17 | \n",
" 8 | \n",
" 0.296296 | \n",
" 849816 41.965793\n",
"1263834 41.965833\n",
"4468... | \n",
" 849816 -87.645558\n",
"1263834 -87.645515\n",
"4468... | \n",
"
\n",
" \n",
" 391 | \n",
" Lake Park Ave & 53rd St | \n",
" 17 | \n",
" 0 | \n",
" 9 | \n",
" 8 | \n",
" 0.470588 | \n",
" 4707225 41.799528\n",
"2430511 41.799587\n",
"1164... | \n",
" 4707225 -87.586406\n",
"2430511 -87.586378\n",
"1164... | \n",
"
\n",
" \n",
" 494 | \n",
" Milwaukee Ave & Rockwell St | \n",
" 31 | \n",
" 1 | \n",
" 22 | \n",
" 8 | \n",
" 0.258065 | \n",
" 5571308 41.920284\n",
"1771126 41.920294\n",
"1795... | \n",
" 5571308 -87.692677\n",
"1771126 -87.692589\n",
"1795... | \n",
"
\n",
" \n",
" 421 | \n",
" Leavitt St & Chicago Ave | \n",
" 25 | \n",
" 1 | \n",
" 16 | \n",
" 8 | \n",
" 0.320000 | \n",
" 566463 41.895476\n",
"5641419 41.895493\n",
"1980... | \n",
" 566463 -87.682058\n",
"5641419 -87.681967\n",
"1980... | \n",
"
\n",
" \n",
"
\n",
"
169 rows × 8 columns
\n",
"
"
],
"text/plain": [
" start_station_name Starts Same Station Different Station \\\n",
"744 Streeter Dr & Grand Ave 204 30 132 \n",
"204 Damen Ave & Pierce Ave 104 4 69 \n",
"146 Clark St & Elm St 129 5 94 \n",
"788 Wells St & Concord Ln 144 5 110 \n",
"757 University Ave & 57th St 55 1 25 \n",
".. ... ... ... ... \n",
"255 Ewing Ave & Burnham Greenway 9 0 1 \n",
"394 Lakefront Trail & Wilson Ave 27 2 17 \n",
"391 Lake Park Ave & 53rd St 17 0 9 \n",
"494 Milwaukee Ave & Rockwell St 31 1 22 \n",
"421 Leavitt St & Chicago Ave 25 1 16 \n",
"\n",
" No End Station No End Pct \\\n",
"744 42 0.205882 \n",
"204 31 0.298077 \n",
"146 30 0.232558 \n",
"788 29 0.201389 \n",
"757 29 0.527273 \n",
".. ... ... \n",
"255 8 0.888889 \n",
"394 8 0.296296 \n",
"391 8 0.470588 \n",
"494 8 0.258065 \n",
"421 8 0.320000 \n",
"\n",
" start_lat \\\n",
"744 3316649 41.892225\n",
"3260783 41.892193\n",
"2995... \n",
"204 1352900 41.909391\n",
"141002 41.909399\n",
"3768... \n",
"146 3973389 41.902746\n",
"4581229 41.902878\n",
"2873... \n",
"788 5196969 41.911938\n",
"4413969 41.912070\n",
"2047... \n",
"757 3158488 41.791483\n",
"5652976 41.791498\n",
"7045... \n",
".. ... \n",
"255 3156796 41.881413\n",
"1361087 41.871347\n",
"1723... \n",
"394 849816 41.965793\n",
"1263834 41.965833\n",
"4468... \n",
"391 4707225 41.799528\n",
"2430511 41.799587\n",
"1164... \n",
"494 5571308 41.920284\n",
"1771126 41.920294\n",
"1795... \n",
"421 566463 41.895476\n",
"5641419 41.895493\n",
"1980... \n",
"\n",
" start_lng \n",
"744 3316649 -87.612317\n",
"3260783 -87.611869\n",
"2995... \n",
"204 1352900 -87.677693\n",
"141002 -87.677736\n",
"3768... \n",
"146 3973389 -87.631636\n",
"4581229 -87.631649\n",
"2873... \n",
"788 5196969 -87.634788\n",
"4413969 -87.634863\n",
"2047... \n",
"757 3158488 -87.599900\n",
"5652976 -87.599842\n",
"7045... \n",
".. ... \n",
"255 3156796 -87.674816\n",
"1361087 -87.673930\n",
"1723... \n",
"394 849816 -87.645558\n",
"1263834 -87.645515\n",
"4468... \n",
"391 4707225 -87.586406\n",
"2430511 -87.586378\n",
"1164... \n",
"494 5571308 -87.692677\n",
"1771126 -87.692589\n",
"1795... \n",
"421 566463 -87.682058\n",
"5641419 -87.681967\n",
"1980... \n",
"\n",
"[169 rows x 8 columns]"
]
},
"execution_count": 140,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"top_20_percent"
]
},
{
"cell_type": "code",
"execution_count": 141,
"id": "cfc5c7a9",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:22:23.129036Z",
"start_time": "2023-11-10T22:22:23.115321Z"
}
},
"outputs": [],
"source": [
"# Sort Stations by 'No End Station' Count\n",
"sorted_stations = aggregated_data.sort_values(by='No End Pct', ascending=False)\n",
"\n",
"# Select Top and Bottom 20%\n",
"top_20_percent = sorted_stations.head(len(sorted_stations) // 5)\n",
"bottom_20_percent = sorted_stations.tail(len(sorted_stations) // 5)\n",
"\n",
"# Extract the required data for visualization\n",
"top_20_data = top_20_percent[['Same Station', 'Different Station', 'No End Station']].sum()\n",
"bottom_20_data = bottom_20_percent[['Same Station', 'Different Station', 'No End Station']].sum()"
]
},
{
"cell_type": "code",
"execution_count": 142,
"id": "e22c12c2",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:22:26.859883Z",
"start_time": "2023-11-10T22:22:26.654874Z"
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABCQAAAG6CAYAAADQwpedAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAACiqElEQVR4nOzdd1iUV9oG8PudGfoAM9ShdxQERWJvUaOxx55eSEw2u9n90pPdZDd903vb9KiboimWNWrsGjVWbCgiAlJEeu8w7fvDhISAAsrMmXL/rotLmXnnvPcgwszznvMcyWg0GkFEREREREREZEYy0QGIiIiIiIiIyP6wIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZseCBBERERERERGZHQsSRERERERERGR2LEgQERERERERkdmxIEFEREREREREZqcQHYCIxNC2NKO5phJt9bUw6PUwGPQwGgww6vUwGg2//d2gh8FggNGgh1FvgNF4/jiDXg9JJoODixscXZVwcHX75e/n/3RwcRX9FImIiOxaU1MDWlqa0dbW2v6h1baira3t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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Create Subplots with Pie Charts\n",
"fig, axs = plt.subplots(1, 2, figsize=(12, 6))\n",
"\n",
"# Pie chart for bottom 20%\n",
"axs[0].pie(bottom_20_data, labels=bottom_20_data.index, autopct='%1.1f%%', startangle=140, colors=colours)\n",
"\n",
"# Pie chart for top 20%\n",
"axs[1].pie(top_20_data, labels=top_20_data.index, autopct='%1.1f%%', startangle=140, colors=colours)\n",
"\n",
"# Display the pie charts\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 143,
"id": "141243ad",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:02.969738Z",
"start_time": "2023-11-10T22:23:02.953459Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"Index(['start_station_name', 'Starts', 'Same Station', 'Different Station',\n",
" 'No End Station', 'No End Pct', 'start_lat', 'start_lng'],\n",
" dtype='object')"
]
},
"execution_count": 143,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"top_20_percent.columns"
]
},
{
"cell_type": "code",
"execution_count": 144,
"id": "ff4faed2",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:07.421380Z",
"start_time": "2023-11-10T22:23:07.373267Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" start_station_name | \n",
" start_lat | \n",
" start_lng | \n",
"
\n",
" \n",
" \n",
" \n",
" 4282455 | \n",
" Ellis Ave & 58th St | \n",
" 41.788746 | \n",
" -87.601334 | \n",
"
\n",
" \n",
" 3278803 | \n",
" Cornell Ave & Hyde Park Blvd | \n",
" 41.802406 | \n",
" -87.586924 | \n",
"
\n",
" \n",
" 705635 | \n",
" Kedzie Ave & 57th St | \n",
" 41.790000 | \n",
" -87.700000 | \n",
"
\n",
" \n",
" 568733 | \n",
" Ellis Ave & 53rd St | \n",
" 41.799336 | \n",
" -87.600958 | \n",
"
\n",
" \n",
" 4766711 | \n",
" Lavergne Ave & 46th St | \n",
" 41.810000 | \n",
" -87.750000 | \n",
"
\n",
" \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" 1357630 | \n",
" Woodlawn Ave & Lake Park Ave | \n",
" 41.814051 | \n",
" -87.597026 | \n",
"
\n",
" \n",
" 116269 | \n",
" Western Ave & 104th St | \n",
" 41.704644 | \n",
" -87.681126 | \n",
"
\n",
" \n",
" 2411602 | \n",
" Cornell Ave & Hyde Park Blvd | \n",
" 41.802396 | \n",
" -87.586499 | \n",
"
\n",
" \n",
" 1433758 | \n",
" Ellis Ave & 60th St | \n",
" 41.785141 | \n",
" -87.601082 | \n",
"
\n",
" \n",
" 5624838 | \n",
" Campbell Ave & Fullerton Ave | \n",
" 41.924625 | \n",
" -87.689326 | \n",
"
\n",
" \n",
"
\n",
"
603 rows × 3 columns
\n",
"
"
],
"text/plain": [
" start_station_name start_lat start_lng\n",
"4282455 Ellis Ave & 58th St 41.788746 -87.601334\n",
"3278803 Cornell Ave & Hyde Park Blvd 41.802406 -87.586924\n",
"705635 Kedzie Ave & 57th St 41.790000 -87.700000\n",
"568733 Ellis Ave & 53rd St 41.799336 -87.600958\n",
"4766711 Lavergne Ave & 46th St 41.810000 -87.750000\n",
"... ... ... ...\n",
"1357630 Woodlawn Ave & Lake Park Ave 41.814051 -87.597026\n",
"116269 Western Ave & 104th St 41.704644 -87.681126\n",
"2411602 Cornell Ave & Hyde Park Blvd 41.802396 -87.586499\n",
"1433758 Ellis Ave & 60th St 41.785141 -87.601082\n",
"5624838 Campbell Ave & Fullerton Ave 41.924625 -87.689326\n",
"\n",
"[603 rows x 3 columns]"
]
},
"execution_count": 144,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Extracting latitude and longitude for start stations\n",
"start_stations_lat_lng = data[['start_station_name', 'start_lat', 'start_lng']].drop_duplicates()\n",
"\n",
"# Filtering for the top 20 stations with largest discrepancy\n",
"top_20_stations_lat_lng = start_stations_lat_lng[start_stations_lat_lng['start_station_name'].isin(top_20_percent.start_station_name)]\n",
"\n",
"top_20_stations_lat_lng"
]
},
{
"cell_type": "code",
"execution_count": 145,
"id": "8b3a4019",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:08.731003Z",
"start_time": "2023-11-10T22:23:08.716081Z"
}
},
"outputs": [],
"source": [
"# Extracting the station names for the top and bottom 10 stations\n",
"top_20_station_names = top_20_percent.start_station_name\n",
"bottom_20_station_names = bottom_20_percent.start_station_name"
]
},
{
"cell_type": "code",
"execution_count": 146,
"id": "3ac5041e",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:09.708666Z",
"start_time": "2023-11-10T22:23:09.680249Z"
}
},
"outputs": [],
"source": [
"# Filtering the latitude and longitude for these stations\n",
"top_20_stations_lat_lng = start_stations_lat_lng[start_stations_lat_lng['start_station_name'].isin(top_20_station_names)]\n",
"bottom_20_stations_lat_lng = start_stations_lat_lng[start_stations_lat_lng['start_station_name'].isin(bottom_20_station_names)]"
]
},
{
"cell_type": "code",
"execution_count": 147,
"id": "d99307db",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:10.265698Z",
"start_time": "2023-11-10T22:23:10.249822Z"
}
},
"outputs": [],
"source": [
"from IPython.display import HTML"
]
},
{
"cell_type": "code",
"execution_count": 148,
"id": "f67d9b4e",
"metadata": {
"ExecuteTime": {
"end_time": "2023-11-10T22:23:12.746327Z",
"start_time": "2023-11-10T22:23:12.178783Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"Make this Notebook Trusted to load map: File -> Trust Notebook
"
],
"text/plain": [
""
]
},
"execution_count": 148,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Ensuring unique entries for each station\n",
"top_20_stations_lat_lng_unique = top_20_stations_lat_lng.drop_duplicates(subset=['start_station_name'])\n",
"bottom_20_stations_lat_lng_unique = bottom_20_stations_lat_lng.drop_duplicates(subset=['start_station_name'])\n",
"\n",
"# Creating a map centered around the general area of the stations\n",
"map_center_lat = start_stations_lat_lng['start_lat'].mean()\n",
"map_center_lng = start_stations_lat_lng['start_lng'].mean()\n",
"station_map_discrepancy = folium.Map(location=[map_center_lat, map_center_lng], zoom_start=12)\n",
"\n",
"# Adding blue markers for top 20 \n",
"for _, row in top_20_stations_lat_lng_unique.iterrows():\n",
" folium.Marker(\n",
" location=[row['start_lat'], row['start_lng']],\n",
" popup=row['start_station_name'],\n",
" icon=folium.Icon(color=\"blue\")\n",
" ).add_to(station_map_discrepancy)\n",
"\n",
"# Adding red markers for bottom 20 \n",
"for _, row in bottom_20_stations_lat_lng_unique.iterrows():\n",
" folium.Marker(\n",
" location=[row['start_lat'], row['start_lng']],\n",
" popup=row['start_station_name'],\n",
" icon=folium.Icon(color=\"red\")\n",
" ).add_to(station_map_discrepancy)\n",
"\n",
" \n",
"\n",
"HTML('Your Content
')\n",
"station_map_discrepancy"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "418efcb7",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.8.8"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": false,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": true
}
},
"nbformat": 4,
"nbformat_minor": 5
}