{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Point Sampling\n", "\n", "MATSim requires point locations for all activities and trips. More generally it can be useful to assign geometries to activity location and/or trip origin and destinations. This notebook shows how to sample geometric locations from ozone/dzone regions using a simple random point sampler.\n", "\n", "More advanced samplers are available in `pam.samplers.spatial`.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2020-04-15T14:22:45.434401Z", "start_time": "2020-04-15T14:22:43.811833Z" }, "execution": { "iopub.execute_input": "2024-04-05T15:21:45.178899Z", "iopub.status.busy": "2024-04-05T15:21:45.178727Z", "iopub.status.idle": "2024-04-05T15:21:46.152931Z", "shell.execute_reply": "2024-04-05T15:21:46.152324Z" } }, "outputs": [], "source": [ "import os\n", "\n", "import geopandas as gp\n", "import pandas as pd\n", "from matplotlib import pyplot as plt\n", "from pam import read\n", "from pam.samplers.spatial import RandomPointSampler" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2020-04-15T14:23:03.601994Z", "start_time": "2020-04-15T14:23:03.510974Z" }, "execution": { "iopub.execute_input": "2024-04-05T15:21:46.156525Z", "iopub.status.busy": "2024-04-05T15:21:46.156227Z", "iopub.status.idle": "2024-04-05T15:21:46.174075Z", "shell.execute_reply": "2024-04-05T15:21:46.172716Z" } }, "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", "
pidhidseqhzoneozonedzonepurpmodetsttetfreq
uid
0census_0census_00HarrowHarrowCamdenworkpt4444731000
1census_0census_01HarrowCamdenHarrowworkpt8909191000
2census_1census_10GreenwichGreenwichTower Hamletsworkpt5075281000
3census_1census_11GreenwichTower HamletsGreenwichworkpt106510861000
4census_2census_20CroydonCroydonCroydonworkpt4224251000
5census_2census_21CroydonCroydonCroydonworkpt9179201000
6census_3census_30HaringeyHaringeyRedbridgeworkpt4284471000
7census_3census_31HaringeyRedbridgeHaringeyworkpt100710261000
8census_4census_40HounslowHounslowWestminster,City of Londonworkcar4835161000
9census_4census_41HounslowWestminster,City of LondonHounslowworkcar101710501000
\n", "
" ], "text/plain": [ " pid hid seq hzone ozone \\\n", "uid \n", "0 census_0 census_0 0 Harrow Harrow \n", "1 census_0 census_0 1 Harrow Camden \n", "2 census_1 census_1 0 Greenwich Greenwich \n", "3 census_1 census_1 1 Greenwich Tower Hamlets \n", "4 census_2 census_2 0 Croydon Croydon \n", "5 census_2 census_2 1 Croydon Croydon \n", "6 census_3 census_3 0 Haringey Haringey \n", "7 census_3 census_3 1 Haringey Redbridge \n", "8 census_4 census_4 0 Hounslow Hounslow \n", "9 census_4 census_4 1 Hounslow Westminster,City of London \n", "\n", " dzone purp mode tst tet freq \n", "uid \n", "0 Camden work pt 444 473 1000 \n", "1 Harrow work pt 890 919 1000 \n", "2 Tower Hamlets work pt 507 528 1000 \n", "3 Greenwich work pt 1065 1086 1000 \n", "4 Croydon work pt 422 425 1000 \n", "5 Croydon work pt 917 920 1000 \n", "6 Redbridge work pt 428 447 1000 \n", "7 Haringey work pt 1007 1026 1000 \n", "8 Westminster,City of London work car 483 516 1000 \n", "9 Hounslow work car 1017 1050 1000 " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trips = pd.read_csv(\n", " os.path.join(\"data\", \"example_data\", \"example_travel_diaries.csv\"), index_col=\"uid\"\n", ")\n", "attributes = pd.read_csv(\n", " os.path.join(\"data\", \"example_data\", \"example_attributes.csv\"), index_col=\"pid\"\n", ")\n", "trips.head(10)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2024-04-05T15:21:46.178845Z", "iopub.status.busy": "2024-04-05T15:21:46.178465Z", "iopub.status.idle": "2024-04-05T15:21:46.233219Z", "shell.execute_reply": "2024-04-05T15:21:46.232837Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Using tour based purpose parser (recommended)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Adding pid->hh mapping to persons_attributes from trips.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Adding home locations to persons attributes using trips attributes.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Using freq of 'None' for all persons.\n" ] }, { "data": { "text/plain": [ "{'num_households': 51,\n", " 'num_people': 51,\n", " 'num_activities': 152,\n", " 'num_legs': 101}" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "population = read.load_travel_diary(trips, attributes)\n", "population.stats" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Sample Geometries\n", "Transform trip ozone/dzone to geographically sampled points" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2024-04-05T15:21:46.235620Z", "iopub.status.busy": "2024-04-05T15:21:46.235433Z", "iopub.status.idle": "2024-04-05T15:21:46.466120Z", "shell.execute_reply": "2024-04-05T15:21:46.465779Z" } }, "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", "
HECTARESNONLD_AREAONS_INNERSUB_2009SUB_2006geometry
NAME
Kingston upon Thames3726.1170.000FNoneNonePOLYGON ((516401.600 160201.800, 516407.300 16...
Croydon8649.4410.000FNoneNonePOLYGON ((535009.200 159504.700, 535005.500 15...
Bromley15013.4870.000FNoneNonePOLYGON ((540373.600 157530.400, 540361.200 15...
Hounslow5658.54160.755FNoneNonePOLYGON ((521975.800 178100.000, 521967.700 17...
Ealing5554.4280.000FNoneNonePOLYGON ((510253.500 182881.600, 510249.900 18...
\n", "
" ], "text/plain": [ " HECTARES NONLD_AREA ONS_INNER SUB_2009 SUB_2006 \\\n", "NAME \n", "Kingston upon Thames 3726.117 0.000 F None None \n", "Croydon 8649.441 0.000 F None None \n", "Bromley 15013.487 0.000 F None None \n", "Hounslow 5658.541 60.755 F None None \n", "Ealing 5554.428 0.000 F None None \n", "\n", " geometry \n", "NAME \n", "Kingston upon Thames POLYGON ((516401.600 160201.800, 516407.300 16... \n", "Croydon POLYGON ((535009.200 159504.700, 535005.500 15... \n", "Bromley POLYGON ((540373.600 157530.400, 540361.200 15... \n", "Hounslow POLYGON ((521975.800 178100.000, 521967.700 17... \n", "Ealing POLYGON ((510253.500 182881.600, 510249.900 18... " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "zones = gp.read_file(os.path.join(\"data\", \"example_data\", \"geometry.geojson\")).set_index(\"NAME\")\n", "zones.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2024-04-05T15:21:46.468240Z", "iopub.status.busy": "2024-04-05T15:21:46.468064Z", "iopub.status.idle": "2024-04-05T15:21:46.470872Z", "shell.execute_reply": "2024-04-05T15:21:46.470450Z" } }, "outputs": [], "source": [ "random_sampler = RandomPointSampler(geoms=zones)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2024-04-05T15:21:46.473572Z", "iopub.status.busy": "2024-04-05T15:21:46.473388Z", "iopub.status.idle": "2024-04-05T15:21:46.599955Z", "shell.execute_reply": "2024-04-05T15:21:46.599561Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# test\n", "fig, ax = plt.subplots(1)\n", "zones.plot(ax=ax, color=\"grey\")\n", "zones.loc[[\"Camden\"]].plot(ax=ax)\n", "point = random_sampler.sample(\"Camden\", activity=None)\n", "ax.scatter(point.x, point.y, c=\"red\")" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2024-04-05T15:21:46.602753Z", "iopub.status.busy": "2024-04-05T15:21:46.602537Z", "iopub.status.idle": "2024-04-05T15:21:46.635633Z", "shell.execute_reply": "2024-04-05T15:21:46.635150Z" } }, "outputs": [], "source": [ "population.sample_locs(random_sampler) # apply to whole population" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "ExecuteTime": { "end_time": "2020-04-09T14:32:22.432201Z", "start_time": "2020-04-09T14:32:15.568791Z" } }, "source": [ "Let's check out an example Activity Plan and Attributes:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2020-04-15T14:23:58.041512Z", "start_time": "2020-04-15T14:23:58.002047Z" }, "execution": { "iopub.execute_input": "2024-04-05T15:21:46.638255Z", "iopub.status.busy": "2024-04-05T15:21:46.638028Z", "iopub.status.idle": "2024-04-05T15:21:46.762201Z", "shell.execute_reply": "2024-04-05T15:21:46.761590Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Person: census_0\n", "{'gender': 'female', 'job': 'work', 'occ': 'white', 'inc': 'low', 'hzone': 'Harrow'}\n", "0:\tActivity(act:home, location:POINT (516104.2142596701 187104.23657894367), time:00:00:00 --> 07:24:00, duration:7:24:00)\n", "1:\tLeg(mode:pt, area:POINT (516104.2142596701 187104.23657894367) --> POINT (528574.2978802138 186510.35985765653), time:07:24:00 --> 07:53:00, duration:0:29:00)\n", "2:\tActivity(act:work, location:POINT (528574.2978802138 186510.35985765653), time:07:53:00 --> 14:50:00, duration:6:57:00)\n", "3:\tLeg(mode:pt, area:POINT (528574.2978802138 186510.35985765653) --> POINT (516104.2142596701 187104.23657894367), time:14:50:00 --> 15:19:00, duration:0:29:00)\n", "4:\tActivity(act:home, location:POINT (516104.2142596701 187104.23657894367), time:15:19:00 --> 00:00:00, duration:8:41:00)\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABjUAAADTCAYAAADJTpGsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA3b0lEQVR4nO3deVxVdf7H8feVRRAURURAA1xxB5HKNXJfcsuN3JJsnWxcSsc0TSdLTdPKHC3NzLImW8zUCpcRKH+WO0qKqCOG5hbuKyqc3x+Od7qDCSrc44HX8/Hg8YBzl/P+fjjc++V87jnHZhiGIQAAAAAAAAAAgLtcMbMDAAAAAAAAAAAA5AVNDQAAAAAAAAAAYAk0NQAAAAAAAAAAgCXQ1AAAAAAAAAAAAJZAUwMAAAAAAAAAAFgCTQ0AAAAAAAAAAGAJNDUAAAAAAAAAAIAl0NQAAAAAAAAAAACWQFMDAAAAAAAAAABYAk0NAAAAAAAAAABgCTQ1AAAAgDsUGxsrm80mm80mNzc3Va5cWcOHD9f58+fNjnbLYmNj1bVrV4ef/zi28uXLq3Xr1vrggw+UnZ1tXtC70MmTJ9W/f3/5+PjIx8dH/fv316lTp8yOBQAAABQqNDUAAACAfNCuXTsdPnxY+/bt06uvvqpZs2Zp+PDht/VchmHo6tWr+Zzw9l0f2/79+/X999+refPmGjJkiDp27HhX5TRbnz59lJSUpLi4OMXFxSkpKUn9+/c3OxYAAABQqNDUAAAAAPJB8eLFFRAQoHvuuUd9+vRR3759tWTJEknXmhRTpkxR5cqV5enpqfDwcH355Zf2xyYkJMhms2nFihWKiopS8eLF9eOPP2rbtm1q3ry5SpYsqVKlSqlBgwbatGmT/XFfffWVateureLFiys0NFTTpk1zyBQaGqqJEydq4MCBKlmypIKDgzVnzpzbHluFChUUGRmp0aNH65tvvtH333+vDz/88Jae69SpU3rqqadUvnx5eXh4qE6dOlq+fLn99nXr1umBBx6Qp6en7rnnHg0ePNjhiJfcxnT58mU999xzCgwMlIeHh0JDQzVp0iRJ0v79+2Wz2ZSUlOSQx2azKSEhQdK1oy369u2rcuXKydPTU9WqVdP8+fNzHVdKSori4uL0/vvvq1GjRmrUqJHmzp2r5cuXKzU19ZZqBAAAAODP0dQAAAAACoCnp6euXLkiSRozZozmz5+v2bNna8eOHRo2bJj69eunxMREh8f87W9/06RJk5SSkqJ69eqpb9++qlixojZu3KjNmzfrxRdflJubmyRp8+bN6tWrlx555BElJydr/PjxGjt2bI4mw7Rp0xQVFaWtW7fq2Wef1V/+8hft2rXrjsfXokULhYeHa/HixfZlsbGxevDBB//0MdnZ2Wrfvr3WrVunhQsXaufOnZo8ebJcXFwkScnJyWrbtq26deum7du3a9GiRVq7dq2ee+65PI9pxowZWrp0qT7//HOlpqZq4cKFCg0NzfO4xo4dq507d+r7779XSkqKZs+eLT8/v1wf99NPP8nHx0f333+/fVnDhg3l4+OjdevW5Xn9AAAAAG7O1ewAAAAAQGGzYcMGffrpp2rZsqXOnz+v6dOna82aNWrUqJEkqXLlylq7dq3ee+89RUdH2x/3yiuvqHXr1vaf09PTNWLECNWoUUOSVK1aNftt06dPV8uWLTV27FhJUvXq1bVz505NnTpVsbGx9vt16NBBzz77rCRp5MiRevPNN5WQkGB/zjtRo0YNbd++3f5zYGDgTa+zsXr1am3YsEEpKSmqXr26pGu1uG7q1Knq06ePhg4dah/vjBkzFB0drdmzZ8vDwyPXMaWnp6tatWpq2rSpbDabQkJCbmlM6enpql+/vqKioiQpzw2RI0eOyN/fP8dyf39/HTly5JYyAAAAAPhzNDUAAACAfLB8+XJ5e3vr6tWrunLlirp06aJ33nlHO3fu1KVLlxyaFdK10yTVr1/fYdn1HenXPf/883riiSf08ccfq1WrVurZs6eqVKki6drpjrp06eJw/yZNmuitt95SVlaW/eiHevXq2W+32WwKCAjQsWPH8mXMhmHIZrPZf75+mqc/k5SUpIoVK9obGv9r8+bN2rt3rz755BOHdWRnZystLU01a9aUdPMxxcbGqnXr1goLC1O7du3UsWNHtWnTJs9j+stf/qLu3btry5YtatOmjbp27arGjRvn6bF/rMUf899oOQAAAIDbw+mnAAAAgHzQvHlzJSUlKTU1VZcuXdLixYvl7+9vP3Lh22+/VVJSkv1r586dDtfVkCQvLy+Hn8ePH68dO3booYce0po1a1SrVi19/fXXkm68s9wwjBy5rp+u6jqbzXbToyluRUpKiipVqpTn+3t6et709uzsbD399NMOddq2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GujHH3/M71x3rR9++EGdOnVSUFCQbDablixZYnYkp5s0aZLuvfdelSxZUv7+/uratatSU1PNjuVUs2fPVr169VSqVCmVKlVKjRo10vfff292LNNMmjRJNptNQ4cONTuK04wfP142m83hKyAgwOxYTvfbb7+pX79+Klu2rEqUKKGIiAht3rzZ7FhOExoammM7sNlsGjRokNnRnObq1asaM2aMKlWqJE9PT1WuXFmvvPKKsrOzzY7mVGfPntXQoUMVEhIiT09PNW7cWBs3bjQ7VoHJbT5kGIbGjx+voKAgeXp66sEHH9SOHTvMCVtAcqvB4sWL1bZtW/n5+clmsykpKcmUnAXlZuO/cuWKRo4cqbp168rLy0tBQUF69NFHdejQIfMCF4DctoHx48erRo0a8vLyUpkyZdSqVSutX7/enLAF5Fb+N3r66adls9n01ltvOS2fM+RWg9jY2BzzhIYNG5oTtoDkZTtISUlR586d5ePjo5IlS6phw4ZKT093ftgCklsNbjRftNlsmjp1qjmBC0BuNTh37pyee+45VaxYUZ6enqpZs6Zmz55tTtgCklsNjh49qtjYWAUFBalEiRJq166d9uzZY07YApCXfUWFfY6YlxoU9jlibjUo7PPEvGwDhX2OeKv7jW93jnjLTY1FixZp6NCheumll7R161Y1a9ZM7du3L1QTkps5f/68wsPDNXPmTLOjmCYxMVGDBg3Szz//rFWrVunq1atq06aNzp8/b3Y0p6lYsaImT56sTZs2adOmTWrRooW6dOlSqN6M82rjxo2aM2eO6tWrZ3YUp6tdu7YOHz5s/0pOTjY7klOdPHlSTZo0kZubm77//nvt3LlT06ZNU+nSpc2O5jQbN2502AZWrVolSerZs6fJyZzn9ddf17vvvquZM2cqJSVFU6ZM0dSpU/XOO++YHc2pnnjiCa1atUoff/yxkpOT1aZNG7Vq1Uq//fab2dEKRG7zoSlTpmj69OmaOXOmNm7cqICAALVu3Vpnz551ctKCk1sNzp8/ryZNmmjy5MlOTuYcNxv/hQsXtGXLFo0dO1ZbtmzR4sWLtXv3bnXu3NmEpAUnt22gevXqmjlzppKTk7V27VqFhoaqTZs2+v33352ctODk9X+jJUuWaP369QoKCnJSMufJSw3atWvnMF/47rvvnJiw4OVWg3//+99q2rSpatSooYSE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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "person = population[\"census_0\"][\"census_0\"]\n", "person.print()\n", "person.plot()" ] } ], "metadata": { "kernelspec": { "display_name": "pam", "language": "python", "name": "pam" }, "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.10.13" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": true, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": { "height": "calc(100% - 180px)", "left": "10px", "top": "150px", "width": "248.333px" }, "toc_section_display": true, "toc_window_display": false }, "vscode": { "interpreter": { "hash": "c2a90f01ee7329c0dc072323d04ab57047490a620cb7d1fe86527d3a3edaf28c" } } }, "nbformat": 4, "nbformat_minor": 2 }