{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Temporal Profiles from Traffic Counters \n", "\n", "\n", "This tutorial shows you how to process some measurement data and convert them into profiles for emiproc.\n", "\n", "Observed data is usually more accurate than simulated data.\n", "However, you don't have access to observations.\n", "\n", "Here we will use traffic data from the city of Zurich to simulate the temporal \n", "traffic activity with emiproc." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Download and load the data \n", "\n", "The data is freely available from the city of zurich.\n", "\n", "The script will automatically download it, but in case you want to see more, go there:\n", "https://data.stadt-zuerich.ch/dataset/sid_dav_verkehrszaehlung_miv_od2031 \n", "\n", "We will use pandas to analyse the data" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "File already downloaded traffic_counters\\traffic_counters.csv\n" ] } ], "source": [ "from pathlib import Path\n", "import urllib.request\n", "\n", "year = 2022\n", "\n", "local_dir = Path(\"./traffic_counters\")\n", "local_dir.mkdir(exist_ok=True)\n", "local_file = local_dir / \"traffic_counters.csv\"\n", "\n", "download_link = f\"https://data.stadt-zuerich.ch/dataset/sid_dav_verkehrszaehlung_miv_od2031/download/sid_dav_verkehrszaehlung_miv_OD2031_{year}.csv\"\n", "\n", "if not local_file.is_file():\n", " urllib.request.urlretrieve(download_link, local_file)\n", "\n", " print(\"Downloaded \", local_file)\n", "else:\n", " print(\"File already downloaded \", local_file)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | MSID | \n", "EKoord | \n", "NKoord | \n", "Kname | \n", "MessungDatZeit | \n", "AnzFahrzeuge | \n", "
|---|---|---|---|---|---|---|
| 0 | \n", "Z001M001 | \n", "2683009.89 | \n", "1243936.2 | \n", "Badanstalt Wollishofen | \n", "2022-01-01 00:00:00 | \n", "166.0 | \n", "
| 1 | \n", "Z001M001 | \n", "2683009.89 | \n", "1243936.2 | \n", "Badanstalt Wollishofen | \n", "2022-01-01 01:00:00 | \n", "255.0 | \n", "
| 2 | \n", "Z001M001 | \n", "2683009.89 | \n", "1243936.2 | \n", "Badanstalt Wollishofen | \n", "2022-01-01 02:00:00 | \n", "168.0 | \n", "
| 3 | \n", "Z001M001 | \n", "2683009.89 | \n", "1243936.2 | \n", "Badanstalt Wollishofen | \n", "2022-01-01 03:00:00 | \n", "96.0 | \n", "
| 4 | \n", "Z001M001 | \n", "2683009.89 | \n", "1243936.2 | \n", "Badanstalt Wollishofen | \n", "2022-01-01 04:00:00 | \n", "63.0 | \n", "
| \n", " | Z001M001 | \n", "Z001M002 | \n", "Z002M001 | \n", "Z002M002 | \n", "Z003M001 | \n", "Z003M002 | \n", "Z004M001 | \n", "Z004M002 | \n", "Z005M001 | \n", "Z005M002 | \n", "... | \n", "Z089M002 | \n", "Z090M001 | \n", "Z090M002 | \n", "Z091M001 | \n", "Z095M001 | \n", "Z095M002 | \n", "Z096M003 | \n", "Z096M004 | \n", "Z097M001 | \n", "Z097M002 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2022-01-01 00:00:00+01:00 | \n", "166.0 | \n", "182.0 | \n", "130.0 | \n", "64.0 | \n", "65.0 | \n", "140.0 | \n", "70.0 | \n", "83.0 | \n", "46.0 | \n", "54.0 | \n", "... | \n", "55.0 | \n", "120.0 | \n", "96.0 | \n", "191.0 | \n", "72.0 | \n", "80.0 | \n", "26.0 | \n", "43.0 | \n", "229.0 | \n", "285.0 | \n", "
| 2022-01-01 01:00:00+01:00 | \n", "255.0 | \n", "188.0 | \n", "189.0 | \n", "108.0 | \n", "110.0 | \n", "188.0 | \n", "130.0 | \n", "132.0 | \n", "74.0 | \n", "89.0 | \n", "... | \n", "67.0 | \n", "168.0 | \n", "138.0 | \n", "186.0 | \n", "90.0 | \n", "116.0 | \n", "51.0 | \n", "58.0 | \n", "323.0 | \n", "317.0 | \n", "
| 2022-01-01 02:00:00+01:00 | \n", "168.0 | \n", "140.0 | \n", "122.0 | \n", "82.0 | \n", "83.0 | \n", "131.0 | \n", "105.0 | \n", "92.0 | \n", "52.0 | \n", "53.0 | \n", "... | \n", "62.0 | \n", "120.0 | \n", "109.0 | \n", "149.0 | \n", "83.0 | \n", "100.0 | \n", "35.0 | \n", "41.0 | \n", "227.0 | \n", "248.0 | \n", "
| 2022-01-01 03:00:00+01:00 | \n", "96.0 | \n", "90.0 | \n", "65.0 | \n", "40.0 | \n", "45.0 | \n", "106.0 | \n", "56.0 | \n", "57.0 | \n", "33.0 | \n", "30.0 | \n", "... | \n", "36.0 | \n", "102.0 | \n", "97.0 | \n", "103.0 | \n", "59.0 | \n", "60.0 | \n", "12.0 | \n", "24.0 | \n", "179.0 | \n", "210.0 | \n", "
| 2022-01-01 04:00:00+01:00 | \n", "63.0 | \n", "80.0 | \n", "26.0 | \n", "33.0 | \n", "30.0 | \n", "68.0 | \n", "51.0 | \n", "60.0 | \n", "21.0 | \n", "13.0 | \n", "... | \n", "45.0 | \n", "76.0 | \n", "71.0 | \n", "101.0 | \n", "50.0 | \n", "55.0 | \n", "9.0 | \n", "14.0 | \n", "149.0 | \n", "204.0 | \n", "
5 rows × 155 columns
\n", "