diff --git a/Disertationmainfile3.ipynb b/Disertationmainfile3.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..182aaec63d3dfe73e8c4929ec404901d369b7cd7 --- /dev/null +++ b/Disertationmainfile3.ipynb @@ -0,0 +1,11104 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark import SparkConf\n", + "from pyspark import SparkContext\n", + "from pyspark.sql import SparkSession\n", + "from pyspark.sql.functions import udf\n", + "from pyspark.sql.types import IntegerType\n", + "from pyspark.sql.types import LongType\n", + "from pyspark.sql.types import FloatType\n", + "from pyspark.rdd import RDD\n", + "from pyspark.sql.types import StringType\n", + "from pyspark.sql.functions import col\n", + "import pyspark.sql.functions as F\n", + "import csv\n", + "from datetime import datetime\n", + "from functools import reduce\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "# local[*]: run Spark in local-mode(parallel computing) with as many working processors as logical cores on your machine\n", + "# If we want Spark to run locally with 'k' worker threads, we can specify as \"local[k]\".\n", + "master = \"local[*]\"\n", + "# The `appName` field is a name to be shown on the Spark cluster UI page\n", + "app_name = \"Big data Analysis of Road Crash Data\"\n", + "# Setup configuration parameters for Spark\n", + "spark_conf = SparkConf().setMaster(master).setAppName(app_name)\n", + "# creating a SparkContext object \n", + "spark = SparkSession.builder.config(conf=spark_conf).getOrCreate()\n", + "sc = spark.sparkContext\n", + "sc.setLogLevel('ERROR')" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "Accident_Information_df = spark.read.format('csv')\\\n", + " .option('header',True).option('escape','\"')\\\n", + " .load('/Users/Asfandyar/Downloads/dft-road-casualty-statistics-accident-1979-2020.csv')\n", + "# changing the type of column(\"Year'\") to interger type\n", + "#Accident_Information_df = Accident_Information_df.withColumn('Year',F.col('Year').cast(IntegerType()))\n", + "#Accident_Information_df=Accident_Information_df.filter(Accident_Information_df.Year<2017)\n", + "#Accident_Information_df.sort(\"Year\").show(truncate=False)\n", + "A2018 = Accident_Information_df\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|04/01/2005| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|05/01/2005| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|06/01/2005| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|07/01/2005| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|10/01/2005| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|11/01/2005| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|13/01/2005| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|14/01/2005| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|15/01/2005| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|15/01/2005| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|16/01/2005| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|25/01/2005| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|11/01/2005| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|18/01/2005| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|18/01/2005| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|18/01/2005| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|20/01/2005| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|21/01/2005| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|21/01/2005| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|08/01/2005| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "#A2018 = Accident_Information_df\n", + "\n", + "\n", + "A2005=A2018.filter(A2018.accident_year>2004)\n", + "A20052020=A2005.filter(A2005.accident_year<2020)\n", + "A20052020.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "A2018=A20052020" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark.sql.functions import col, when\n", + "valueWhenTrue1 =\"M\"\n", + "valueWhenTrue2 =\"A\"\n", + "valueWhenTrue3 = \"A\"\n", + "valueWhenTrue4 = \"B\"\n", + "valueWhenTrue5 = \"C\"\n", + "valueWhenTrue6 = \"U\"\n", + "\n", + "\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 1,\n", + " \"Motorway\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 2,\n", + " \"A\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 3,\n", + " \"A\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 4,\n", + " \"B,C & U\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 5,\n", + " \"B,C & U\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "A2018=A2018.withColumn(\n", + " \"first_road_class\",\n", + " when(\n", + " col(\"first_road_class\") == 6,\n", + " \"B,C & U\"\n", + " ).otherwise(col(\"first_road_class\")),\n", + ")\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|04/01/2005| 3|17:42| 12| E09000020| E09000020| A| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|05/01/2005| 4|17:36| 12| E09000020| E09000020| B,C & U| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|06/01/2005| 5|00:15| 12| E09000020| E09000020| B,C & U| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|07/01/2005| 6|10:35| 12| E09000020| E09000020| A| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|10/01/2005| 2|21:13| 12| E09000020| E09000020| B,C & U| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|11/01/2005| 3|12:40| 12| E09000020| E09000020| B,C & U| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|13/01/2005| 5|20:40| 12| E09000020| E09000020| B,C & U| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|14/01/2005| 6|17:35| 12| E09000020| E09000020| A| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|15/01/2005| 7|22:43| 12| E09000020| E09000020| A| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|15/01/2005| 7|16:00| 12| E09000020| E09000020| B,C & U| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|16/01/2005| 1|00:42| 12| E09000020| E09000020| A| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|25/01/2005| 3|20:48| 12| E09000020| E09000020| A| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|11/01/2005| 3|12:55| 12| E09000020| E09000020| B,C & U| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|18/01/2005| 3|05:01| 12| E09000020| E09000020| A| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|18/01/2005| 3|11:15| 12| E09000020| E09000020| A| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|18/01/2005| 3|10:50| 12| E09000020| E09000020| A| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|20/01/2005| 5|00:15| 12| E09000020| E09000020| B,C & U| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|21/01/2005| 6|09:15| 12| E09000020| E09000020| A| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|21/01/2005| 6|21:16| 12| E09000020| E09000020| B,C & U| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|08/01/2005| 7|03:00| 12| E09000020| E09000020| A| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "A2018.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+----------------+-------------+---------------+\n", + "|first_road_class|accident_year|Total accidents|\n", + "+----------------+-------------+---------------+\n", + "| Motorway| 2005| 8198|\n", + "| B,C & U| 2005| 101517|\n", + "| A| 2005| 89020|\n", + "| A| 2006| 84509|\n", + "| Motorway| 2006| 7920|\n", + "| B,C & U| 2006| 96732|\n", + "| Motorway| 2007| 7488|\n", + "| B,C & U| 2007| 92823|\n", + "| A| 2007| 81804|\n", + "| B,C & U| 2008| 86503|\n", + "| Motorway| 2008| 6822|\n", + "| A| 2008| 77266|\n", + "| Motorway| 2009| 6172|\n", + "| A| 2009| 74620|\n", + "| B,C & U| 2009| 82762|\n", + "| A| 2010| 70708|\n", + "| B,C & U| 2010| 77640|\n", + "| Motorway| 2010| 6066|\n", + "| Motorway| 2011| 5379|\n", + "| B,C & U| 2011| 75766|\n", + "+----------------+-------------+---------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "A2018t_df = A2018.groupby(\"first_road_class\",'accident_year').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "A2018t_df=A2018t_df.sort(\"accident_year\")\n", + "A2018t_df.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+---------------+\n", + "|road_name|year|Total accidents|\n", + "+---------+----+---------------+\n", + "| A|2005| 89020|\n", + "| Motorway|2005| 8198|\n", + "| B,C & U|2005| 101517|\n", + "| A|2006| 84509|\n", + "| B,C & U|2006| 96732|\n", + "| Motorway|2006| 7920|\n", + "| A|2007| 81804|\n", + "| Motorway|2007| 7488|\n", + "| B,C & U|2007| 92823|\n", + "| Motorway|2008| 6822|\n", + "| A|2008| 77266|\n", + "| B,C & U|2008| 86503|\n", + "| B,C & U|2009| 82762|\n", + "| A|2009| 74620|\n", + "| Motorway|2009| 6172|\n", + "| B,C & U|2010| 77640|\n", + "| A|2010| 70708|\n", + "| Motorway|2010| 6066|\n", + "| B,C & U|2011| 75766|\n", + "| A|2011| 70329|\n", + "+---------+----+---------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "A2018t_dftt = A2018t_df.withColumnRenamed(\"first_road_class\", \"road_name\")\\\n", + " .withColumnRenamed(\"accident_year\", \"year\")\n", + "A2018t_dftt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>89020</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>8198</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>101517</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>84509</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>96732</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>7920</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>7488</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>92823</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>81804</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>77266</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>6822</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>86503</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>82762</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>74620</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>6172</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>70708</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>6066</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>77640</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>70329</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>75766</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>5379</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>5212</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>72790</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>67569</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>4983</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>64837</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>68840</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>72864</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>68212</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>5246</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>64682</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>70226</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>5148</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>69761</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>5007</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>61853</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>4430</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>56809</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>68743</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>4225</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>53840</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>64570</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>52662</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>61064</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>3810</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Total accidents\n", + "0 A 2005 89020\n", + "1 Motorway 2005 8198\n", + "2 B,C & U 2005 101517\n", + "3 A 2006 84509\n", + "4 B,C & U 2006 96732\n", + "5 Motorway 2006 7920\n", + "6 Motorway 2007 7488\n", + "7 B,C & U 2007 92823\n", + "8 A 2007 81804\n", + "9 A 2008 77266\n", + "10 Motorway 2008 6822\n", + "11 B,C & U 2008 86503\n", + "12 B,C & U 2009 82762\n", + "13 A 2009 74620\n", + "14 Motorway 2009 6172\n", + "15 A 2010 70708\n", + "16 Motorway 2010 6066\n", + "17 B,C & U 2010 77640\n", + "18 A 2011 70329\n", + "19 B,C & U 2011 75766\n", + "20 Motorway 2011 5379\n", + "21 Motorway 2012 5212\n", + "22 B,C & U 2012 72790\n", + "23 A 2012 67569\n", + "24 Motorway 2013 4983\n", + "25 A 2013 64837\n", + "26 B,C & U 2013 68840\n", + "27 B,C & U 2014 72864\n", + "28 A 2014 68212\n", + "29 Motorway 2014 5246\n", + "30 A 2015 64682\n", + "31 B,C & U 2015 70226\n", + "32 Motorway 2015 5148\n", + "33 B,C & U 2016 69761\n", + "34 Motorway 2016 5007\n", + "35 A 2016 61853\n", + "36 Motorway 2017 4430\n", + "37 A 2017 56809\n", + "38 B,C & U 2017 68743\n", + "39 Motorway 2018 4225\n", + "40 A 2018 53840\n", + "41 B,C & U 2018 64570\n", + "42 A 2019 52662\n", + "43 B,C & U 2019 61064\n", + "44 Motorway 2019 3810" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "A2018t_dftt_df=A2018t_dftt.toPandas()\n", + "A2018t_dftt_df" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "362550" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolume.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3310056" + ] + }, + "execution_count": 72, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolume.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+--------------+\n", + "|road_name|year|Trafficvolume |\n", + "+---------+----+--------------+\n", + "|B,C & U |2005|106900000000.0|\n", + "|A |2005|138600000000.0|\n", + "|Motorway |2005|60300000000.0 |\n", + "|Motorway |2006|61800000000.0 |\n", + "|B,C & U |2006|108100000000.0|\n", + "|A |2006|140500000000.0|\n", + "|A |2007|139700000000.0|\n", + "|B,C & U |2007|111100000000.0|\n", + "|Motorway |2007|62500000000.0 |\n", + "|B,C & U |2008|109800000000.0|\n", + "|A |2008|138500000000.0|\n", + "|Motorway |2008|62200000000.0 |\n", + "|A |2009|138200000000.0|\n", + "|B,C & U |2009|107300000000.0|\n", + "|Motorway |2009|61800000000.0 |\n", + "|A |2010|136400000000.0|\n", + "|B,C & U |2010|105800000000.0|\n", + "|Motorway |2010|61000000000.0 |\n", + "|Motorway |2011|61800000000.0 |\n", + "|A |2011|137000000000.0|\n", + "+---------+----+--------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolume = spark.read.format('csv')\\\n", + " .option('header',True).option('escape','\"')\\\n", + " .load('/Users/Asfandyar/Desktop/disertation/annualtrafficcombined.csv')\n", + "# changing the type of column(\"Year'\") to interger type\n", + "Trafficvolume = Trafficvolume.withColumn('year',F.col('year').cast(IntegerType()))\n", + "Trafficvolume=Trafficvolume.filter(Trafficvolume.year>2004)\n", + "Trafficvolume=Trafficvolume.filter(Trafficvolume.year<2020)\n", + "Trafficvolume.sort(\"year\").show(truncate=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+--------------+\n", + "|road_name|year| Trafficvolume|\n", + "+---------+----+--------------+\n", + "| A|2005|138600000000.0|\n", + "| A|2006|140500000000.0|\n", + "+---------+----+--------------+\n", + "only showing top 2 rows\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolume.filter(col(\"road_name\").contains(\"A\")).show(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+--------------+\n", + "|road_name|year| Trafficvolume|\n", + "+---------+----+--------------+\n", + "| B,C & U|2005|106900000000.0|\n", + "| A|2005|138600000000.0|\n", + "| Motorway|2005| 60300000000.0|\n", + "| Motorway|2006| 61800000000.0|\n", + "| B,C & U|2006|108100000000.0|\n", + "| A|2006|140500000000.0|\n", + "| A|2007|139700000000.0|\n", + "| B,C & U|2007|111100000000.0|\n", + "| Motorway|2007| 62500000000.0|\n", + "| B,C & U|2008|109800000000.0|\n", + "| A|2008|138500000000.0|\n", + "| Motorway|2008| 62200000000.0|\n", + "| A|2009|138200000000.0|\n", + "| B,C & U|2009|107300000000.0|\n", + "| Motorway|2009| 61800000000.0|\n", + "| A|2010|136400000000.0|\n", + "| B,C & U|2010|105800000000.0|\n", + "| Motorway|2010| 61000000000.0|\n", + "| Motorway|2011| 61800000000.0|\n", + "| A|2011|137000000000.0|\n", + "+---------+----+--------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "TrafficvolumeGrouped=Trafficvolume.select(col(\"road_name\"),col(\"year\"),col(\"Trafficvolume\")).sort(\"year\")\n", + "\n", + "TrafficvolumeGrouped.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": {}, + "outputs": [ + { + "ename": "AnalysisException", + "evalue": "cannot resolve '`all_motor_vehicles`' given input columns: [Trafficvolume, road_name, year];\n'Project [regexp_extract(road_name#873, ^[A-Za-z]+(?=), 0) AS road_name#934, regexp_replace(road_name#873, ^[A-Za-z]+_, , 1) AS road_number#935, year#879, 'all_motor_vehicles]\n+- Sort [year#879 ASC NULLS FIRST], true\n +- Project [road_name#873, year#879, Trafficvolume#875]\n +- Filter (year#879 < 2020)\n +- Filter (year#879 > 2004)\n +- Project [road_name#873, cast(year#874 as int) AS year#879, Trafficvolume#875]\n +- Relation[road_name#873,year#874,Trafficvolume#875] csv\n", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAnalysisException\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-46-a3d6758cdfea>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mregexp_replace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"road_name\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"^[A-Za-z]+_\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0malias\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"road_number\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;34m\"year\"\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0;34m\"all_motor_vehicles\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m )\n", + "\u001b[0;32m/usr/local/Cellar/apache-spark/3.1.2/libexec/python/pyspark/sql/dataframe.py\u001b[0m in \u001b[0;36mselect\u001b[0;34m(self, *cols)\u001b[0m\n\u001b[1;32m 1667\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mRow\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'Alice'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mage\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m12\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mRow\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'Bob'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mage\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m15\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1668\u001b[0m \"\"\"\n\u001b[0;32m-> 1669\u001b[0;31m \u001b[0mjdf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_jdf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mselect\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_jcols\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mcols\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1670\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mDataFrame\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mjdf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msql_ctx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1671\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/py4j/java_gateway.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args)\u001b[0m\n\u001b[1;32m 1303\u001b[0m \u001b[0manswer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgateway_client\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msend_command\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcommand\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1304\u001b[0m return_value = get_return_value(\n\u001b[0;32m-> 1305\u001b[0;31m answer, self.gateway_client, self.target_id, self.name)\n\u001b[0m\u001b[1;32m 1306\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1307\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mtemp_arg\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mtemp_args\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/Cellar/apache-spark/3.1.2/libexec/python/pyspark/sql/utils.py\u001b[0m in \u001b[0;36mdeco\u001b[0;34m(*a, **kw)\u001b[0m\n\u001b[1;32m 115\u001b[0m \u001b[0;31m# Hide where the exception came from that shows a non-Pythonic\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 116\u001b[0m \u001b[0;31m# JVM exception message.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 117\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mconverted\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 118\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 119\u001b[0m \u001b[0;32mraise\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mAnalysisException\u001b[0m: cannot resolve '`all_motor_vehicles`' given input columns: [Trafficvolume, road_name, year];\n'Project [regexp_extract(road_name#873, ^[A-Za-z]+(?=), 0) AS road_name#934, regexp_replace(road_name#873, ^[A-Za-z]+_, , 1) AS road_number#935, year#879, 'all_motor_vehicles]\n+- Sort [year#879 ASC NULLS FIRST], true\n +- Project [road_name#873, year#879, Trafficvolume#875]\n +- Filter (year#879 < 2020)\n +- Filter (year#879 > 2004)\n +- Project [road_name#873, cast(year#874 as int) AS year#879, Trafficvolume#875]\n +- Relation[road_name#873,year#874,Trafficvolume#875] csv\n" + ] + } + ], + "source": [ + "import pyspark.sql.functions as f\n", + "\n", + "TrafficvolumeGroupedupdated=TrafficvolumeGrouped.select(\n", + " f.regexp_extract(\"road_name\", pattern=\"^[A-Za-z]+(?=)\", idx=0).alias('road_name'),\n", + " f.regexp_replace(\"road_name\", \"^[A-Za-z]+_\", \"\").alias(\"road_number\"),\n", + " \"year\",\n", + " \"all_motor_vehicles\"\n", + "\n", + ")\n", + "TrafficvolumeGroupedupdated.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'TrafficvolumeGroupedupdated' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-47-e36d62617a89>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mTrafficvolumeGroupedupdated\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrafficvolumeGroupedupdated\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mselect\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcol\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"road_name\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mcol\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"year\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mcol\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"all_motor_vehicles\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msort\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"year\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mTrafficvolumeGroupedupdated\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mshow\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mNameError\u001b[0m: name 'TrafficvolumeGroupedupdated' is not defined" + ] + } + ], + "source": [ + "TrafficvolumeGroupedupdated=TrafficvolumeGroupedupdated.select(col(\"road_name\"),col(\"year\"),col(\"all_motor_vehicles\")).sort(\"year\")\n", + "\n", + "TrafficvolumeGroupedupdated.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+------------------+\n", + "|road_name|year|all_motor_vehicles|\n", + "+---------+----+------------------+\n", + "| A|2005| 7.8689351E7|\n", + "| M|2005| 2.4352716E7|\n", + "| U|2005| 7369477.0|\n", + "| C|2005| 3816208.0|\n", + "| B|2005| 4709562.0|\n", + "| M|2006| 3.0686368E7|\n", + "| A|2006| 7.7760371E7|\n", + "| U|2006| 8209734.0|\n", + "| C|2006| 4186058.0|\n", + "| B|2006| 5203139.0|\n", + "| A|2007| 8.0678016E7|\n", + "| M|2007| 2.7693584E7|\n", + "| U|2007| 7824099.0|\n", + "| B|2007| 5008270.0|\n", + "| C|2007| 3995513.0|\n", + "| M|2008| 2.8008346E7|\n", + "| A|2008| 7.6143383E7|\n", + "| U|2008| 1.0834031E7|\n", + "| B|2008| 1.2802995E7|\n", + "| C|2008| 7579313.0|\n", + "+---------+----+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "TrafficvolumeGroupedupdated_U = TrafficvolumeGroupedupdated.groupby('road_name','year').agg(F.sum(TrafficvolumeGroupedupdated['all_motor_vehicles']).alias('all_motor_vehicles'))\n", + "TrafficvolumeGroupedupdated_U.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Trafficvolume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>60300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>138600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>106900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>140500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>108100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>62500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>139700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>111100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>62200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>109800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>138200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>107300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>61000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>136400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>105800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>137000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>105500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>62400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>106400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>63300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>106600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>64800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>111200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>66500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>141000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>112900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>67700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>144900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>115400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>68700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>146500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>117400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>69000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>148600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>116600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>70500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>150200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>117900000000.0</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Trafficvolume\n", + "0 Motorway 2005 60300000000.0\n", + "1 A 2005 138600000000.0\n", + "2 B,C & U 2005 106900000000.0\n", + "3 Motorway 2006 61800000000.0\n", + "4 A 2006 140500000000.0\n", + "5 B,C & U 2006 108100000000.0\n", + "6 Motorway 2007 62500000000.0\n", + "7 A 2007 139700000000.0\n", + "8 B,C & U 2007 111100000000.0\n", + "9 Motorway 2008 62200000000.0\n", + "10 A 2008 138500000000.0\n", + "11 B,C & U 2008 109800000000.0\n", + "12 Motorway 2009 61800000000.0\n", + "13 A 2009 138200000000.0\n", + "14 B,C & U 2009 107300000000.0\n", + "15 Motorway 2010 61000000000.0\n", + "16 A 2010 136400000000.0\n", + "17 B,C & U 2010 105800000000.0\n", + "18 Motorway 2011 61800000000.0\n", + "19 A 2011 137000000000.0\n", + "20 B,C & U 2011 105500000000.0\n", + "21 Motorway 2012 62400000000.0\n", + "22 A 2012 135800000000.0\n", + "23 B,C & U 2012 106400000000.0\n", + "24 Motorway 2013 63300000000.0\n", + "25 A 2013 135800000000.0\n", + "26 B,C & U 2013 106600000000.0\n", + "27 Motorway 2014 64800000000.0\n", + "28 A 2014 138500000000.0\n", + "29 B,C & U 2014 111200000000.0\n", + "30 Motorway 2015 66500000000.0\n", + "31 A 2015 141000000000.0\n", + "32 B,C & U 2015 112900000000.0\n", + "33 Motorway 2016 67700000000.0\n", + "34 A 2016 144900000000.0\n", + "35 B,C & U 2016 115400000000.0\n", + "36 Motorway 2017 68700000000.0\n", + "37 A 2017 146500000000.0\n", + "38 B,C & U 2017 117400000000.0\n", + "39 Motorway 2018 69000000000.0\n", + "40 A 2018 148600000000.0\n", + "41 B,C & U 2018 116600000000.0\n", + "42 Motorway 2019 70500000000.0\n", + "43 A 2019 150200000000.0\n", + "44 B,C & U 2019 117900000000.0" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "TrafficvolumeGroupedupdated_df=TrafficvolumeGrouped.toPandas()\n", + "TrafficvolumeGroupedupdated_df" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>year</th>\n", + " <th>M</th>\n", + " <th>A</th>\n", + " <th>B</th>\n", + " <th>C</th>\n", + " <th>U</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>2005</td>\n", + " <td>2,186</td>\n", + " <td>29,035</td>\n", + " <td>18,758</td>\n", + " <td>52,480</td>\n", + " <td>138,679</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>2006</td>\n", + " <td>2,209</td>\n", + " <td>29,040</td>\n", + " <td>18,652</td>\n", + " <td>52,487</td>\n", + " <td>142,670</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2007</td>\n", + " <td>2,212</td>\n", + " <td>29,045</td>\n", + " <td>18,806</td>\n", + " <td>52,458</td>\n", + " <td>142,847</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>2008</td>\n", + " <td>2,211</td>\n", + " <td>29,012</td>\n", + " <td>18,741</td>\n", + " <td>52,552</td>\n", + " <td>142,594</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>2009</td>\n", + " <td>2,212</td>\n", + " <td>29,061</td>\n", + " <td>18,729</td>\n", + " <td>52,700</td>\n", + " <td>142,384</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>2010</td>\n", + " <td>2,211</td>\n", + " <td>29,022</td>\n", + " <td>18,760</td>\n", + " <td>52,709</td>\n", + " <td>142,275</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>2011</td>\n", + " <td>2,218</td>\n", + " <td>29,039</td>\n", + " <td>18,770</td>\n", + " <td>52,712</td>\n", + " <td>142,265</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>2012</td>\n", + " <td>2,248</td>\n", + " <td>29,044</td>\n", + " <td>18,774</td>\n", + " <td>52,756</td>\n", + " <td>142,551</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>2013</td>\n", + " <td>2,262</td>\n", + " <td>29,049</td>\n", + " <td>18,776</td>\n", + " <td>52,819</td>\n", + " <td>143,273</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>2014</td>\n", + " <td>2,265</td>\n", + " <td>29,071</td>\n", + " <td>18,770</td>\n", + " <td>52,866</td>\n", + " <td>143,549</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>2015</td>\n", + " <td>2,270</td>\n", + " <td>29,065</td>\n", + " <td>18,819</td>\n", + " <td>52,420</td>\n", + " <td>143,305</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>2016</td>\n", + " <td>2,268</td>\n", + " <td>29,090</td>\n", + " <td>18,825</td>\n", + " <td>52,475</td>\n", + " <td>143,911</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>2017</td>\n", + " <td>2,292</td>\n", + " <td>29,140</td>\n", + " <td>18,842</td>\n", + " <td>52,379</td>\n", + " <td>143,305</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>2018</td>\n", + " <td>2,313</td>\n", + " <td>29,440</td>\n", + " <td>18,836</td>\n", + " <td>53,392</td>\n", + " <td>142,715</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>2019</td>\n", + " <td>2,320</td>\n", + " <td>29,489</td>\n", + " <td>18,842</td>\n", + " <td>53,371</td>\n", + " <td>143,965</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " year M A B C U\n", + "0 2005 2,186 29,035 18,758 52,480 138,679\n", + "1 2006 2,209 29,040 18,652 52,487 142,670\n", + "2 2007 2,212 29,045 18,806 52,458 142,847\n", + "3 2008 2,211 29,012 18,741 52,552 142,594\n", + "4 2009 2,212 29,061 18,729 52,700 142,384\n", + "5 2010 2,211 29,022 18,760 52,709 142,275\n", + "6 2011 2,218 29,039 18,770 52,712 142,265\n", + "7 2012 2,248 29,044 18,774 52,756 142,551\n", + "8 2013 2,262 29,049 18,776 52,819 143,273\n", + "9 2014 2,265 29,071 18,770 52,866 143,549\n", + "10 2015 2,270 29,065 18,819 52,420 143,305\n", + "11 2016 2,268 29,090 18,825 52,475 143,911\n", + "12 2017 2,292 29,140 18,842 52,379 143,305\n", + "13 2018 2,313 29,440 18,836 53,392 142,715\n", + "14 2019 2,320 29,489 18,842 53,371 143,965" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "df = pd.read_csv ('/Users/Asfandyar/Desktop/disertation/diseration_final/Road lengths (miles).csv')\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>year</th>\n", + " <th>road_name</th>\n", + " <th>link_length_km</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>2005</td>\n", + " <td>M</td>\n", + " <td>2,186</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>2006</td>\n", + " <td>M</td>\n", + " <td>2,209</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2007</td>\n", + " <td>M</td>\n", + " <td>2,212</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>2008</td>\n", + " <td>M</td>\n", + " <td>2,211</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>2009</td>\n", + " <td>M</td>\n", + " <td>2,212</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>70</th>\n", + " <td>2015</td>\n", + " <td>U</td>\n", + " <td>143,305</td>\n", + " </tr>\n", + " <tr>\n", + " <th>71</th>\n", + " <td>2016</td>\n", + " <td>U</td>\n", + " <td>143,911</td>\n", + " </tr>\n", + " <tr>\n", + " <th>72</th>\n", + " <td>2017</td>\n", + " <td>U</td>\n", + " <td>143,305</td>\n", + " </tr>\n", + " <tr>\n", + " <th>73</th>\n", + " <td>2018</td>\n", + " <td>U</td>\n", + " <td>142,715</td>\n", + " </tr>\n", + " <tr>\n", + " <th>74</th>\n", + " <td>2019</td>\n", + " <td>U</td>\n", + " <td>143,965</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>75 rows × 3 columns</p>\n", + "</div>" + ], + "text/plain": [ + " year road_name link_length_km\n", + "0 2005 M 2,186\n", + "1 2006 M 2,209\n", + "2 2007 M 2,212\n", + "3 2008 M 2,211\n", + "4 2009 M 2,212\n", + ".. ... ... ...\n", + "70 2015 U 143,305\n", + "71 2016 U 143,911\n", + "72 2017 U 143,305\n", + "73 2018 U 142,715\n", + "74 2019 U 143,965\n", + "\n", + "[75 rows x 3 columns]" + ] + }, + "execution_count": 80, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "roadlenghth=df.melt(id_vars=[\"year\"], \n", + " var_name=\"road_name\", \n", + " value_name=\"link_length_km\")\n", + "roadlenghth" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>all_motor_vehicles</th>\n", + " <th>link_length_km</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>78689351.0</td>\n", + " <td>29,035</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>M</td>\n", + " <td>2005</td>\n", + " <td>24352716.0</td>\n", + " <td>2,186</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>U</td>\n", + " <td>2005</td>\n", + " <td>7369477.0</td>\n", + " <td>138,679</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>C</td>\n", + " <td>2005</td>\n", + " <td>3816208.0</td>\n", + " <td>52,480</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B</td>\n", + " <td>2005</td>\n", + " <td>4709562.0</td>\n", + " <td>18,758</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>70</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>64275975.0</td>\n", + " <td>29,489</td>\n", + " </tr>\n", + " <tr>\n", + " <th>71</th>\n", + " <td>M</td>\n", + " <td>2019</td>\n", + " <td>25629481.0</td>\n", + " <td>2,320</td>\n", + " </tr>\n", + " <tr>\n", + " <th>72</th>\n", + " <td>C</td>\n", + " <td>2019</td>\n", + " <td>6641590.0</td>\n", + " <td>53,371</td>\n", + " </tr>\n", + " <tr>\n", + " <th>73</th>\n", + " <td>U</td>\n", + " <td>2019</td>\n", + " <td>7504917.0</td>\n", + " <td>143,965</td>\n", + " </tr>\n", + " <tr>\n", + " <th>74</th>\n", + " <td>B</td>\n", + " <td>2019</td>\n", + " <td>10353469.0</td>\n", + " <td>18,842</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>75 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " road_name year all_motor_vehicles link_length_km\n", + "0 A 2005 78689351.0 29,035\n", + "1 M 2005 24352716.0 2,186\n", + "2 U 2005 7369477.0 138,679\n", + "3 C 2005 3816208.0 52,480\n", + "4 B 2005 4709562.0 18,758\n", + ".. ... ... ... ...\n", + "70 A 2019 64275975.0 29,489\n", + "71 M 2019 25629481.0 2,320\n", + "72 C 2019 6641590.0 53,371\n", + "73 U 2019 7504917.0 143,965\n", + "74 B 2019 10353469.0 18,842\n", + "\n", + "[75 rows x 4 columns]" + ] + }, + "execution_count": 81, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result22=pd.merge(TrafficvolumeGroupedupdated_df, roadlenghth, on=['year','road_name'])\n", + "result22" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.float64" + ] + }, + "execution_count": 82, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result22[\"link_length_km\"]=result22[\"link_length_km\"].str.replace(',','')\n", + "result22[\"link_length_km\"] = result22[\"link_length_km\"].astype(float)\n", + "type(result22[\"all_motor_vehicles\"][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>all_motor_vehicles</th>\n", + " <th>link_length_km</th>\n", + " <th>Trafficvolume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>78689351.0</td>\n", + " <td>29035.0</td>\n", + " <td>2.284745e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>M</td>\n", + " <td>2005</td>\n", + " <td>24352716.0</td>\n", + " <td>2186.0</td>\n", + " <td>5.323504e+10</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>U</td>\n", + " <td>2005</td>\n", + " <td>7369477.0</td>\n", + " <td>138679.0</td>\n", + " <td>1.021992e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>C</td>\n", + " <td>2005</td>\n", + " <td>3816208.0</td>\n", + " <td>52480.0</td>\n", + " <td>2.002746e+11</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B</td>\n", + " <td>2005</td>\n", + " <td>4709562.0</td>\n", + " <td>18758.0</td>\n", + " <td>8.834196e+10</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>70</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>64275975.0</td>\n", + " <td>29489.0</td>\n", + " <td>1.895434e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>71</th>\n", + " <td>M</td>\n", + " <td>2019</td>\n", + " <td>25629481.0</td>\n", + " <td>2320.0</td>\n", + " <td>5.946040e+10</td>\n", + " </tr>\n", + " <tr>\n", + " <th>72</th>\n", + " <td>C</td>\n", + " <td>2019</td>\n", + " <td>6641590.0</td>\n", + " <td>53371.0</td>\n", + " <td>3.544683e+11</td>\n", + " </tr>\n", + " <tr>\n", + " <th>73</th>\n", + " <td>U</td>\n", + " <td>2019</td>\n", + " <td>7504917.0</td>\n", + " <td>143965.0</td>\n", + " <td>1.080445e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>74</th>\n", + " <td>B</td>\n", + " <td>2019</td>\n", + " <td>10353469.0</td>\n", + " <td>18842.0</td>\n", + " <td>1.950801e+11</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>75 rows × 5 columns</p>\n", + "</div>" + ], + "text/plain": [ + " road_name year all_motor_vehicles link_length_km Trafficvolume\n", + "0 A 2005 78689351.0 29035.0 2.284745e+12\n", + "1 M 2005 24352716.0 2186.0 5.323504e+10\n", + "2 U 2005 7369477.0 138679.0 1.021992e+12\n", + "3 C 2005 3816208.0 52480.0 2.002746e+11\n", + "4 B 2005 4709562.0 18758.0 8.834196e+10\n", + ".. ... ... ... ... ...\n", + "70 A 2019 64275975.0 29489.0 1.895434e+12\n", + "71 M 2019 25629481.0 2320.0 5.946040e+10\n", + "72 C 2019 6641590.0 53371.0 3.544683e+11\n", + "73 U 2019 7504917.0 143965.0 1.080445e+12\n", + "74 B 2019 10353469.0 18842.0 1.950801e+11\n", + "\n", + "[75 rows x 5 columns]" + ] + }, + "execution_count": 83, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "result22[\"Trafficvolume\"] = result22[\"all_motor_vehicles\"] * result22[\"link_length_km\"]\n", + "result22" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Trafficvolume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>60300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>138600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>106900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>140500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>108100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>62500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>139700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>111100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>62200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>109800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>138200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>107300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>61000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>136400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>105800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>137000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>105500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>62400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>106400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>63300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>106600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>64800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>111200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>66500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>141000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>112900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>67700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>144900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>115400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>68700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>146500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>117400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>69000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>148600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>116600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>70500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>150200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>117900000000.0</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Trafficvolume\n", + "0 Motorway 2005 60300000000.0\n", + "1 A 2005 138600000000.0\n", + "2 B,C & U 2005 106900000000.0\n", + "3 Motorway 2006 61800000000.0\n", + "4 A 2006 140500000000.0\n", + "5 B,C & U 2006 108100000000.0\n", + "6 Motorway 2007 62500000000.0\n", + "7 A 2007 139700000000.0\n", + "8 B,C & U 2007 111100000000.0\n", + "9 Motorway 2008 62200000000.0\n", + "10 A 2008 138500000000.0\n", + "11 B,C & U 2008 109800000000.0\n", + "12 Motorway 2009 61800000000.0\n", + "13 A 2009 138200000000.0\n", + "14 B,C & U 2009 107300000000.0\n", + "15 Motorway 2010 61000000000.0\n", + "16 A 2010 136400000000.0\n", + "17 B,C & U 2010 105800000000.0\n", + "18 Motorway 2011 61800000000.0\n", + "19 A 2011 137000000000.0\n", + "20 B,C & U 2011 105500000000.0\n", + "21 Motorway 2012 62400000000.0\n", + "22 A 2012 135800000000.0\n", + "23 B,C & U 2012 106400000000.0\n", + "24 Motorway 2013 63300000000.0\n", + "25 A 2013 135800000000.0\n", + "26 B,C & U 2013 106600000000.0\n", + "27 Motorway 2014 64800000000.0\n", + "28 A 2014 138500000000.0\n", + "29 B,C & U 2014 111200000000.0\n", + "30 Motorway 2015 66500000000.0\n", + "31 A 2015 141000000000.0\n", + "32 B,C & U 2015 112900000000.0\n", + "33 Motorway 2016 67700000000.0\n", + "34 A 2016 144900000000.0\n", + "35 B,C & U 2016 115400000000.0\n", + "36 Motorway 2017 68700000000.0\n", + "37 A 2017 146500000000.0\n", + "38 B,C & U 2017 117400000000.0\n", + "39 Motorway 2018 69000000000.0\n", + "40 A 2018 148600000000.0\n", + "41 B,C & U 2018 116600000000.0\n", + "42 Motorway 2019 70500000000.0\n", + "43 A 2019 150200000000.0\n", + "44 B,C & U 2019 117900000000.0" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result22=TrafficvolumeGroupedupdated_df\n", + "result22" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "\"['all_motor_vehicles' 'link_length_km'] not found in axis\"", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-51-4d1b0de1ae13>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mresult22\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mresult22\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'all_motor_vehicles'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'link_length_km'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mresult22\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/frame.py\u001b[0m in \u001b[0;36mdrop\u001b[0;34m(self, labels, axis, index, columns, level, inplace, errors)\u001b[0m\n\u001b[1;32m 4172\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlevel\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4173\u001b[0m \u001b[0minplace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minplace\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 4174\u001b[0;31m \u001b[0merrors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0merrors\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 4175\u001b[0m )\n\u001b[1;32m 4176\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36mdrop\u001b[0;34m(self, labels, axis, index, columns, level, inplace, errors)\u001b[0m\n\u001b[1;32m 3887\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabels\u001b[0m \u001b[0;32min\u001b[0m \u001b[0maxes\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitems\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3888\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mlabels\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 3889\u001b[0;31m \u001b[0mobj\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mobj\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_drop_axis\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlabels\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlevel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merrors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0merrors\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3890\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3891\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0minplace\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m_drop_axis\u001b[0;34m(self, labels, axis, level, errors)\u001b[0m\n\u001b[1;32m 3921\u001b[0m \u001b[0mnew_axis\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlabels\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlevel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merrors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0merrors\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3922\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 3923\u001b[0;31m \u001b[0mnew_axis\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlabels\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merrors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0merrors\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3924\u001b[0m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0;34m{\u001b[0m\u001b[0maxis_name\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mnew_axis\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3925\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mdrop\u001b[0;34m(self, labels, errors)\u001b[0m\n\u001b[1;32m 5285\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mmask\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0many\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5286\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0merrors\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0;34m\"ignore\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 5287\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34mf\"{labels[mask]} not found in axis\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5288\u001b[0m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mindexer\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m~\u001b[0m\u001b[0mmask\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5289\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdelete\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindexer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: \"['all_motor_vehicles' 'link_length_km'] not found in axis\"" + ] + } + ], + "source": [ + "result22=result22.drop(['all_motor_vehicles', 'link_length_km'], axis=1)\n", + "result22" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>U</td>\n", + " <td>2005</td>\n", + " <td>60026</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>89020</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B</td>\n", + " <td>2005</td>\n", + " <td>24991</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>C</td>\n", + " <td>2005</td>\n", + " <td>16500</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>M</td>\n", + " <td>2005</td>\n", + " <td>8198</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>70</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>52662</td>\n", + " </tr>\n", + " <tr>\n", + " <th>71</th>\n", + " <td>M</td>\n", + " <td>2019</td>\n", + " <td>3810</td>\n", + " </tr>\n", + " <tr>\n", + " <th>72</th>\n", + " <td>C</td>\n", + " <td>2019</td>\n", + " <td>6067</td>\n", + " </tr>\n", + " <tr>\n", + " <th>73</th>\n", + " <td>U</td>\n", + " <td>2019</td>\n", + " <td>40459</td>\n", + " </tr>\n", + " <tr>\n", + " <th>74</th>\n", + " <td>B</td>\n", + " <td>2019</td>\n", + " <td>14538</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>75 rows × 3 columns</p>\n", + "</div>" + ], + "text/plain": [ + " road_name year Total accidents\n", + "0 U 2005 60026\n", + "1 A 2005 89020\n", + "2 B 2005 24991\n", + "3 C 2005 16500\n", + "4 M 2005 8198\n", + ".. ... ... ...\n", + "70 A 2019 52662\n", + "71 M 2019 3810\n", + "72 C 2019 6067\n", + "73 U 2019 40459\n", + "74 B 2019 14538\n", + "\n", + "[75 rows x 3 columns]" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018t_dftt_df" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.float64" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23['Trafficvolume'] = result23['Trafficvolume'].astype(float)\n", + "type(result23['Trafficvolume'][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.float64" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(result23['Trafficvolume'][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Total accidents</th>\n", + " <th>Trafficvolume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>89020</td>\n", + " <td>138600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>8198</td>\n", + " <td>60300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>101517</td>\n", + " <td>106900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>84509</td>\n", + " <td>140500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>96732</td>\n", + " <td>108100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>7920</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>7488</td>\n", + " <td>62500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>92823</td>\n", + " <td>111100000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>81804</td>\n", + " <td>139700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>77266</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>6822</td>\n", + " <td>62200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>86503</td>\n", + " <td>109800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>82762</td>\n", + " <td>107300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>74620</td>\n", + " <td>138200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>6172</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>70708</td>\n", + " <td>136400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>6066</td>\n", + " <td>61000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>77640</td>\n", + " <td>105800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>70329</td>\n", + " <td>137000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>75766</td>\n", + " <td>105500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>5379</td>\n", + " <td>61800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>5212</td>\n", + " <td>62400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>72790</td>\n", + " <td>106400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>67569</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>4983</td>\n", + " <td>63300000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>64837</td>\n", + " <td>135800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>68840</td>\n", + " <td>106600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>72864</td>\n", + " <td>111200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>68212</td>\n", + " <td>138500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>5246</td>\n", + " <td>64800000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>64682</td>\n", + " <td>141000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>70226</td>\n", + " <td>112900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>5148</td>\n", + " <td>66500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>69761</td>\n", + " <td>115400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>5007</td>\n", + " <td>67700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>61853</td>\n", + " <td>144900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>4430</td>\n", + " <td>68700000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>56809</td>\n", + " <td>146500000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>68743</td>\n", + " <td>117400000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>4225</td>\n", + " <td>69000000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>53840</td>\n", + " <td>148600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>64570</td>\n", + " <td>116600000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>52662</td>\n", + " <td>150200000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>61064</td>\n", + " <td>117900000000.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>3810</td>\n", + " <td>70500000000.0</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Total accidents Trafficvolume\n", + "0 A 2005 89020 138600000000.0\n", + "1 Motorway 2005 8198 60300000000.0\n", + "2 B,C & U 2005 101517 106900000000.0\n", + "3 A 2006 84509 140500000000.0\n", + "4 B,C & U 2006 96732 108100000000.0\n", + "5 Motorway 2006 7920 61800000000.0\n", + "6 Motorway 2007 7488 62500000000.0\n", + "7 B,C & U 2007 92823 111100000000.0\n", + "8 A 2007 81804 139700000000.0\n", + "9 A 2008 77266 138500000000.0\n", + "10 Motorway 2008 6822 62200000000.0\n", + "11 B,C & U 2008 86503 109800000000.0\n", + "12 B,C & U 2009 82762 107300000000.0\n", + "13 A 2009 74620 138200000000.0\n", + "14 Motorway 2009 6172 61800000000.0\n", + "15 A 2010 70708 136400000000.0\n", + "16 Motorway 2010 6066 61000000000.0\n", + "17 B,C & U 2010 77640 105800000000.0\n", + "18 A 2011 70329 137000000000.0\n", + "19 B,C & U 2011 75766 105500000000.0\n", + "20 Motorway 2011 5379 61800000000.0\n", + "21 Motorway 2012 5212 62400000000.0\n", + "22 B,C & U 2012 72790 106400000000.0\n", + "23 A 2012 67569 135800000000.0\n", + "24 Motorway 2013 4983 63300000000.0\n", + "25 A 2013 64837 135800000000.0\n", + "26 B,C & U 2013 68840 106600000000.0\n", + "27 B,C & U 2014 72864 111200000000.0\n", + "28 A 2014 68212 138500000000.0\n", + "29 Motorway 2014 5246 64800000000.0\n", + "30 A 2015 64682 141000000000.0\n", + "31 B,C & U 2015 70226 112900000000.0\n", + "32 Motorway 2015 5148 66500000000.0\n", + "33 B,C & U 2016 69761 115400000000.0\n", + "34 Motorway 2016 5007 67700000000.0\n", + "35 A 2016 61853 144900000000.0\n", + "36 Motorway 2017 4430 68700000000.0\n", + "37 A 2017 56809 146500000000.0\n", + "38 B,C & U 2017 68743 117400000000.0\n", + "39 Motorway 2018 4225 69000000000.0\n", + "40 A 2018 53840 148600000000.0\n", + "41 B,C & U 2018 64570 116600000000.0\n", + "42 A 2019 52662 150200000000.0\n", + "43 B,C & U 2019 61064 117900000000.0\n", + "44 Motorway 2019 3810 70500000000.0" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23=pd.merge(A2018t_dftt_df, result22, on=['year','road_name'])\n", + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+--------------+\n", + "|road_name|year| Trafficvolume|\n", + "+---------+----+--------------+\n", + "| Motorway|2005| 60300000000.0|\n", + "| A|2005|138600000000.0|\n", + "| B,C & U|2005|106900000000.0|\n", + "| Motorway|2006| 61800000000.0|\n", + "| A|2006|140500000000.0|\n", + "| B,C & U|2006|108100000000.0|\n", + "| Motorway|2007| 62500000000.0|\n", + "| A|2007|139700000000.0|\n", + "| B,C & U|2007|111100000000.0|\n", + "| Motorway|2008| 62200000000.0|\n", + "| A|2008|138500000000.0|\n", + "| B,C & U|2008|109800000000.0|\n", + "| Motorway|2009| 61800000000.0|\n", + "| A|2009|138200000000.0|\n", + "| B,C & U|2009|107300000000.0|\n", + "| Motorway|2010| 61000000000.0|\n", + "| A|2010|136400000000.0|\n", + "| B,C & U|2010|105800000000.0|\n", + "| Motorway|2011| 61800000000.0|\n", + "| A|2011|137000000000.0|\n", + "+---------+----+--------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "result23_sc=spark.createDataFrame(result22) \n", + "result23_sc.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Accident Probability</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>6.422799e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>1.359536e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>9.496445e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>6.014875e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>8.948381e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>1.281553e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>1.198080e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>8.354905e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>5.855691e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>5.578773e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>1.096785e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>7.878233e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>7.713141e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>5.399421e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>9.987055e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>5.183871e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>9.944262e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>7.338374e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>5.133504e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>7.181611e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>8.703883e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>8.352564e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>6.841165e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>4.975626e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>7.872038e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>4.774448e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>6.457786e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>6.552518e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>4.925054e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>8.095679e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>4.587376e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>6.220195e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>7.741353e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>6.045147e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>7.395864e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>4.268668e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>6.448326e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>3.877747e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>5.855451e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>6.123188e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>3.623149e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>5.537736e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>3.506125e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>5.179304e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>5.404255e-08</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Accident Probability\n", + "0 A 2005 6.422799e-07\n", + "1 Motorway 2005 1.359536e-07\n", + "2 B,C & U 2005 9.496445e-07\n", + "3 A 2006 6.014875e-07\n", + "4 B,C & U 2006 8.948381e-07\n", + "5 Motorway 2006 1.281553e-07\n", + "6 Motorway 2007 1.198080e-07\n", + "7 B,C & U 2007 8.354905e-07\n", + "8 A 2007 5.855691e-07\n", + "9 A 2008 5.578773e-07\n", + "10 Motorway 2008 1.096785e-07\n", + "11 B,C & U 2008 7.878233e-07\n", + "12 B,C & U 2009 7.713141e-07\n", + "13 A 2009 5.399421e-07\n", + "14 Motorway 2009 9.987055e-08\n", + "15 A 2010 5.183871e-07\n", + "16 Motorway 2010 9.944262e-08\n", + "17 B,C & U 2010 7.338374e-07\n", + "18 A 2011 5.133504e-07\n", + "19 B,C & U 2011 7.181611e-07\n", + "20 Motorway 2011 8.703883e-08\n", + "21 Motorway 2012 8.352564e-08\n", + "22 B,C & U 2012 6.841165e-07\n", + "23 A 2012 4.975626e-07\n", + "24 Motorway 2013 7.872038e-08\n", + "25 A 2013 4.774448e-07\n", + "26 B,C & U 2013 6.457786e-07\n", + "27 B,C & U 2014 6.552518e-07\n", + "28 A 2014 4.925054e-07\n", + "29 Motorway 2014 8.095679e-08\n", + "30 A 2015 4.587376e-07\n", + "31 B,C & U 2015 6.220195e-07\n", + "32 Motorway 2015 7.741353e-08\n", + "33 B,C & U 2016 6.045147e-07\n", + "34 Motorway 2016 7.395864e-08\n", + "35 A 2016 4.268668e-07\n", + "36 Motorway 2017 6.448326e-08\n", + "37 A 2017 3.877747e-07\n", + "38 B,C & U 2017 5.855451e-07\n", + "39 Motorway 2018 6.123188e-08\n", + "40 A 2018 3.623149e-07\n", + "41 B,C & U 2018 5.537736e-07\n", + "42 A 2019 3.506125e-07\n", + "43 B,C & U 2019 5.179304e-07\n", + "44 Motorway 2019 5.404255e-08" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "result23[\"Accident Probability\"] = result23[\"Total accidents\"] / result23[\"Trafficvolume\"]\n", + "result23=result23.drop(['Total accidents', 'Trafficvolume'], axis=1)\n", + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+--------------------+\n", + "|road_name|year|Accident Probability|\n", + "+---------+----+--------------------+\n", + "| A|2005| 642.2799422799424|\n", + "| Motorway|2005| 135.9535655058043|\n", + "| B,C & U|2005| 949.6445275958839|\n", + "| A|2006| 601.4875444839857|\n", + "| B,C & U|2006| 894.8381128584645|\n", + "| Motorway|2006| 128.15533980582524|\n", + "| Motorway|2007| 119.808|\n", + "| B,C & U|2007| 835.4905490549055|\n", + "| A|2007| 585.5690765926987|\n", + "| A|2008| 557.8772563176896|\n", + "| Motorway|2008| 109.67845659163987|\n", + "| B,C & U|2008| 787.8233151183971|\n", + "| B,C & U|2009| 771.3140726933831|\n", + "| A|2009| 539.9421128798842|\n", + "| Motorway|2009| 99.8705501618123|\n", + "| A|2010| 518.3870967741935|\n", + "| Motorway|2010| 99.44262295081967|\n", + "| B,C & U|2010| 733.8374291115313|\n", + "| A|2011| 513.3503649635037|\n", + "| B,C & U|2011| 718.1611374407582|\n", + "+---------+----+--------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "#park.conf.set(\"spark.sql.execution.arrow.enabled\",\"true\")\n", + "Accidenteeachyearwrtroad=spark.createDataFrame(result23) \n", + "Accidenteeachyearwrtroad.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Accident Probability</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>642.279942</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>601.487544</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>585.569077</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>557.877256</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>539.942113</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>518.387097</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>513.350365</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>497.562592</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>477.444772</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>492.505415</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>458.737589</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>426.866805</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>387.774744</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>362.314939</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>350.612517</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Accident Probability\n", + "0 A 2005 642.279942\n", + "1 A 2006 601.487544\n", + "2 A 2007 585.569077\n", + "3 A 2008 557.877256\n", + "4 A 2009 539.942113\n", + "5 A 2010 518.387097\n", + "6 A 2011 513.350365\n", + "7 A 2012 497.562592\n", + "8 A 2013 477.444772\n", + "9 A 2014 492.505415\n", + "10 A 2015 458.737589\n", + "11 A 2016 426.866805\n", + "12 A 2017 387.774744\n", + "13 A 2018 362.314939\n", + "14 A 2019 350.612517" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A=Accidenteeachyearwrtroad.filter(Accidenteeachyearwrtroad.road_name.contains(\"A\")).toPandas()\n", + "B=Accidenteeachyearwrtroad.filter(Accidenteeachyearwrtroad.road_name.contains(\"B\")).toPandas()\n", + "C=Accidenteeachyearwrtroad.filter(Accidenteeachyearwrtroad.road_name.contains(\"C\")).toPandas()\n", + "M=Accidenteeachyearwrtroad.filter(Accidenteeachyearwrtroad.road_name.contains(\"M\")).toPandas()\n", + "U=Accidenteeachyearwrtroad.filter(Accidenteeachyearwrtroad.road_name.contains(\"U\")).toPandas()\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA5cAAAHvCAYAAADAeytgAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAABqdklEQVR4nO3df5xVVb34/9caGAaFUUBB+aWApIhe0bIUvAoaiSVSSmpFedVu1wC7Xrl+Ci7cHFKM7ldNrwkalpi/CvyRphfFlF/hKFpWZJoCioqiIj8ElFGY9f1j7xlnhvlxhjPDnDO8no/Heexz9l5r7/WeX2feZ629VogxIkmSJElSNgpaugGSJEmSpPxncilJkiRJyprJpSRJkiQpayaXkiRJkqSsmVxKkiRJkrJmcilJkiRJylrblm5APtl///1jnz59WroZkiRJktQi/vjHP66LMXat7ZjJZSP06dOHZ599tqWbIUmSJEktIoSwuq5jDouVJEmSJGXN5FKSJEmSlDWTS0mSJElS1kwuJUmSJElZM7mUJEmSJGXN5FKSJEmSlDWTS0mSJElS1kwuJUmSJElZM7mUJEmSJGWtbUs3QJIkSRKUl5ezYcMGtmzZwrZt2ygvL2/pJqkVa9OmDcXFxXTp0oWioqImOafJpSRJktTCtm/fzuuvv07btm3p0qULe++9NwUFBYQQWrppaoVijHz88ce8//77vPbaaxx00EFNkmCaXEqSJEktbP369RQVFdG9e3cTSjW7EALt2rVj//33B5Kfv+7du2d9Xu+5lCRJklrYpk2b2G+//Uwstdvts88+bN68uUnOZXIpSZIktbDt27fTrl27lm6G9kCFhYXs2LGjSc5lcilJkiTlAHst1RKa8ufO5FKSJEmSlDWTS0mSJElS1kwuJUmSJElZcykSSZIkKQ9cN306m8rKWroZGdu3qIj/mDixyc7Xp08fVq9eXW1fUVER3bp14/jjj2f8+PEMHTq0ya7XHIYNG8aiRYtYsGABw4YN26VzjBkzhrvuuguAP/3pTxxzzDFN2MLsmFzuYaZfPZ2yrQ3/Udq+oy1t22xvsFxBwQ7Ky9s0WK64uIgJE5ruj4skSdKeZlNZGZeXlLR0MzI2tZnaOmLECA488EAANmzYwHPPPcfcuXOZO3cu1157LZdeemmzXDcXbNq0ifvvv7/y9S9/+UtuuOGGFmxRdSaXe5iyrWWUUNJguZI2JZSUXN5wuZKpDB3a8PkWLWq4jCRJktSQiRMnVuv1+/jjj7nkkkuYOXMmEydO5Oyzz6ZXr14t18BmdNddd/Hhhx/Ss2dP1qxZw1133cXVV19NUVFRSzcN8J5LSZIkSXmssLCQa665huLiYj766CPmz5/f0k1qNr/85S8BmDZtGgMGDGD9+vX89re/bdlGVWFyKUmSJCmv7bXXXhx66KEAvP322zsd37p1K9OmTWPQoEF06NCBDh06cPTRR3PVVVfxwQcf1HrOe++9lwsvvJAjjjiCTp060b59e/r378/48eN5/fXX62zLunXruPjii+nVqxdFRUX069ePSZMm1XmdTP3tb3/j2WefpWPHjnz1q1/lggsuAD5JOHOByaUkSZKkvLdp0yYADjjggGr7161bx+DBg5kyZQqvv/46I0aMYMSIEaxevZrJkyczZMgQ1q9fv9P5zj33XObMmUOHDh0YPnw4X/jCFygrK2PGjBl8+tOf5qWXXtqpztq1aznuuOO48cYb+eijjxg1ahRHHHEEN9xwA5///Of56KOPdjm+X/ziFwCcffbZdOjQgW9961u0adOG3//+9/Umu7uTyaUkSZKkvPb888/zyiuv0K5dO0499dRqx8aNG8fy5cs58cQTWbVqFffddx/33Xcfq1atYsiQIfzlL39h/PjxO53zrrvu4p133mHZsmXcc889/O53v+OVV15hypQprFu3jksuuWSnOuPHj2fVqlUMHz6clStXMnfuXH73u9/xj3/8g/Xr11NaWrpL8X388cfccccdAJU9lt27d+e0006jvLyc2bNn79J5m5rJpSRJkqS8tGHDBubNm8dZZ51FeXk51113XbXJfFavXs0999xDQUEBs2bNolOnTpXHOnfuzKxZsygoKGDOnDk79f6dc8457L333tX2tW3bliuuuIIePXowf/58Nm/eXHnstdde4/7776dNmzbcdNNNFBcXVx7r2bMnV1999S7H+eCDD7Ju3Tr69+/PiSeeWLn/wgsvBGD27NnEGHf5/E3F2WIlSZIk5Y2TTz55p31FRUXMmzePESNGVNu/ZMkSYowMHjyYww47bKd6AwcO5LjjjqO0tJTFixczZsyYasdfeuklHnnkEVasWMGWLVsoLy8HYPv27ZSXl7NixYrKdSYXL15MjJHjjz+eQw45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1Sq6du3KqFGj2LZtGzfccAMLFy4khNDkcS9btgyAww8/vMnP3Vgml5IkSZLy2vPPP88rr7xCu3btOPXUU6sdGzduHMuXL+fEE0/kwQcfpFOnTkAyGdDIkSN58sknGT9+PHfffXe1enfddRcjR45k7733rty3fft2pk6dypVXXskll1zCvHnzqtUZP348q1atYvjw4dx3330UFxcDsGbNGk455RReeumlJok3xsg777zDY489xve//31CCEyc2HQz8+4qh8VKkiRJyksbNmxg3rx5nHXWWZSXl3PddddVm8xn9erV3HPPPRQUFDBr1qzKxBKgc+fOzJo1i4KCAubMmbPTUNdzzjmnWmIJ0LZtW6644gp69OjB/Pnz2bx5c+Wx1157jfvvv582bdpw0003VSaWAD179uTqq6/OKtapU6cSQiCEQEFBAQceeCDf+ta32G+//Zg/fz6jR4/O6vxNwZ5LSZIkSXnj5JNP3mlfUVER8+bNqxzyWmHJkiXEGBk8eDCHHXbYTvUGDhzIcccdR2lpKYsXL2bMmDHVjr/00ks88sgjrFixgi1btlBeXg4kPZjl5eWsWLGCY445BoDFixcTY+T444/nkEMO2elaZ5xxBp06dWLjxo27FHfVpUgA3n//fV566SWef/55xo8fz+23387nPve5XTp3UzG5lCRJkpQ3Kta5jDGydu1aFi9ezLZt2zjvvPNYunQp/fv3ryy7Zs0aAPr27Vvn+fr160dpaWllWUiSx3HjxnHLLbcQY6yz7vvvv1/5/I033mjwWgcffPAuJ5e1LUUCcP/99/PVr36Vk08+mRdeeIGDDjpol87fFBwWK0mSJClvTJw4kdmzZ3Pbbbfx6KOPsmrVKv7pn/6Jd955hzFjxtSaDDZ2Ip3rr7+eWbNm0b17d37961/z2muvsW3bNmKMlT2hQL2J5+5y5pln8uUvf5kPPviAG264oUXbYnIpSZIkKW91796dOXPmUFhYyLJly7jzzjsrj/Xs2ROAVatW1Vm/4lhFWYC5c+cCcPPNN3PuuefSu3dvioqKKo+vWLFip/NU1H/11VfrvNbq1asziKjxKobhvvDCC81y/kyZXEqSJEnKawMGDGDcuHEAlJSUsH37dgBOPPFEQgg89dRTtc7U+sILL/D0009TUFDASSedVLl//fr1APTu3XunOo899hjvvvvuTvsr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OF/72tc49dRTGThwIL1792bIkCG1tmHGjBn06dOH+fPn07dvX84++2xGjRrFoYceyr777svgwYMbHVcIgd/85jd897vf5a233mLUqFH07NmTUaNGMWbMGE477TS6du3KWWedxerVq+udUKi5mVxKkiRJahUmTJjAAQccwKpVq7jtttsA2H///SktLeWKK66gZ8+ezJs3j3nz5tG7d2+mTZvG0qVL6dKlS7XzDB48mGeeeYbTTz+dTZs28cADD/DGG28wefJkHn30UQoLC2u9fo8ePVi2bBljx46lsLCQBx98kOXLlzNu3Dgef/xx2rVrt0txFRYWMnPmTJ577jkuvvhiunTpwuLFi5kzZw7PPvssRx55JFdeeSUrVqzgy1/+8i5doym0xFIkkpTzXFZFkpRrior2paRkaks3I2NFRfs26fnqmyinQseOHVm7dm2t+6dMmcKUKVMyvt6gQYN46KGHaj22cOHCOut17dqVGTNmMGPGjJ2O1Vcv0zbdcMMNWZ2jOZlcSlItXFZFkpRrJk78j5ZuglQvh8VKkiRJkrJmcilJkiRJyprJpSRJkiQpayaXkiRJkqSsmVxKkiRJkrJmcilJkiRJyprJpSRJkiQpayaXkiRJkqSsmVxKkiRJkrJmcilJkiRJyprJpSRJkiQpayaXkiRJkqSsmVxKkiRJkrLWtqUbIEmSJKlh1147nc2by1q6GRkrLi5iwoSJTXa+Pn36sHr16mr7ioqK6NatG8cffzzjx49n6NChTXa95jBs2DAWLVrEggULGDZsWEZ1KuJuqE7FuW+99VbOP//8JmlvY5lcSpIkSXlg8+Yyhg4taelmZGzRopJmOe+IESM48MADAdiwYQPPPfccc+fOZe7cuVx77bVceumlzXJdNczkUpJaselXT6dsa8Ofcm/f0Za2bbZndM6Cgh2Ul7dpsFxTf2ItSRLAxIkTq/Xgffzxx1xyySXMnDmTiRMncvbZZ9OrV6+Wa+AezORSklqxsq1llFDSYLmSNiWUlFye0TlLSqZm9Ml5c31iLUlSVYWFhVxzzTXccccdbN68mfnz53PhhRe2dLP2SE7oI0mSJCmv7bXXXhx66KEAvP322zsd37p1K9OmTWPQoEF06NCBDh06cPTRR3PVVVfxwQcf1HrOe++9lwsvvJAjjjiCTp060b59e/r378/48eN5/fXX62zL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", + "text/plain": [ + "<Figure size 1080x576 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + " \n", + "# set width of bar\n", + "barWidth = 0.2\n", + "fig = plt.subplots(figsize =(15, 8))\n", + " \n", + "# set height of bar\n", + "#resultGoodsperbillp.plot.bar(x=\"Year\", y=\"Accidents per billion mile\")\n", + "IT = A[\"Accident Probability\"]\n", + "ECE = B[\"Accident Probability\"]\n", + "CAC = C[\"Accident Probability\"]\n", + "CSE = M[\"Accident Probability\"]\n", + "CAR = U[\"Accident Probability\"]\n", + "\n", + "# Set position of bar on X axis\n", + "br1 = np.arange(len(IT))\n", + "br2 = [x + barWidth for x in br1]\n", + "br3 = [x + barWidth for x in br2]\n", + "br4 = [x + barWidth for x in br3]\n", + "br5 = [x + barWidth for x in br4]\n", + " \n", + "# Make the plot\n", + "plt.bar(br1, IT, color ='r', width = barWidth,\n", + " edgecolor ='grey', label ='Road A')\n", + "plt.bar(br2, ECE, color ='g', width = barWidth,\n", + " edgecolor ='grey', label ='Road B')\n", + "plt.bar(br3, CAC, color ='b', width = barWidth,\n", + " edgecolor ='grey', label ='Road C')\n", + "plt.bar(br4, CAR, color ='y', width = barWidth,\n", + " edgecolor ='grey', label ='Road U')\n", + "plt.bar(br5, CSE, width = barWidth,\n", + " edgecolor ='grey', label ='Road M')\n", + " \n", + " \n", + "# Adding Xticks\n", + "plt.xlabel('year', fontweight ='bold', fontsize = 15)\n", + "plt.ylabel('Accidents probability', fontweight ='bold', fontsize = 15)\n", + "plt.xticks([r + barWidth for r in range(len(IT))],\n", + " A[\"year\"])\n", + " \n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>year</th>\n", + " <th>Accident Probability</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>A</td>\n", + " <td>2005</td>\n", + " <td>6.422799e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Motorway</td>\n", + " <td>2005</td>\n", + " <td>1.359536e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>B,C & U</td>\n", + " <td>2005</td>\n", + " <td>9.496445e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>A</td>\n", + " <td>2006</td>\n", + " <td>6.014875e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>B,C & U</td>\n", + " <td>2006</td>\n", + " <td>8.948381e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>Motorway</td>\n", + " <td>2006</td>\n", + " <td>1.281553e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>Motorway</td>\n", + " <td>2007</td>\n", + " <td>1.198080e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>B,C & U</td>\n", + " <td>2007</td>\n", + " <td>8.354905e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>A</td>\n", + " <td>2007</td>\n", + " <td>5.855691e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>A</td>\n", + " <td>2008</td>\n", + " <td>5.578773e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>Motorway</td>\n", + " <td>2008</td>\n", + " <td>1.096785e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>B,C & U</td>\n", + " <td>2008</td>\n", + " <td>7.878233e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>B,C & U</td>\n", + " <td>2009</td>\n", + " <td>7.713141e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>A</td>\n", + " <td>2009</td>\n", + " <td>5.399421e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>Motorway</td>\n", + " <td>2009</td>\n", + " <td>9.987055e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>A</td>\n", + " <td>2010</td>\n", + " <td>5.183871e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>Motorway</td>\n", + " <td>2010</td>\n", + " <td>9.944262e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>B,C & U</td>\n", + " <td>2010</td>\n", + " <td>7.338374e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>A</td>\n", + " <td>2011</td>\n", + " <td>5.133504e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>B,C & U</td>\n", + " <td>2011</td>\n", + " <td>7.181611e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>Motorway</td>\n", + " <td>2011</td>\n", + " <td>8.703883e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>Motorway</td>\n", + " <td>2012</td>\n", + " <td>8.352564e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>B,C & U</td>\n", + " <td>2012</td>\n", + " <td>6.841165e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>A</td>\n", + " <td>2012</td>\n", + " <td>4.975626e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>24</th>\n", + " <td>Motorway</td>\n", + " <td>2013</td>\n", + " <td>7.872038e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>25</th>\n", + " <td>A</td>\n", + " <td>2013</td>\n", + " <td>4.774448e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>26</th>\n", + " <td>B,C & U</td>\n", + " <td>2013</td>\n", + " <td>6.457786e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>27</th>\n", + " <td>B,C & U</td>\n", + " <td>2014</td>\n", + " <td>6.552518e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>28</th>\n", + " <td>A</td>\n", + " <td>2014</td>\n", + " <td>4.925054e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>29</th>\n", + " <td>Motorway</td>\n", + " <td>2014</td>\n", + " <td>8.095679e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>30</th>\n", + " <td>A</td>\n", + " <td>2015</td>\n", + " <td>4.587376e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>31</th>\n", + " <td>B,C & U</td>\n", + " <td>2015</td>\n", + " <td>6.220195e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>32</th>\n", + " <td>Motorway</td>\n", + " <td>2015</td>\n", + " <td>7.741353e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>33</th>\n", + " <td>B,C & U</td>\n", + " <td>2016</td>\n", + " <td>6.045147e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34</th>\n", + " <td>Motorway</td>\n", + " <td>2016</td>\n", + " <td>7.395864e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35</th>\n", + " <td>A</td>\n", + " <td>2016</td>\n", + " <td>4.268668e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>36</th>\n", + " <td>Motorway</td>\n", + " <td>2017</td>\n", + " <td>6.448326e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>37</th>\n", + " <td>A</td>\n", + " <td>2017</td>\n", + " <td>3.877747e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>38</th>\n", + " <td>B,C & U</td>\n", + " <td>2017</td>\n", + " <td>5.855451e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>39</th>\n", + " <td>Motorway</td>\n", + " <td>2018</td>\n", + " <td>6.123188e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40</th>\n", + " <td>A</td>\n", + " <td>2018</td>\n", + " <td>3.623149e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>41</th>\n", + " <td>B,C & U</td>\n", + " <td>2018</td>\n", + " <td>5.537736e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>42</th>\n", + " <td>A</td>\n", + " <td>2019</td>\n", + " <td>3.506125e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>43</th>\n", + " <td>B,C & U</td>\n", + " <td>2019</td>\n", + " <td>5.179304e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44</th>\n", + " <td>Motorway</td>\n", + " <td>2019</td>\n", + " <td>5.404255e-08</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name year Accident Probability\n", + "0 A 2005 6.422799e-07\n", + "1 Motorway 2005 1.359536e-07\n", + "2 B,C & U 2005 9.496445e-07\n", + "3 A 2006 6.014875e-07\n", + "4 B,C & U 2006 8.948381e-07\n", + "5 Motorway 2006 1.281553e-07\n", + "6 Motorway 2007 1.198080e-07\n", + "7 B,C & U 2007 8.354905e-07\n", + "8 A 2007 5.855691e-07\n", + "9 A 2008 5.578773e-07\n", + "10 Motorway 2008 1.096785e-07\n", + "11 B,C & U 2008 7.878233e-07\n", + "12 B,C & U 2009 7.713141e-07\n", + "13 A 2009 5.399421e-07\n", + "14 Motorway 2009 9.987055e-08\n", + "15 A 2010 5.183871e-07\n", + "16 Motorway 2010 9.944262e-08\n", + "17 B,C & U 2010 7.338374e-07\n", + "18 A 2011 5.133504e-07\n", + "19 B,C & U 2011 7.181611e-07\n", + "20 Motorway 2011 8.703883e-08\n", + "21 Motorway 2012 8.352564e-08\n", + "22 B,C & U 2012 6.841165e-07\n", + "23 A 2012 4.975626e-07\n", + "24 Motorway 2013 7.872038e-08\n", + "25 A 2013 4.774448e-07\n", + "26 B,C & U 2013 6.457786e-07\n", + "27 B,C & U 2014 6.552518e-07\n", + "28 A 2014 4.925054e-07\n", + "29 Motorway 2014 8.095679e-08\n", + "30 A 2015 4.587376e-07\n", + "31 B,C & U 2015 6.220195e-07\n", + "32 Motorway 2015 7.741353e-08\n", + "33 B,C & U 2016 6.045147e-07\n", + "34 Motorway 2016 7.395864e-08\n", + "35 A 2016 4.268668e-07\n", + "36 Motorway 2017 6.448326e-08\n", + "37 A 2017 3.877747e-07\n", + "38 B,C & U 2017 5.855451e-07\n", + "39 Motorway 2018 6.123188e-08\n", + "40 A 2018 3.623149e-07\n", + "41 B,C & U 2018 5.537736e-07\n", + "42 A 2019 3.506125e-07\n", + "43 B,C & U 2019 5.179304e-07\n", + "44 Motorway 2019 5.404255e-08" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 411, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.float64" + ] + }, + "execution_count": 411, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(result23['Accident Probability'][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th>road_name</th>\n", + " <th>A</th>\n", + " <th>B,C & U</th>\n", + " <th>Motorway</th>\n", + " </tr>\n", + " <tr>\n", + " <th>year</th>\n", + " <th></th>\n", + " <th></th>\n", + " <th></th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>2005</th>\n", + " <td>6.422799e-07</td>\n", + " <td>9.496445e-07</td>\n", + " <td>1.359536e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2006</th>\n", + " <td>6.014875e-07</td>\n", + " <td>8.948381e-07</td>\n", + " <td>1.281553e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2007</th>\n", + " <td>5.855691e-07</td>\n", + " <td>8.354905e-07</td>\n", + " <td>1.198080e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2008</th>\n", + " <td>5.578773e-07</td>\n", + " <td>7.878233e-07</td>\n", + " <td>1.096785e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2009</th>\n", + " <td>5.399421e-07</td>\n", + " <td>7.713141e-07</td>\n", + " <td>9.987055e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2010</th>\n", + " <td>5.183871e-07</td>\n", + " <td>7.338374e-07</td>\n", + " <td>9.944262e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2011</th>\n", + " <td>5.133504e-07</td>\n", + " <td>7.181611e-07</td>\n", + " <td>8.703883e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2012</th>\n", + " <td>4.975626e-07</td>\n", + " <td>6.841165e-07</td>\n", + " <td>8.352564e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2013</th>\n", + " <td>4.774448e-07</td>\n", + " <td>6.457786e-07</td>\n", + " <td>7.872038e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2014</th>\n", + " <td>4.925054e-07</td>\n", + " <td>6.552518e-07</td>\n", + " <td>8.095679e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015</th>\n", + " <td>4.587376e-07</td>\n", + " <td>6.220195e-07</td>\n", + " <td>7.741353e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2016</th>\n", + " <td>4.268668e-07</td>\n", + " <td>6.045147e-07</td>\n", + " <td>7.395864e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2017</th>\n", + " <td>3.877747e-07</td>\n", + " <td>5.855451e-07</td>\n", + " <td>6.448326e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2018</th>\n", + " <td>3.623149e-07</td>\n", + " <td>5.537736e-07</td>\n", + " <td>6.123188e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2019</th>\n", + " <td>3.506125e-07</td>\n", + " <td>5.179304e-07</td>\n", + " <td>5.404255e-08</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + "road_name A B,C & U Motorway\n", + "year \n", + "2005 6.422799e-07 9.496445e-07 1.359536e-07\n", + "2006 6.014875e-07 8.948381e-07 1.281553e-07\n", + "2007 5.855691e-07 8.354905e-07 1.198080e-07\n", + "2008 5.578773e-07 7.878233e-07 1.096785e-07\n", + "2009 5.399421e-07 7.713141e-07 9.987055e-08\n", + "2010 5.183871e-07 7.338374e-07 9.944262e-08\n", + "2011 5.133504e-07 7.181611e-07 8.703883e-08\n", + "2012 4.975626e-07 6.841165e-07 8.352564e-08\n", + "2013 4.774448e-07 6.457786e-07 7.872038e-08\n", + "2014 4.925054e-07 6.552518e-07 8.095679e-08\n", + "2015 4.587376e-07 6.220195e-07 7.741353e-08\n", + "2016 4.268668e-07 6.045147e-07 7.395864e-08\n", + "2017 3.877747e-07 5.855451e-07 6.448326e-08\n", + "2018 3.623149e-07 5.537736e-07 6.123188e-08\n", + "2019 3.506125e-07 5.179304e-07 5.404255e-08" + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23_opiv=result23.pivot_table('Accident Probability', ['year'], 'road_name')\n", + "result23_opiv" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[6.42279942e-07, 9.49644528e-07, 1.35953566e-07],\n", + " [6.01487544e-07, 8.94838113e-07, 1.28155340e-07],\n", + " [5.85569077e-07, 8.35490549e-07, 1.19808000e-07],\n", + " [5.57877256e-07, 7.87823315e-07, 1.09678457e-07],\n", + " [5.39942113e-07, 7.71314073e-07, 9.98705502e-08],\n", + " [5.18387097e-07, 7.33837429e-07, 9.94426230e-08],\n", + " [5.13350365e-07, 7.18161137e-07, 8.70388350e-08],\n", + " [4.97562592e-07, 6.84116541e-07, 8.35256410e-08],\n", + " [4.77444772e-07, 6.45778612e-07, 7.87203791e-08],\n", + " [4.92505415e-07, 6.55251799e-07, 8.09567901e-08],\n", + " [4.58737589e-07, 6.22019486e-07, 7.74135338e-08],\n", + " [4.26866805e-07, 6.04514731e-07, 7.39586411e-08],\n", + " [3.87774744e-07, 5.85545145e-07, 6.44832606e-08],\n", + " [3.62314939e-07, 5.53773585e-07, 6.12318841e-08],\n", + " [3.50612517e-07, 5.17930450e-07, 5.40425532e-08]])" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dataset_table=result23_opiv \n", + "dataset_table.values " + ] + }, + { + "cell_type": "code", + "execution_count": 441, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[3.89627674e-08, 2.82889341e-07, 8.23868845e-08, 1.53996323e-07,\n", + " 5.87343321e-08],\n", + " [3.74238123e-08, 2.45504978e-07, 7.56211633e-08, 1.16837963e-07,\n", + " 4.80592752e-08],\n", + " [3.49098473e-08, 2.47299145e-07, 7.75155626e-08, 1.22236681e-07,\n", + " 4.76750721e-08],\n", + " [3.49766807e-08, 9.07014908e-08, 3.91656652e-08, 1.10162938e-07,\n", + " 3.18085466e-08],\n", + " [2.76508300e-08, 1.03867034e-07, 4.20038816e-08, 1.01638522e-07,\n", + " 3.08825045e-08],\n", + " [2.70274897e-08, 1.57855282e-07, 8.55270531e-08, 9.78777857e-08,\n", + " 1.17858661e-07],\n", + " [3.46589093e-08, 1.56377611e-07, 8.60335990e-08, 9.18201519e-08,\n", + " 1.14374627e-07],\n", + " [3.16907830e-08, 1.51974973e-07, 8.25173364e-08, 7.95863994e-08,\n", + " 1.09948130e-07],\n", + " [3.09490620e-08, 1.43997560e-07, 7.47498206e-08, 8.18530442e-08,\n", + " 1.03895088e-07],\n", + " [4.18316136e-08, 1.51236539e-07, 7.95447618e-08, 7.99038052e-08,\n", + " 1.11770804e-07],\n", + " [3.86734202e-08, 1.43694475e-07, 7.02071947e-08, 7.98037131e-08,\n", + " 1.14505931e-07],\n", + " [4.41163389e-08, 1.42754547e-07, 6.04474594e-08, 1.33860542e-07,\n", + " 1.24629899e-07],\n", + " [2.61999931e-08, 1.25253633e-07, 5.09385949e-08, 8.42046456e-08,\n", + " 1.25450231e-07],\n", + " [3.81646556e-08, 8.94260266e-08, 2.27642733e-08, 1.80015380e-07,\n", + " 3.46230526e-08],\n", + " [2.77836072e-08, 7.45232485e-08, 1.71157759e-08, 6.40762636e-08,\n", + " 3.74465946e-08]])" + ] + }, + "execution_count": 441, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dataset_table.values " + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Degree of Freedom:- 1\n" + ] + } + ], + "source": [ + "import seaborn as sns\n", + "import pandas as pd\n", + "import numpy as np\n", + "import scipy.stats as stats\n", + "\n", + "dataset=sns.load_dataset('tips')\n", + "dataset_table=pd.crosstab(dataset['sex'],dataset['smoker'])\n", + "#Observed Values\n", + "Observed_Values = dataset_table.values \n", + "val=stats.chi2_contingency(dataset_table)\n", + "\n", + "Expected_Values=val[3]\n", + "Expected_Values\n", + "\n", + "no_of_rows=len(dataset_table.iloc[0:2,0])\n", + "no_of_columns=len(dataset_table.iloc[0,0:2])\n", + "ddof=(no_of_rows-1)*(no_of_columns-1)\n", + "print(\"Degree of Freedom:-\",ddof)\n", + "alpha = 0.05\n", + "from scipy.stats import chi2\n" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [], + "source": [ + "chi_square=sum([(o-e)**2./e for o,e in zip(Observed_Values,Expected_Values)])\n", + "chi_square_statistic=chi_square[0]+chi_square[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[60 97]\n", + " [33 54]] [[59.84016393 97.15983607]\n", + " [33.15983607 53.84016393]]\n" + ] + } + ], + "source": [ + "print(Observed_Values,Expected_Values)" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "hi [0.00042693 0.00026294]\n", + "hi [0.00077044 0.00047451]\n", + "r [0.0006898738224860787, 0.0012449447141415443]\n" + ] + }, + { + "data": { + "text/plain": [ + "0.001934818536627623" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "r=[]\n", + "result = [[0,0],\n", + " [0,0]]\n", + "for o,e in zip(Observed_Values,Expected_Values):\n", + " a=(o-e)**2./e\n", + " print(\"hi\",a)\n", + " r.append(a[0]+a[1])\n", + "print(\"r\",r)\n", + "chi_square_statistic=r[0]+r[1]\n", + "chi_square_statistic\n" + ] + }, + { + "cell_type": "code", + "execution_count": 373, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[0.0008538602229130974, 0.00052588742205906]" + ] + }, + "execution_count": 373, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 470, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1.85745130e-09, 1.99654903e-08, 4.97591969e-10, 2.08401152e-10,\n", + " 2.67803669e-08])" + ] + }, + "execution_count": 470, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "r[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.001934818536627623" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "chi_square_statistic=r[0]+r[1]\n", + "chi_square_statistic" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th>road_name</th>\n", + " <th>A</th>\n", + " <th>B,C & U</th>\n", + " <th>Motorway</th>\n", + " </tr>\n", + " <tr>\n", + " <th>year</th>\n", + " <th></th>\n", + " <th></th>\n", + " <th></th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>2005</th>\n", + " <td>6.422799e-07</td>\n", + " <td>9.496445e-07</td>\n", + " <td>1.359536e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2006</th>\n", + " <td>6.014875e-07</td>\n", + " <td>8.948381e-07</td>\n", + " <td>1.281553e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2007</th>\n", + " <td>5.855691e-07</td>\n", + " <td>8.354905e-07</td>\n", + " <td>1.198080e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2008</th>\n", + " <td>5.578773e-07</td>\n", + " <td>7.878233e-07</td>\n", + " <td>1.096785e-07</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2009</th>\n", + " <td>5.399421e-07</td>\n", + " <td>7.713141e-07</td>\n", + " <td>9.987055e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2010</th>\n", + " <td>5.183871e-07</td>\n", + " <td>7.338374e-07</td>\n", + " <td>9.944262e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2011</th>\n", + " <td>5.133504e-07</td>\n", + " <td>7.181611e-07</td>\n", + " <td>8.703883e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2012</th>\n", + " <td>4.975626e-07</td>\n", + " <td>6.841165e-07</td>\n", + " <td>8.352564e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2013</th>\n", + " <td>4.774448e-07</td>\n", + " <td>6.457786e-07</td>\n", + " <td>7.872038e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2014</th>\n", + " <td>4.925054e-07</td>\n", + " <td>6.552518e-07</td>\n", + " <td>8.095679e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015</th>\n", + " <td>4.587376e-07</td>\n", + " <td>6.220195e-07</td>\n", + " <td>7.741353e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2016</th>\n", + " <td>4.268668e-07</td>\n", + " <td>6.045147e-07</td>\n", + " <td>7.395864e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2017</th>\n", + " <td>3.877747e-07</td>\n", + " <td>5.855451e-07</td>\n", + " <td>6.448326e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2018</th>\n", + " <td>3.623149e-07</td>\n", + " <td>5.537736e-07</td>\n", + " <td>6.123188e-08</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2019</th>\n", + " <td>3.506125e-07</td>\n", + " <td>5.179304e-07</td>\n", + " <td>5.404255e-08</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + "road_name A B,C & U Motorway\n", + "year \n", + "2005 6.422799e-07 9.496445e-07 1.359536e-07\n", + "2006 6.014875e-07 8.948381e-07 1.281553e-07\n", + "2007 5.855691e-07 8.354905e-07 1.198080e-07\n", + "2008 5.578773e-07 7.878233e-07 1.096785e-07\n", + "2009 5.399421e-07 7.713141e-07 9.987055e-08\n", + "2010 5.183871e-07 7.338374e-07 9.944262e-08\n", + "2011 5.133504e-07 7.181611e-07 8.703883e-08\n", + "2012 4.975626e-07 6.841165e-07 8.352564e-08\n", + "2013 4.774448e-07 6.457786e-07 7.872038e-08\n", + "2014 4.925054e-07 6.552518e-07 8.095679e-08\n", + "2015 4.587376e-07 6.220195e-07 7.741353e-08\n", + "2016 4.268668e-07 6.045147e-07 7.395864e-08\n", + "2017 3.877747e-07 5.855451e-07 6.448326e-08\n", + "2018 3.623149e-07 5.537736e-07 6.123188e-08\n", + "2019 3.506125e-07 5.179304e-07 5.404255e-08" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23_opiv" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,\n", + " 2016, 2017, 2018, 2019])" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "years=result23['year'].unique()\n", + "years" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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AAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACRQogBAAAAECmEGAAAAACR0vAQY2YXmtlXzGyfmU2b2e1m9mozs0bvGwAAAMDGk2jCPi6XtFvSWyQNS/ptSVdLOlHSu5uwfwAAAAAbSDNCzPOccyOh9/9tZoOSLjez9zjnSk04BgAAAAAbRMO7k1UFmLKfS+qT1N3o/QMAAADYWFp1Yf95kvY75yZbtH8AAAAAEdX0EGNm50l6qaQP1Jj3LDP70O7du5t9WAAAAAAioqkhxsxOkHS9pG9L+vvq+c65m5xzl59yyinNPCwAAAAAEdK0EGNmA5K+LmlU0ou5oB8AAADAWjRjdDKZWaekr0nql3Suc+5YM/YLAAAAYONpeIgxs4SkGySdKenXnXP7G71PAAAAABtXM1pirpT0XPmbXfaZ2TmheT93zmWbcAwAAAAANohmhJjzg+cP1ph3qqTdTTgGAAAAABtEw0OMc+6URu8DAAAAwPGjVTe7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", + "text/plain": [ + "<Figure size 1000x800 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "import matplotlib.pyplot as plt \n", + "\n", + "from matplotlib.pyplot import figure\n", + "plt.figure(figsize=(20, 16),dpi=50)\n", + "plt.rcParams.update({'font.size': 22})\n", + "#YEARList = result23_opiv['year'].tolist()\n", + "YEARList=years\n", + "M = result23_opiv ['Motorway'].tolist()\n", + "A = result23_opiv ['A'].tolist()\n", + "B = result23_opiv ['B,C & U'].tolist()\n", + "\n", + "\n", + "\n", + "plt.plot(YEARList, M, label = 'Motorway', marker='o', linewidth=3)\n", + "plt.plot(YEARList, A, label = 'A road', marker='o', linewidth=3)\n", + "plt.plot(YEARList, B, label = 'B,C & U road', marker='o', linewidth=3)\n", + "\n", + "\n", + "\n", + "plt.xlabel('YEAR Number')\n", + "plt.ylabel('Accident Probability')\n", + "plt.legend(loc='upper left')\n", + "plt.xticks(YEARList)\n", + "#plt.yticks([1000, 2000, 4000, 6000, 8000, 10000, 12000, 15000, 18000])\n", + "plt.title('Accident Probability over road type')\n", + "\n", + "plt.show()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Normalized after time" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Row(hour=0, Total accidents=34976)" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from pyspark.sql.functions import *\n", + "#Timestamp String to DateType\n", + "Accident_Information20052019_dfff=A2018.withColumn(\"timestamp\",to_timestamp(\"time\"))\n", + "Accident_Information20052019_dfff\n", + "TimeAccident_dfhour = Accident_Information20052019_dfff.withColumn('hour',hour(Accident_Information20052019_dfff.timestamp))\n", + "#Time of week accidents\n", + "TimeAccident_df = TimeAccident_dfhour.groupby('hour').agg(F.count(Accident_Information20052019_dfff.accident_index).alias('Total accidents'))\n", + "#TimeAccident_df= TimeAccident_df.withColumn('Time',F.col('Time').cast(IntegerType()))\n", + "TimeAccident_df=TimeAccident_df.sort(\"hour\")\n", + "TimeAccident_df.head()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>hour</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>0</td>\n", + " <td>34976</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>25340</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>20055</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>16310</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>4</td>\n", + " <td>12989</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>5</td>\n", + " <td>19228</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>6</td>\n", + " <td>41476</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>7</td>\n", + " <td>97895</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>8</td>\n", + " <td>166145</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>9</td>\n", + " <td>112595</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>10</td>\n", + " <td>103173</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>11</td>\n", + " <td>117755</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>12</td>\n", + " <td>133996</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>13</td>\n", + " <td>137581</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>14</td>\n", + " <td>138775</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>15</td>\n", + " <td>176700</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>16</td>\n", + " <td>185391</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>17</td>\n", + " <td>202694</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>18</td>\n", + " <td>159655</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>19</td>\n", + " <td>118915</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>20</td>\n", + " <td>87214</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>21</td>\n", + " <td>69608</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>22</td>\n", + " <td>60838</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>23</td>\n", + " <td>48123</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " hour Total accidents\n", + "0 0 34976\n", + "1 1 25340\n", + "2 2 20055\n", + "3 3 16310\n", + "4 4 12989\n", + "5 5 19228\n", + "6 6 41476\n", + "7 7 97895\n", + "8 8 166145\n", + "9 9 112595\n", + "10 10 103173\n", + "11 11 117755\n", + "12 12 133996\n", + "13 13 137581\n", + "14 14 138775\n", + "15 15 176700\n", + "16 16 185391\n", + "17 17 202694\n", + "18 18 159655\n", + "19 19 118915\n", + "20 20 87214\n", + "21 21 69608\n", + "22 22 60838\n", + "23 23 48123" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "TimeAccident_df_df=TimeAccident_df.toPandas()\n", + "TimeAccident_df_df" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Time of day</th>\n", + " <th>Monday</th>\n", + " <th>Tuesday</th>\n", + " <th>Wednesday</th>\n", + " <th>Thursday</th>\n", + " <th>Friday</th>\n", + " <th>Saturday</th>\n", + " <th>Sunday</th>\n", + " <th>hour</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>00:00-01:00</td>\n", + " <td>103000000</td>\n", + " <td>108000000</td>\n", + " <td>114000000</td>\n", + " <td>117000000</td>\n", + " <td>126000000</td>\n", + " <td>173000000</td>\n", + " <td>187000000</td>\n", + " <td>0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>01:00-02:00</td>\n", + " <td>66000000</td>\n", + " <td>72000000</td>\n", + " <td>77000000</td>\n", + " <td>77000000</td>\n", + " <td>84000000</td>\n", + " <td>112000000</td>\n", + " <td>117000000</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>02:00-03:00</td>\n", + " <td>55000000</td>\n", + " <td>63000000</td>\n", + " <td>65000000</td>\n", + " <td>66000000</td>\n", + " <td>69000000</td>\n", + " <td>84000000</td>\n", + " <td>80000000</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>03:00-04:00</td>\n", + " <td>71000000</td>\n", + " <td>73000000</td>\n", + " <td>75000000</td>\n", + " <td>76000000</td>\n", + " <td>78000000</td>\n", + " <td>78000000</td>\n", + " <td>67000000</td>\n", + " <td>3</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>04:00-05:00</td>\n", + " <td>141000000</td>\n", + " <td>131000000</td>\n", + " <td>131000000</td>\n", + " <td>131000000</td>\n", + " <td>130000000</td>\n", + " <td>95000000</td>\n", + " <td>71000000</td>\n", + " <td>4</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>05:00-06:00</td>\n", + " <td>411000000</td>\n", + " <td>394000000</td>\n", + " <td>390000000</td>\n", + " <td>386000000</td>\n", + " <td>368000000</td>\n", + " <td>195000000</td>\n", + " <td>128000000</td>\n", + " <td>5</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>06:00-07:00</td>\n", + " <td>953000000</td>\n", + " <td>964000000</td>\n", + " <td>950000000</td>\n", + " <td>936000000</td>\n", + " <td>874000000</td>\n", + " <td>356000000</td>\n", + " <td>225000000</td>\n", + " <td>6</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>07:00-08:00</td>\n", + " <td>1701000000</td>\n", + " <td>1750000000</td>\n", + " <td>1729000000</td>\n", + " <td>1705000000</td>\n", + " <td>1591000000</td>\n", + " <td>602000000</td>\n", + " <td>346000000</td>\n", + " <td>7</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>08:00-09:00</td>\n", + " <td>1859000000</td>\n", + " <td>1918000000</td>\n", + " <td>1911000000</td>\n", + " <td>1904000000</td>\n", + " <td>1809000000</td>\n", + " <td>920000000</td>\n", + " <td>495000000</td>\n", + " <td>8</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>09:00-10:00</td>\n", + " <td>1493000000</td>\n", + " <td>1522000000</td>\n", + " <td>1523000000</td>\n", + " <td>1533000000</td>\n", + " <td>1534000000</td>\n", + " <td>1270000000</td>\n", + " <td>853000000</td>\n", + " <td>9</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>10:00-11:00</td>\n", + " <td>1486000000</td>\n", + " <td>1470000000</td>\n", + " <td>1482000000</td>\n", + " <td>1504000000</td>\n", + " <td>1592000000</td>\n", + " <td>1594000000</td>\n", + " <td>1280000000</td>\n", + " <td>10</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>11:00-12:00</td>\n", + " <td>1571000000</td>\n", + " <td>1540000000</td>\n", + " <td>1562000000</td>\n", + " <td>1586000000</td>\n", + " <td>1727000000</td>\n", + " <td>1789000000</td>\n", + " <td>1544000000</td>\n", + " <td>11</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>12:00-13:00</td>\n", + " <td>1622000000</td>\n", + " <td>1596000000</td>\n", + " <td>1626000000</td>\n", + " <td>1653000000</td>\n", + " <td>1836000000</td>\n", + " <td>1844000000</td>\n", + " <td>1662000000</td>\n", + " <td>12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>13:00-14:00</td>\n", + " <td>1636000000</td>\n", + " <td>1622000000</td>\n", + " <td>1655000000</td>\n", + " <td>1681000000</td>\n", + " <td>1881000000</td>\n", + " <td>1787000000</td>\n", + " <td>1640000000</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>14:00-15:00</td>\n", + " <td>1740000000</td>\n", + " <td>1740000000</td>\n", + " <td>1782000000</td>\n", + " <td>1800000000</td>\n", + " <td>1992000000</td>\n", + " <td>1708000000</td>\n", + " <td>1584000000</td>\n", + " <td>14</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>15:00-16:00</td>\n", + " <td>1917000000</td>\n", + " <td>1947000000</td>\n", + " <td>1980000000</td>\n", + " <td>1999000000</td>\n", + " <td>2165000000</td>\n", + " <td>1613000000</td>\n", + " <td>1520000000</td>\n", + " <td>15</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>16:00-17:00</td>\n", + " <td>2069000000</td>\n", + " <td>2131000000</td>\n", + " <td>2140000000</td>\n", + " <td>2148000000</td>\n", + " <td>2175000000</td>\n", + " <td>1544000000</td>\n", + " <td>1429000000</td>\n", + " <td>16</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>17:00-18:00</td>\n", + " <td>1989000000</td>\n", + " <td>2060000000</td>\n", + " <td>2075000000</td>\n", + " <td>2075000000</td>\n", + " <td>2021000000</td>\n", + " <td>1423000000</td>\n", + " <td>1236000000</td>\n", + " <td>17</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>18:00-19:00</td>\n", + " <td>1431000000</td>\n", + " <td>1506000000</td>\n", + " <td>1529000000</td>\n", + " <td>1555000000</td>\n", + " <td>1585000000</td>\n", + " <td>1180000000</td>\n", + " <td>1053000000</td>\n", + " <td>18</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>19:00-20:00</td>\n", + " <td>977000000</td>\n", + " <td>1028000000</td>\n", + " <td>1057000000</td>\n", + " <td>1095000000</td>\n", + " <td>1149000000</td>\n", + " <td>906000000</td>\n", + " <td>855000000</td>\n", + " <td>19</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>20:00-21:00</td>\n", + " <td>682000000</td>\n", + " <td>714000000</td>\n", + " <td>738000000</td>\n", + " <td>767000000</td>\n", + " <td>801000000</td>\n", + " <td>663000000</td>\n", + " <td>651000000</td>\n", + " <td>20</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>21:00-22:00</td>\n", + " <td>484000000</td>\n", + " <td>511000000</td>\n", + " <td>529000000</td>\n", + " <td>547000000</td>\n", + " <td>573000000</td>\n", + " <td>501000000</td>\n", + " <td>457000000</td>\n", + " <td>21</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>22:00-23:00</td>\n", + " <td>323000000</td>\n", + " <td>352000000</td>\n", + " <td>369000000</td>\n", + " <td>379000000</td>\n", + " <td>426000000</td>\n", + " <td>400000000</td>\n", + " <td>300000000</td>\n", + " <td>22</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>23:00-00:00</td>\n", + " <td>179000000</td>\n", + " <td>192000000</td>\n", + " <td>204000000</td>\n", + " <td>215000000</td>\n", + " <td>276000000</td>\n", + " <td>283000000</td>\n", + " <td>175000000</td>\n", + " <td>23</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " Time of day Monday Tuesday Wednesday Thursday Friday \\\n", + "0 00:00-01:00 103000000 108000000 114000000 117000000 126000000 \n", + "1 01:00-02:00 66000000 72000000 77000000 77000000 84000000 \n", + "2 02:00-03:00 55000000 63000000 65000000 66000000 69000000 \n", + "3 03:00-04:00 71000000 73000000 75000000 76000000 78000000 \n", + "4 04:00-05:00 141000000 131000000 131000000 131000000 130000000 \n", + "5 05:00-06:00 411000000 394000000 390000000 386000000 368000000 \n", + "6 06:00-07:00 953000000 964000000 950000000 936000000 874000000 \n", + "7 07:00-08:00 1701000000 1750000000 1729000000 1705000000 1591000000 \n", + "8 08:00-09:00 1859000000 1918000000 1911000000 1904000000 1809000000 \n", + "9 09:00-10:00 1493000000 1522000000 1523000000 1533000000 1534000000 \n", + "10 10:00-11:00 1486000000 1470000000 1482000000 1504000000 1592000000 \n", + "11 11:00-12:00 1571000000 1540000000 1562000000 1586000000 1727000000 \n", + "12 12:00-13:00 1622000000 1596000000 1626000000 1653000000 1836000000 \n", + "13 13:00-14:00 1636000000 1622000000 1655000000 1681000000 1881000000 \n", + "14 14:00-15:00 1740000000 1740000000 1782000000 1800000000 1992000000 \n", + "15 15:00-16:00 1917000000 1947000000 1980000000 1999000000 2165000000 \n", + "16 16:00-17:00 2069000000 2131000000 2140000000 2148000000 2175000000 \n", + "17 17:00-18:00 1989000000 2060000000 2075000000 2075000000 2021000000 \n", + "18 18:00-19:00 1431000000 1506000000 1529000000 1555000000 1585000000 \n", + "19 19:00-20:00 977000000 1028000000 1057000000 1095000000 1149000000 \n", + "20 20:00-21:00 682000000 714000000 738000000 767000000 801000000 \n", + "21 21:00-22:00 484000000 511000000 529000000 547000000 573000000 \n", + "22 22:00-23:00 323000000 352000000 369000000 379000000 426000000 \n", + "23 23:00-00:00 179000000 192000000 204000000 215000000 276000000 \n", + "\n", + " Saturday Sunday hour \n", + "0 173000000 187000000 0 \n", + "1 112000000 117000000 1 \n", + "2 84000000 80000000 2 \n", + "3 78000000 67000000 3 \n", + "4 95000000 71000000 4 \n", + "5 195000000 128000000 5 \n", + "6 356000000 225000000 6 \n", + "7 602000000 346000000 7 \n", + "8 920000000 495000000 8 \n", + "9 1270000000 853000000 9 \n", + "10 1594000000 1280000000 10 \n", + "11 1789000000 1544000000 11 \n", + "12 1844000000 1662000000 12 \n", + "13 1787000000 1640000000 13 \n", + "14 1708000000 1584000000 14 \n", + "15 1613000000 1520000000 15 \n", + "16 1544000000 1429000000 16 \n", + "17 1423000000 1236000000 17 \n", + "18 1180000000 1053000000 18 \n", + "19 906000000 855000000 19 \n", + "20 663000000 651000000 20 \n", + "21 501000000 457000000 21 \n", + "22 400000000 300000000 22 \n", + "23 283000000 175000000 23 " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "df = pd.read_csv ('/Users/Asfandyar/Desktop/disertation/diseration_final/weekdist.csv')\n", + "df['hour'] = df.index\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>hour</th>\n", + " <th>Total accidents</th>\n", + " <th>Time of day</th>\n", + " <th>Monday_Normalized</th>\n", + " <th>Tuesday_Normalized</th>\n", + " <th>Wednesday_Normalized</th>\n", + " <th>Thursday_Normalized</th>\n", + " <th>Friday_Normalized</th>\n", + " <th>Saturday_Normalized</th>\n", + " <th>Sunday_Normalized</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>0</td>\n", + " <td>34976</td>\n", + " <td>00:00-01:00</td>\n", + " <td>0.000340</td>\n", + " <td>0.000324</td>\n", + " <td>0.000307</td>\n", + " <td>0.000299</td>\n", + " <td>0.000278</td>\n", + " <td>0.000202</td>\n", + " <td>0.000187</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>25340</td>\n", + " <td>01:00-02:00</td>\n", + " <td>0.000384</td>\n", + " <td>0.000352</td>\n", + " <td>0.000329</td>\n", + " <td>0.000329</td>\n", + " <td>0.000302</td>\n", + " <td>0.000226</td>\n", + " <td>0.000217</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>20055</td>\n", + " <td>02:00-03:00</td>\n", + " <td>0.000365</td>\n", + " <td>0.000318</td>\n", + " <td>0.000309</td>\n", + " <td>0.000304</td>\n", + " <td>0.000291</td>\n", + " <td>0.000239</td>\n", + " <td>0.000251</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>16310</td>\n", + " <td>03:00-04:00</td>\n", + " <td>0.000230</td>\n", + " <td>0.000223</td>\n", + " <td>0.000217</td>\n", + " <td>0.000215</td>\n", + " <td>0.000209</td>\n", + " <td>0.000209</td>\n", + " <td>0.000243</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>4</td>\n", + " <td>12989</td>\n", + " <td>04:00-05:00</td>\n", + " <td>0.000092</td>\n", + " <td>0.000099</td>\n", + " <td>0.000099</td>\n", + " <td>0.000099</td>\n", + " <td>0.000100</td>\n", + " <td>0.000137</td>\n", + " <td>0.000183</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>5</td>\n", + " <td>19228</td>\n", + " <td>05:00-06:00</td>\n", + " <td>0.000047</td>\n", + " <td>0.000049</td>\n", + " <td>0.000049</td>\n", + " <td>0.000050</td>\n", + " <td>0.000052</td>\n", + " <td>0.000099</td>\n", + " <td>0.000150</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>6</td>\n", + " <td>41476</td>\n", + " <td>06:00-07:00</td>\n", + " <td>0.000044</td>\n", + " <td>0.000043</td>\n", + " <td>0.000044</td>\n", + " <td>0.000044</td>\n", + " <td>0.000047</td>\n", + " <td>0.000117</td>\n", + " <td>0.000184</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>7</td>\n", + " <td>97895</td>\n", + " <td>07:00-08:00</td>\n", + " <td>0.000058</td>\n", + " <td>0.000056</td>\n", + " <td>0.000057</td>\n", + " <td>0.000057</td>\n", + " <td>0.000062</td>\n", + " <td>0.000163</td>\n", + " <td>0.000283</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>8</td>\n", + " <td>166145</td>\n", + " <td>08:00-09:00</td>\n", + " <td>0.000089</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000092</td>\n", + " <td>0.000181</td>\n", + " <td>0.000336</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>9</td>\n", + " <td>112595</td>\n", + " <td>09:00-10:00</td>\n", + " <td>0.000075</td>\n", + " <td>0.000074</td>\n", + " <td>0.000074</td>\n", + " <td>0.000073</td>\n", + " <td>0.000073</td>\n", + " <td>0.000089</td>\n", + " <td>0.000132</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>10</td>\n", + " <td>103173</td>\n", + " <td>10:00-11:00</td>\n", + " <td>0.000069</td>\n", + " <td>0.000070</td>\n", + " <td>0.000070</td>\n", + " <td>0.000069</td>\n", + " <td>0.000065</td>\n", + " <td>0.000065</td>\n", + " <td>0.000081</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>11</td>\n", + " <td>117755</td>\n", + " <td>11:00-12:00</td>\n", + " <td>0.000075</td>\n", + " <td>0.000076</td>\n", + " <td>0.000075</td>\n", + " <td>0.000074</td>\n", + " <td>0.000068</td>\n", + " <td>0.000066</td>\n", + " <td>0.000076</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>12</td>\n", + " <td>133996</td>\n", + " <td>12:00-13:00</td>\n", + " <td>0.000083</td>\n", + " <td>0.000084</td>\n", + " <td>0.000082</td>\n", + " <td>0.000081</td>\n", + " <td>0.000073</td>\n", + " <td>0.000073</td>\n", + " <td>0.000081</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>13</td>\n", + " <td>137581</td>\n", + " <td>13:00-14:00</td>\n", + " <td>0.000084</td>\n", + " <td>0.000085</td>\n", + " <td>0.000083</td>\n", + " <td>0.000082</td>\n", + " <td>0.000073</td>\n", + " <td>0.000077</td>\n", + " <td>0.000084</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>14</td>\n", + " <td>138775</td>\n", + " <td>14:00-15:00</td>\n", + " <td>0.000080</td>\n", + " <td>0.000080</td>\n", + " <td>0.000078</td>\n", + " <td>0.000077</td>\n", + " <td>0.000070</td>\n", + " <td>0.000081</td>\n", + " <td>0.000088</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>15</td>\n", + " <td>176700</td>\n", + " <td>15:00-16:00</td>\n", + " <td>0.000092</td>\n", + " <td>0.000091</td>\n", + " <td>0.000089</td>\n", + " <td>0.000088</td>\n", + " <td>0.000082</td>\n", + " <td>0.000110</td>\n", + " <td>0.000116</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>16</td>\n", + " <td>185391</td>\n", + " <td>16:00-17:00</td>\n", + " <td>0.000090</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000086</td>\n", + " <td>0.000085</td>\n", + " <td>0.000120</td>\n", + " <td>0.000130</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>17</td>\n", + " <td>202694</td>\n", + " <td>17:00-18:00</td>\n", + " <td>0.000102</td>\n", + " <td>0.000098</td>\n", + " <td>0.000098</td>\n", + " <td>0.000098</td>\n", + " <td>0.000100</td>\n", + " <td>0.000142</td>\n", + " <td>0.000164</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>18</td>\n", + " <td>159655</td>\n", + " <td>18:00-19:00</td>\n", + " <td>0.000112</td>\n", + " <td>0.000106</td>\n", + " <td>0.000104</td>\n", + " <td>0.000103</td>\n", + " <td>0.000101</td>\n", + " <td>0.000135</td>\n", + " <td>0.000152</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>19</td>\n", + " <td>118915</td>\n", + " <td>19:00-20:00</td>\n", + " <td>0.000122</td>\n", + " <td>0.000116</td>\n", + " <td>0.000113</td>\n", + " <td>0.000109</td>\n", + " <td>0.000103</td>\n", + " <td>0.000131</td>\n", + " <td>0.000139</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>20</td>\n", + " <td>87214</td>\n", + " <td>20:00-21:00</td>\n", + " <td>0.000128</td>\n", + " <td>0.000122</td>\n", + " <td>0.000118</td>\n", + " <td>0.000114</td>\n", + " <td>0.000109</td>\n", + " <td>0.000132</td>\n", + " <td>0.000134</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>21</td>\n", + " <td>69608</td>\n", + " <td>21:00-22:00</td>\n", + " <td>0.000144</td>\n", + " <td>0.000136</td>\n", + " <td>0.000132</td>\n", + " <td>0.000127</td>\n", + " <td>0.000121</td>\n", + " <td>0.000139</td>\n", + " <td>0.000152</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>22</td>\n", + " <td>60838</td>\n", + " <td>22:00-23:00</td>\n", + " <td>0.000188</td>\n", + " <td>0.000173</td>\n", + " <td>0.000165</td>\n", + " <td>0.000161</td>\n", + " <td>0.000143</td>\n", + " <td>0.000152</td>\n", + " <td>0.000203</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>23</td>\n", + " <td>48123</td>\n", + " <td>23:00-00:00</td>\n", + " <td>0.000269</td>\n", + " <td>0.000251</td>\n", + " <td>0.000236</td>\n", + " <td>0.000224</td>\n", + " <td>0.000174</td>\n", + " <td>0.000170</td>\n", + " <td>0.000275</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " hour Total accidents Time of day Monday_Normalized Tuesday_Normalized \\\n", + "0 0 34976 00:00-01:00 0.000340 0.000324 \n", + "1 1 25340 01:00-02:00 0.000384 0.000352 \n", + "2 2 20055 02:00-03:00 0.000365 0.000318 \n", + "3 3 16310 03:00-04:00 0.000230 0.000223 \n", + "4 4 12989 04:00-05:00 0.000092 0.000099 \n", + "5 5 19228 05:00-06:00 0.000047 0.000049 \n", + "6 6 41476 06:00-07:00 0.000044 0.000043 \n", + "7 7 97895 07:00-08:00 0.000058 0.000056 \n", + "8 8 166145 08:00-09:00 0.000089 0.000087 \n", + "9 9 112595 09:00-10:00 0.000075 0.000074 \n", + "10 10 103173 10:00-11:00 0.000069 0.000070 \n", + "11 11 117755 11:00-12:00 0.000075 0.000076 \n", + "12 12 133996 12:00-13:00 0.000083 0.000084 \n", + "13 13 137581 13:00-14:00 0.000084 0.000085 \n", + "14 14 138775 14:00-15:00 0.000080 0.000080 \n", + "15 15 176700 15:00-16:00 0.000092 0.000091 \n", + "16 16 185391 16:00-17:00 0.000090 0.000087 \n", + "17 17 202694 17:00-18:00 0.000102 0.000098 \n", + "18 18 159655 18:00-19:00 0.000112 0.000106 \n", + "19 19 118915 19:00-20:00 0.000122 0.000116 \n", + "20 20 87214 20:00-21:00 0.000128 0.000122 \n", + "21 21 69608 21:00-22:00 0.000144 0.000136 \n", + "22 22 60838 22:00-23:00 0.000188 0.000173 \n", + "23 23 48123 23:00-00:00 0.000269 0.000251 \n", + "\n", + " Wednesday_Normalized Thursday_Normalized Friday_Normalized \\\n", + "0 0.000307 0.000299 0.000278 \n", + "1 0.000329 0.000329 0.000302 \n", + "2 0.000309 0.000304 0.000291 \n", + "3 0.000217 0.000215 0.000209 \n", + "4 0.000099 0.000099 0.000100 \n", + "5 0.000049 0.000050 0.000052 \n", + "6 0.000044 0.000044 0.000047 \n", + "7 0.000057 0.000057 0.000062 \n", + "8 0.000087 0.000087 0.000092 \n", + "9 0.000074 0.000073 0.000073 \n", + "10 0.000070 0.000069 0.000065 \n", + "11 0.000075 0.000074 0.000068 \n", + "12 0.000082 0.000081 0.000073 \n", + "13 0.000083 0.000082 0.000073 \n", + "14 0.000078 0.000077 0.000070 \n", + "15 0.000089 0.000088 0.000082 \n", + "16 0.000087 0.000086 0.000085 \n", + "17 0.000098 0.000098 0.000100 \n", + "18 0.000104 0.000103 0.000101 \n", + "19 0.000113 0.000109 0.000103 \n", + "20 0.000118 0.000114 0.000109 \n", + "21 0.000132 0.000127 0.000121 \n", + "22 0.000165 0.000161 0.000143 \n", + "23 0.000236 0.000224 0.000174 \n", + "\n", + " Saturday_Normalized Sunday_Normalized \n", + "0 0.000202 0.000187 \n", + "1 0.000226 0.000217 \n", + "2 0.000239 0.000251 \n", + "3 0.000209 0.000243 \n", + "4 0.000137 0.000183 \n", + "5 0.000099 0.000150 \n", + "6 0.000117 0.000184 \n", + "7 0.000163 0.000283 \n", + "8 0.000181 0.000336 \n", + "9 0.000089 0.000132 \n", + "10 0.000065 0.000081 \n", + "11 0.000066 0.000076 \n", + "12 0.000073 0.000081 \n", + "13 0.000077 0.000084 \n", + "14 0.000081 0.000088 \n", + "15 0.000110 0.000116 \n", + "16 0.000120 0.000130 \n", + "17 0.000142 0.000164 \n", + "18 0.000135 0.000152 \n", + "19 0.000131 0.000139 \n", + "20 0.000132 0.000134 \n", + "21 0.000139 0.000152 \n", + "22 0.000152 0.000203 \n", + "23 0.000170 0.000275 " + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "result60=pd.merge(TimeAccident_df_df, df, on=['hour'])\n", + "result60[\"Monday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Monday\"]\n", + "result60[\"Tuesday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Tuesday\"]\n", + "result60[\"Wednesday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Wednesday\"]\n", + "result60[\"Thursday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Thursday\"]\n", + "result60[\"Friday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Friday\"]\n", + "result60[\"Saturday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Saturday\"]\n", + "result60[\"Sunday_Normalized\"] = result60[\"Total accidents\"] / result60[\"Sunday\"]\n", + "result60 = result60.drop(['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'], axis=1)\n", + "result60" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>hour</th>\n", + " <th>Total accidents</th>\n", + " <th>Time of day</th>\n", + " <th>Monday_Normalized</th>\n", + " <th>Tuesday_Normalized</th>\n", + " <th>Wednesday_Normalized</th>\n", + " <th>Thursday_Normalized</th>\n", + " <th>Friday_Normalized</th>\n", + " <th>Saturday_Normalized</th>\n", + " <th>Sunday_Normalized</th>\n", + " <th>Total accidents_Normalized</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>0</td>\n", + " <td>34976</td>\n", + " <td>00:00-01:00</td>\n", + " <td>0.000340</td>\n", + " <td>0.000324</td>\n", + " <td>0.000307</td>\n", + " <td>0.000299</td>\n", + " <td>0.000278</td>\n", + " <td>0.000202</td>\n", + " <td>0.000187</td>\n", + " <td>0.001936</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>25340</td>\n", + " <td>01:00-02:00</td>\n", + " <td>0.000384</td>\n", + " <td>0.000352</td>\n", + " <td>0.000329</td>\n", + " <td>0.000329</td>\n", + " <td>0.000302</td>\n", + " <td>0.000226</td>\n", + " <td>0.000217</td>\n", + " <td>0.002139</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>20055</td>\n", + " <td>02:00-03:00</td>\n", + " <td>0.000365</td>\n", + " <td>0.000318</td>\n", + " <td>0.000309</td>\n", + " <td>0.000304</td>\n", + " <td>0.000291</td>\n", + " <td>0.000239</td>\n", + " <td>0.000251</td>\n", + " <td>0.002075</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>16310</td>\n", + " <td>03:00-04:00</td>\n", + " <td>0.000230</td>\n", + " <td>0.000223</td>\n", + " <td>0.000217</td>\n", + " <td>0.000215</td>\n", + " <td>0.000209</td>\n", + " <td>0.000209</td>\n", + " <td>0.000243</td>\n", + " <td>0.001547</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>4</td>\n", + " <td>12989</td>\n", + " <td>04:00-05:00</td>\n", + " <td>0.000092</td>\n", + " <td>0.000099</td>\n", + " <td>0.000099</td>\n", + " <td>0.000099</td>\n", + " <td>0.000100</td>\n", + " <td>0.000137</td>\n", + " <td>0.000183</td>\n", + " <td>0.000809</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>5</td>\n", + " <td>19228</td>\n", + " <td>05:00-06:00</td>\n", + " <td>0.000047</td>\n", + " <td>0.000049</td>\n", + " <td>0.000049</td>\n", + " <td>0.000050</td>\n", + " <td>0.000052</td>\n", + " <td>0.000099</td>\n", + " <td>0.000150</td>\n", + " <td>0.000496</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>6</td>\n", + " <td>41476</td>\n", + " <td>06:00-07:00</td>\n", + " <td>0.000044</td>\n", + " <td>0.000043</td>\n", + " <td>0.000044</td>\n", + " <td>0.000044</td>\n", + " <td>0.000047</td>\n", + " <td>0.000117</td>\n", + " <td>0.000184</td>\n", + " <td>0.000523</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>7</td>\n", + " <td>97895</td>\n", + " <td>07:00-08:00</td>\n", + " <td>0.000058</td>\n", + " <td>0.000056</td>\n", + " <td>0.000057</td>\n", + " <td>0.000057</td>\n", + " <td>0.000062</td>\n", + " <td>0.000163</td>\n", + " <td>0.000283</td>\n", + " <td>0.000735</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>8</td>\n", + " <td>166145</td>\n", + " <td>08:00-09:00</td>\n", + " <td>0.000089</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000092</td>\n", + " <td>0.000181</td>\n", + " <td>0.000336</td>\n", + " <td>0.000958</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>9</td>\n", + " <td>112595</td>\n", + " <td>09:00-10:00</td>\n", + " <td>0.000075</td>\n", + " <td>0.000074</td>\n", + " <td>0.000074</td>\n", + " <td>0.000073</td>\n", + " <td>0.000073</td>\n", + " <td>0.000089</td>\n", + " <td>0.000132</td>\n", + " <td>0.000591</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>10</td>\n", + " <td>103173</td>\n", + " <td>10:00-11:00</td>\n", + " <td>0.000069</td>\n", + " <td>0.000070</td>\n", + " <td>0.000070</td>\n", + " <td>0.000069</td>\n", + " <td>0.000065</td>\n", + " <td>0.000065</td>\n", + " <td>0.000081</td>\n", + " <td>0.000488</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>11</td>\n", + " <td>117755</td>\n", + " <td>11:00-12:00</td>\n", + " <td>0.000075</td>\n", + " <td>0.000076</td>\n", + " <td>0.000075</td>\n", + " <td>0.000074</td>\n", + " <td>0.000068</td>\n", + " <td>0.000066</td>\n", + " <td>0.000076</td>\n", + " <td>0.000511</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>12</td>\n", + " <td>133996</td>\n", + " <td>12:00-13:00</td>\n", + " <td>0.000083</td>\n", + " <td>0.000084</td>\n", + " <td>0.000082</td>\n", + " <td>0.000081</td>\n", + " <td>0.000073</td>\n", + " <td>0.000073</td>\n", + " <td>0.000081</td>\n", + " <td>0.000556</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>13</td>\n", + " <td>137581</td>\n", + " <td>13:00-14:00</td>\n", + " <td>0.000084</td>\n", + " <td>0.000085</td>\n", + " <td>0.000083</td>\n", + " <td>0.000082</td>\n", + " <td>0.000073</td>\n", + " <td>0.000077</td>\n", + " <td>0.000084</td>\n", + " <td>0.000568</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>14</td>\n", + " <td>138775</td>\n", + " <td>14:00-15:00</td>\n", + " <td>0.000080</td>\n", + " <td>0.000080</td>\n", + " <td>0.000078</td>\n", + " <td>0.000077</td>\n", + " <td>0.000070</td>\n", + " <td>0.000081</td>\n", + " <td>0.000088</td>\n", + " <td>0.000553</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>15</td>\n", + " <td>176700</td>\n", + " <td>15:00-16:00</td>\n", + " <td>0.000092</td>\n", + " <td>0.000091</td>\n", + " <td>0.000089</td>\n", + " <td>0.000088</td>\n", + " <td>0.000082</td>\n", + " <td>0.000110</td>\n", + " <td>0.000116</td>\n", + " <td>0.000668</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>16</td>\n", + " <td>185391</td>\n", + " <td>16:00-17:00</td>\n", + " <td>0.000090</td>\n", + " <td>0.000087</td>\n", + " <td>0.000087</td>\n", + " <td>0.000086</td>\n", + " <td>0.000085</td>\n", + " <td>0.000120</td>\n", + " <td>0.000130</td>\n", + " <td>0.000685</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>17</td>\n", + " <td>202694</td>\n", + " <td>17:00-18:00</td>\n", + " <td>0.000102</td>\n", + " <td>0.000098</td>\n", + " <td>0.000098</td>\n", + " <td>0.000098</td>\n", + " <td>0.000100</td>\n", + " <td>0.000142</td>\n", + " <td>0.000164</td>\n", + " <td>0.000802</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>18</td>\n", + " <td>159655</td>\n", + " <td>18:00-19:00</td>\n", + " <td>0.000112</td>\n", + " <td>0.000106</td>\n", + " <td>0.000104</td>\n", + " <td>0.000103</td>\n", + " <td>0.000101</td>\n", + " <td>0.000135</td>\n", + " <td>0.000152</td>\n", + " <td>0.000812</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>19</td>\n", + " <td>118915</td>\n", + " <td>19:00-20:00</td>\n", + " <td>0.000122</td>\n", + " <td>0.000116</td>\n", + " <td>0.000113</td>\n", + " <td>0.000109</td>\n", + " <td>0.000103</td>\n", + " <td>0.000131</td>\n", + " <td>0.000139</td>\n", + " <td>0.000832</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>20</td>\n", + " <td>87214</td>\n", + " <td>20:00-21:00</td>\n", + " <td>0.000128</td>\n", + " <td>0.000122</td>\n", + " <td>0.000118</td>\n", + " <td>0.000114</td>\n", + " <td>0.000109</td>\n", + " <td>0.000132</td>\n", + " <td>0.000134</td>\n", + " <td>0.000856</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>21</td>\n", + " <td>69608</td>\n", + " <td>21:00-22:00</td>\n", + " <td>0.000144</td>\n", + " <td>0.000136</td>\n", + " <td>0.000132</td>\n", + " <td>0.000127</td>\n", + " <td>0.000121</td>\n", + " <td>0.000139</td>\n", + " <td>0.000152</td>\n", + " <td>0.000952</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>22</td>\n", + " <td>60838</td>\n", + " <td>22:00-23:00</td>\n", + " <td>0.000188</td>\n", + " <td>0.000173</td>\n", + " <td>0.000165</td>\n", + " <td>0.000161</td>\n", + " <td>0.000143</td>\n", + " <td>0.000152</td>\n", + " <td>0.000203</td>\n", + " <td>0.001184</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>23</td>\n", + " <td>48123</td>\n", + " <td>23:00-00:00</td>\n", + " <td>0.000269</td>\n", + " <td>0.000251</td>\n", + " <td>0.000236</td>\n", + " <td>0.000224</td>\n", + " <td>0.000174</td>\n", + " <td>0.000170</td>\n", + " <td>0.000275</td>\n", + " <td>0.001599</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " hour Total accidents Time of day Monday_Normalized Tuesday_Normalized \\\n", + "0 0 34976 00:00-01:00 0.000340 0.000324 \n", + "1 1 25340 01:00-02:00 0.000384 0.000352 \n", + "2 2 20055 02:00-03:00 0.000365 0.000318 \n", + "3 3 16310 03:00-04:00 0.000230 0.000223 \n", + "4 4 12989 04:00-05:00 0.000092 0.000099 \n", + "5 5 19228 05:00-06:00 0.000047 0.000049 \n", + "6 6 41476 06:00-07:00 0.000044 0.000043 \n", + "7 7 97895 07:00-08:00 0.000058 0.000056 \n", + "8 8 166145 08:00-09:00 0.000089 0.000087 \n", + "9 9 112595 09:00-10:00 0.000075 0.000074 \n", + "10 10 103173 10:00-11:00 0.000069 0.000070 \n", + "11 11 117755 11:00-12:00 0.000075 0.000076 \n", + "12 12 133996 12:00-13:00 0.000083 0.000084 \n", + "13 13 137581 13:00-14:00 0.000084 0.000085 \n", + "14 14 138775 14:00-15:00 0.000080 0.000080 \n", + "15 15 176700 15:00-16:00 0.000092 0.000091 \n", + "16 16 185391 16:00-17:00 0.000090 0.000087 \n", + "17 17 202694 17:00-18:00 0.000102 0.000098 \n", + "18 18 159655 18:00-19:00 0.000112 0.000106 \n", + "19 19 118915 19:00-20:00 0.000122 0.000116 \n", + "20 20 87214 20:00-21:00 0.000128 0.000122 \n", + "21 21 69608 21:00-22:00 0.000144 0.000136 \n", + "22 22 60838 22:00-23:00 0.000188 0.000173 \n", + "23 23 48123 23:00-00:00 0.000269 0.000251 \n", + "\n", + " Wednesday_Normalized Thursday_Normalized Friday_Normalized \\\n", + "0 0.000307 0.000299 0.000278 \n", + "1 0.000329 0.000329 0.000302 \n", + "2 0.000309 0.000304 0.000291 \n", + "3 0.000217 0.000215 0.000209 \n", + "4 0.000099 0.000099 0.000100 \n", + "5 0.000049 0.000050 0.000052 \n", + "6 0.000044 0.000044 0.000047 \n", + "7 0.000057 0.000057 0.000062 \n", + "8 0.000087 0.000087 0.000092 \n", + "9 0.000074 0.000073 0.000073 \n", + "10 0.000070 0.000069 0.000065 \n", + "11 0.000075 0.000074 0.000068 \n", + "12 0.000082 0.000081 0.000073 \n", + "13 0.000083 0.000082 0.000073 \n", + "14 0.000078 0.000077 0.000070 \n", + "15 0.000089 0.000088 0.000082 \n", + "16 0.000087 0.000086 0.000085 \n", + "17 0.000098 0.000098 0.000100 \n", + "18 0.000104 0.000103 0.000101 \n", + "19 0.000113 0.000109 0.000103 \n", + "20 0.000118 0.000114 0.000109 \n", + "21 0.000132 0.000127 0.000121 \n", + "22 0.000165 0.000161 0.000143 \n", + "23 0.000236 0.000224 0.000174 \n", + "\n", + " Saturday_Normalized Sunday_Normalized Total accidents_Normalized \n", + "0 0.000202 0.000187 0.001936 \n", + "1 0.000226 0.000217 0.002139 \n", + "2 0.000239 0.000251 0.002075 \n", + "3 0.000209 0.000243 0.001547 \n", + "4 0.000137 0.000183 0.000809 \n", + "5 0.000099 0.000150 0.000496 \n", + "6 0.000117 0.000184 0.000523 \n", + "7 0.000163 0.000283 0.000735 \n", + "8 0.000181 0.000336 0.000958 \n", + "9 0.000089 0.000132 0.000591 \n", + "10 0.000065 0.000081 0.000488 \n", + "11 0.000066 0.000076 0.000511 \n", + "12 0.000073 0.000081 0.000556 \n", + "13 0.000077 0.000084 0.000568 \n", + "14 0.000081 0.000088 0.000553 \n", + "15 0.000110 0.000116 0.000668 \n", + "16 0.000120 0.000130 0.000685 \n", + "17 0.000142 0.000164 0.000802 \n", + "18 0.000135 0.000152 0.000812 \n", + "19 0.000131 0.000139 0.000832 \n", + "20 0.000132 0.000134 0.000856 \n", + "21 0.000139 0.000152 0.000952 \n", + "22 0.000152 0.000203 0.001184 \n", + "23 0.000170 0.000275 0.001599 " + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result61=result60\n", + "column_list = list(result61)\n", + "column_list.remove(\"Time of day\")\n", + "column_list.remove(\"hour\")\n", + "column_list.remove(\"Total accidents\")\n", + "\n", + "result61[\"Total accidents_Normalized\"] = result61[column_list].sum(axis=1)\n", + "result61" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>hour</th>\n", + " <th>Total accidents_Normalized</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>0</td>\n", + " <td>0.001936</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>0.002139</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>0.002075</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>0.001547</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>4</td>\n", + " <td>0.000809</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>5</td>\n", + " <td>0.000496</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>6</td>\n", + " <td>0.000523</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>7</td>\n", + " <td>0.000735</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>8</td>\n", + " <td>0.000958</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>9</td>\n", + " <td>0.000591</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>10</td>\n", + " <td>0.000488</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>11</td>\n", + " <td>0.000511</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>12</td>\n", + " <td>0.000556</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>13</td>\n", + " <td>0.000568</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>14</td>\n", + " <td>0.000553</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>15</td>\n", + " <td>0.000668</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>16</td>\n", + " <td>0.000685</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>17</td>\n", + " <td>0.000802</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>18</td>\n", + " <td>0.000812</td>\n", + " </tr>\n", + " <tr>\n", + " <th>19</th>\n", + " <td>19</td>\n", + " <td>0.000832</td>\n", + " </tr>\n", + " <tr>\n", + " <th>20</th>\n", + " <td>20</td>\n", + " <td>0.000856</td>\n", + " </tr>\n", + " <tr>\n", + " <th>21</th>\n", + " <td>21</td>\n", + " <td>0.000952</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22</th>\n", + " <td>22</td>\n", + " <td>0.001184</td>\n", + " </tr>\n", + " <tr>\n", + " <th>23</th>\n", + " <td>23</td>\n", + " <td>0.001599</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " hour Total accidents_Normalized\n", + "0 0 0.001936\n", + "1 1 0.002139\n", + "2 2 0.002075\n", + "3 3 0.001547\n", + "4 4 0.000809\n", + "5 5 0.000496\n", + "6 6 0.000523\n", + "7 7 0.000735\n", + "8 8 0.000958\n", + "9 9 0.000591\n", + "10 10 0.000488\n", + "11 11 0.000511\n", + "12 12 0.000556\n", + "13 13 0.000568\n", + "14 14 0.000553\n", + "15 15 0.000668\n", + "16 16 0.000685\n", + "17 17 0.000802\n", + "18 18 0.000812\n", + "19 19 0.000832\n", + "20 20 0.000856\n", + "21 21 0.000952\n", + "22 22 0.001184\n", + "23 23 0.001599" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "result61_U = result61.drop(['Total accidents',\t'Time of day',\t'Monday_Normalized',\t'Tuesday_Normalized',\t'Wednesday_Normalized',\t'Thursday_Normalized',\t'Friday_Normalized',\t'Saturday_Normalized',\t'Sunday_Normalized'], axis=1)\n", + "result61_U" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJoAAAJfCAYAAAA3nLy7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAABFc0lEQVR4nO3deZhlVXkv/u9LoyAOoNBRFJSOQhRsGWxR4/UGRS/tEFHjABgFNXKNeJObX6LBG6KGhFwwJiZOSUxQlAsCQaOdBJzHDCItggyKaUEERCWoOII0vr8/zu62KKu7qmF3VxV8Ps9TT5+z9t5rv/vUoTj1rbXWru4OAAAAANxWW813AQAAAADcPgiaAAAAABiFoAkAAACAUQiaAAAAABiFoAkAAACAUQiaAAAAABiFoAkA2KiquriqDtjAtgOq6qotW9HiU1WfqKrfGB4/r6o+NHL/u1VVV9XWG9j+1ap6wpjnnNJ3V9WDhsd/U1V/OFK/96+qH1TVkuH5+tdwpP7PrqrDx+oPAJgQNAHA7dDwS/l3qmqb29pXd+/V3Z8YoayNui1hyHDst6rqrlPafqOqPjFagSPp7lO6+3/Mdx2bQ3e/tLv/eLb95vK97u6vdffduvvm21pXVb22qv7ftP6f1N3vvK19AwC3JGgCgNuZqtotyWOTdJKnzW81W9SSJL99WzupCZ+R5tGGRmYBAAufD1EAcPvzgiSfSXJSkltMDaqqXavqvVV1bVVdV1VvnrLtJVX1xar6flVdUlX7De3rR59U1V2q6qRhtNQlSR4xrf/7VtV7hv4vr6rfmrLttVV1RlW9azjHxVW1Yth2cpL7J/mnYbrUK6tq26r6f0Od362qc6vq3hu57j9L8ntVtcNMG6vql4c+rh/+/eUp2z5RVcdV1b8l+VGSXxymhL2sqv5zqPePq+qBVfXvVfW94VruPBx/z6r65+G6vzM83mUDdRxRVf86PH7lcL3rvm6qqpOGbdtX1YlVdU1VXV1VfzJlGtmSqnp9Vf1XVV2W5CkbeV3WecTwff1OVb2jqrYd+rqoqn51Sn13GvrddwP1v2Ko6etV9aJp206qqj8ZHu80vA7frapvV9Wnq2qrDXyv1039e3FVfS3Jx2rm6YAPrKrPDq//+6vqXsO5fm4K57r3bVWtTPJ/kjx3ON8Fw/ap0xm3qqpjquqKmoyMe1dVbT9sW1fH4VX1teG1+YM5vN4AcIckaAKA258XJDll+DpoXTgzhBT/nOSKJLsluV+S04Ztz07y2uHYe2QyEuq6Gfp+TZIHDl8HZUqQVZNRQP+U5IKh7wOT/O+qOmjK8U8bzrlDklVJ3pwk3f38JF9L8qvDdKnXDX1vn2TXJDsmeWmSH2/kulcn+USS35u+YQgk/iXJG4e+/iLJv1TVjlN2e36SI5PcfXiNMlzjw5M8Kskrk7wtya8PNT00yaHDflsleUeSB2QSovx43bVtTHe/brjeuyV5SJJrk5w+bD4pydokD0qyb5L/kWTdGkUvSfLUoX1FkmfNdq4kzxuu54FJ9khyzND+ruGa1nlykmu6+/PTOxhCm99L8sQkuyfZ2PS3301yVZKlSe6dSdjTG/her/MrmbwOB03vbPCCJC9KsnMmr80bN3L+ZHLCDyT50ySnD+fbe4bdjhi+HpfkF5PcLT///ftvSX4pk/f1q6vqIbOdGwDuiARNAHA7UlX/LZOw44zu/lySryQ5bNi8f5L7JnlFd/+wu2/o7n8dtv1Gktd197k9saa7r/i5EyTPSXJcd3+7u6/MLX/Rf0SSpd19bHf/pLsvS/J3SQ6Zss+/dvdZw7o7JyeZ6Zf+dW7KJBR6UHff3N2f6+7vzfISvDrJ/6qqpdPan5LkP7v75O5e293vTvKlJL86ZZ+TuvviYftNQ9vruvt73X1xkouSfKi7L+vu65OcnUnQk+6+rrvf090/6u7vJzkuk9BkTqrqLknel+SvuvvsIRx8cpL/PXyvvpXkDfnZa/mcJH/Z3Vd297eT/N85nObNU/Y/Lj8Lyf5fkidX1T2G58/P5Hszk+ckeUd3X9TdP8wknNyQmzIJhB7Q3Td196e7u2ep8bXD9W4oUDx5yrn/MMlz1o3yuo2el+Qvhu/tD5K8Kskh00ZT/VF3/7i7L8gkTN3YexcA7rAETQBw+3J4JmHIfw3PT83PRh3tmuSK7l47w3G7ZhJKzea+Sa6c8nxqGPWAJPcdpkp9t6q+m8kolqnT3b4x5fGPkmxbG16P5+QkH0xy2jBN63VVdaeNFdfdF2UyauvoGeqeHpxdkcnIq3WuzM/75pTHP57h+d2SpKq2q6q/HaZefS/Jp5LssAkhyIlJLu3uE4bnD0hypyTXTHkt/zbJL0y5ng19HzZk+v73TZLu/nqSf0vyazWZdvikTEbDzWRTzvtnSdYk+VBVXVZV078ns9U42/YrMnmNdppDv7OZ/v64IsnW2fh7924jnBcAbncstAgAtxPDqJjnJFlSVet+Kd4mk8Bj70x+Sb9/VW09Q9h0ZSZTqmZzTSah1MXD8/tP6+Py7t79Vl7CLUa7DKOK/ijJH9VkgfOzklyaSSizMa9Jcl6SP5/S9vVMwpup7p/kAxs6/yb63UymVT2yu79RVfsk+XySmu3AIYDZI5MF3Ne5MsmNSXbaQDC47vuwzv1n2Ge66ft/fcrzd2Yyqm3rJP/R3VdvoI85n3cY2fW7SX63qh6aybpL53b3R7Ph13q278H0c9+U5L+S/DDJdus2DAHf1FFts/U7/f1x/0ym5n0zyYxrbQEAMzOiCQBuP56e5OYkeybZZ/h6SJJPZ7K2zWczCQqOr6q71mSx7ccMx/59JgtpP7wmHlRV04OZJDkjyatqsvj1Lkn+15Rtn03y/ar6/ZosGr6kqh5aVY+YoZ+ZfDOT9XGSJFX1uKpaPoQG38skVPjpbJ1095pM1jn6rSnNZyXZo6oOq6qtq+q5mbxO/zzH2mZz90xGOH13WA/qNXM5qKqeNNT5jKnTxbr7miQfSvLnVXWPYbHqB1bVuul4ZyT5raraparumZ8fwTWTo4b975XkD/KztaCSybS9/TK5a9+7NtLHGUmOqKo9q2q7jV1nVT11eB9VkuszeW+u+/7d4nu9CX59yrmPTXLmMA3zy5mMjnvKMOrtmExC1nW+mWS32vDdBN+d5HeqallV3S0/W9NpppAPANgIQRMA3H4cnsn6OV/r7m+s+8pkUePnZTK65lczWVz6a5ks1PzcJOnuf8hk3Z5Tk3w/k+DhXjOc448ymVZ0eSZByPq1fIZf+J+aScB1eSYjTf4+kwW95+L/JjlmmCr2e0nuk+TMTEKmLyb5ZDa8dtB0xya565Tarhtq+91MFjl/ZZKnTplieFv9ZZK7ZHLNn8ktR0ptzHMzGXnzxfrZnef+Ztj2giR3TnJJku9k8lrsPGz7u0ymFV6Qyeit987hXKdm8j27LJNpkn+ybsMQcr0nybKN9dXdZ2dyrR/LZFrcxzZyvt2TfCTJD5L8R5K3dvfHh23Tv9dzdXImi6R/I8m2GcLEYc2sl2Xyfrs6kxFOU+9C9w/Dv9dV1Xkz9Pv2oe9PZfLevSG3DFEBgDmq2ddkBADg9q6qXp1kj+7+9Vl3BgDYAGs0AQDcwQ3T6V6cyR3nAABuNVPnAADuwKrqJZksPn52d39qvusBABY3U+cAAAAAGIURTQAAAACM4na9RtNOO+3Uu+2223yXAQAAAHC78bnPfe6/unvpTNtu10HTbrvtltWrV893GQAAAAC3G1V1xYa2mToHAAAAwCgETQAAAACMQtAEAAAAwChu12s0AQAAwEJz00035aqrrsoNN9ww36XARm277bbZZZddcqc73WnOxwiaAAAAYAu66qqrcve73z277bZbqmq+y4EZdXeuu+66XHXVVVm2bNmcjzN1DgAAALagG264ITvuuKOQiQWtqrLjjjtu8sg7QRMAAABsYUImFoNb8z4VNAEAAAAwCms0AQAAwHw6deTRTYf1uP3BJjCiCQAAAO5Arrvuuuyzzz7ZZ599cp/73Cf3u9/91j//yU9+cot9//Iv/zI/+tGPZu3zgAMOyOrVqzdLva9+9avzkY985OfaP/GJT+SpT33qre73T//0T2/VcQcccEBWrFix/vnq1atzwAEH3Oo6bo3Xvva1ef3rX59kw6/Pprrb3e52m/tIBE0AAABwh7Ljjjvm/PPPz/nnn5+XvvSl+Z3f+Z31z+985zvfYt+5Bk2b07HHHpsnPOEJo/d7a4OmJPnWt76Vs88++1Ydu3bt2lt93plsrtfn1hI0AQAAwB3cRz/60ey7775Zvnx5XvSiF+XGG2/MG9/4xnz961/P4x73uDzucY9Lkvzmb/5mVqxYkb322iuvec1rZu332GOPzSMe8Yg89KEPzZFHHpnuybS+NWvW5AlPeEL23nvv7LfffvnKV76SJDnhhBOyfPny7L333jn66KOTJEcccUTOPPPMJMkHPvCBPPjBD85+++2X9773vevP88Mf/jAvetGLsv/++2fffffN+9///iTJSSedlGc+85lZuXJldt9997zyla9Mkhx99NH58Y9/nH322SfPe97z8sMf/jBPecpTsvfee+ehD31oTj/99I1e1yte8Yocd9xxP9d+ww035IUvfGGWL1+efffdNx//+MfX1/G0pz0tj3/843PggQfmpJNOytOf/vQ88YlPzG677ZY3v/nN+Yu/+Ivsu+++edSjHpVvf/vbSZK/+7u/yyMe8Yjsvffe+bVf+7UZQ791r8/q1avXj0xbvnz5+oW8v/KVr2TlypV5+MMfnsc+9rH50pe+lCS5/PLL8+hHPzrLly/PMcccM+v3cq4ETQAAAHAHdsMNN+SII47I6aefngsvvDBr167NX//1X+e3fuu3ct/73jcf//jH1wcmxx13XFavXp0vfOEL+eQnP5kvfOELG+375S9/ec4999xcdNFF+fGPf5x//ud/TpI873nPy1FHHZULLrgg//7v/56dd945Z599dt7//vfnnHPOyQUXXLA+FJpa50te8pL80z/9Uz73uc/lG9/4xvptxx13XB7/+Mfns5/9bD7+8Y/nFa94RX74wx8mSc4///z113b66afnyiuvzPHHH5+73OUuOf/883PKKafkAx/4QO573/vmggsuyEUXXZSVK1du9Loe/ehH5853vvP612Wdt7zlLamqXHjhhXn3u9+dww8/PDfccEOS5LzzzsuZZ56ZT37yk0mSiy66KO9973tz7rnn5g/+4A+y3Xbb5fOf/3we/ehH513veleS5JnPfGbOPffcXHDBBXnIQx6SE088cYM1rVixYv3ItJUrV+b3fu/3kiRHHnlk3vSmN+Vzn/tcXv/61+dlL3tZkuS3f/u385u/+Zu58MILs/POO2/0ejeFoAkAAADuwG6++eYsW7Yse+yxR5Lk8MMPz6c+9akZ9z3jjDOy3377Zd99983FF1+cSy65ZKN9f/zjH88jH/nILF++PB/72Mdy8cUX5/vf/36uvvrqPOMZz0iSbLvtttluu+3ykY98JC984Quz3XbbJUnuda973aKvL33pS1m2bFl23333VFV+/dd/ff22D33oQzn++OOzzz775IADDsgNN9yQr33ta0mSAw88MNtvv3223Xbb7Lnnnrniiit+rs7ly5fnwx/+cH7/938/n/70p7P99tvP+rodc8wx+ZM/+ZNbtP3rv/7r+roe/OAH5wEPeEC+/OUvJ0me+MQn3uKaHve4x+Xud797li5dmu233z6/+qu/ur6Wr371q0kmYdRjH/vYLF++PKecckouvvjiWes6/fTTc9555+X444/PD37wg/z7v/97nv3sZ2efffbJ//yf/zPXXHNNkuTf/u3fcuihhyZJnv/858/a71y56xwAAAAwq8svvzyvf/3rc+655+ae97xnjjjiiPWjdWZyww035GUve1lWr16dXXfdNa997Ws3uv9t0d15z3vek1/6pV+6Rfs555yTbbbZZv3zJUuWzLhG0h577JHzzjsvZ511Vo455pgceOCBefWrX73Rcz7+8Y/PMccck8985jNzqvGud73rLZ5PrWurrbZa/3yrrbZaX+MRRxyR973vfdl7771z0kkn5ROf+MRGz3HRRRflta99bT71qU9lyZIl+elPf5oddtgh559//oz7r5teNyYjmgAAAGA+Hdbjfm2iJUuW5Ktf/WrWrFmTJDn55JPzK7/yK0mSu9/97vn+97+fJPne976Xu971rtl+++3zzW9+c9bFsNeFSjvttFN+8IMfrF9n6e53v3t22WWXvO9970uS3HjjjfnRj36UJz7xiXnHO96xfh2idesUrfPgBz84X/3qV9ev5/Tud797/baDDjoob3rTm9avAfX5z39+1uu+053ulJtuuilJ8vWvfz3bbbddfv3Xfz2veMUrct555816fDIZ1fS6171u/fPHPvaxOeWUU5IkX/7yl/O1r33t58KvTfH9738/O++8c2666ab1/W7Id7/73Rx66KF517velaVLlyZJ7nGPe2TZsmX5h3/4hySTQO6CCy5IkjzmMY/JaaedliSz9r0pBE0AAABwB7btttvmHe94R5797Gdn+fLl2WqrrfLSl740yWR9n5UrV+Zxj3tc9t577+y777558IMfnMMOOyyPecxjNtrvDjvskJe85CV56EMfmoMOOiiPeMQj1m87+eST88Y3vjEPe9jD8su//Mv5xje+kZUrV+ZpT3taVqxYkX322Sevf/3rf67Ot73tbXnKU56S/fbbL7/wC7+wftsf/uEf5qabbsrDHvaw7LXXXvnDP/zDWa/7yCOPzMMe9rA873nPy4UXXpj9998/++yzT/7oj/5ozotjP/nJT14f6iTJy172svz0pz/N8uXL89znPjcnnXTSLUYubao//uM/ziMf+cg85jGPyYMf/OCN7vv+978/V1xxRV7ykpesXxQ8mYRIJ554Yvbee+/stdde6xdK/6u/+qu85S1vyfLly3P11Vff6hqnq3Vp3+3RihUrevXq1fNdBgAAAKz3xS9+MQ95yEPmuwyYk5ner1X1ue5eMdP+RjQBAAAAMAqLgQMAAABM84xnPCOXX375LdpOOOGEHHTQQfNU0eIgaAIAAIAtrLs3yx2/GM8//uM/zncJ8+7WLLdk6hwAAABsQdtuu22uu+66W/VLPGwp3Z3rrrsu22677SYd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", + "text/plain": [ + "<Figure size 1440x720 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "ax=result61_U.plot.bar('hour','Total accidents_Normalized', rot=90,title=\"Accidents Normalized by distribution \",figsize=(20, 10),color=\"Orange\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Over the years" + ] + }, + { + "cell_type": "code", + "execution_count": 111, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+----+------------------+\n", + "|road_name|year|all_motor_vehicles|\n", + "+---------+----+------------------+\n", + "| A|2005| 8|\n", + "| A|2005| 3|\n", + "| A|2005| 13|\n", + "| A|2005| 14|\n", + "| A|2005| 11|\n", + "| A|2005| 11|\n", + "| A|2005| 13|\n", + "| A|2005| 13|\n", + "| A|2005| 13|\n", + "| A|2005| 10|\n", + "| A|2005| 17|\n", + "| A|2005| 4|\n", + "| A|2005| 5|\n", + "| A|2005| 13|\n", + "| A|2005| 12|\n", + "| A|2005| 7|\n", + "| A|2005| 16|\n", + "| A|2005| 7|\n", + "| A|2005| 9|\n", + "| A|2005| 18|\n", + "+---------+----+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "TrafficvolumeGroupedupdated.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>B</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>M</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>U</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>C</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>A</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name\n", + "0 B\n", + "1 M\n", + "2 U\n", + "3 C\n", + "4 A" + ] + }, + "execution_count": 116, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "road_length_traffic" + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'Trafficvolume'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m 2897\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2898\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcasted_key\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2899\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Trafficvolume'", + "\nThe above exception was the direct cause of the following exception:\n", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-102-20660c43864d>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[0mresult24\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmerge\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mA2018t_df_notyear_df\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mroad_length_traffic\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mon\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'road_name'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 15\u001b[0;31m \u001b[0mresult24\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Accident Probability\"\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mresult24\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Total accidents\"\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0mresult24\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Trafficvolume\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 16\u001b[0m \u001b[0mresult24\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mresult24\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Total accidents'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'Trafficvolume'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 17\u001b[0m \u001b[0max\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mresult24\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'road_name'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'Accident Probability'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrot\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mtitle\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"Accidents probabilty over road type \"\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mfigsize\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m20\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mcolor\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"Orange\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/frame.py\u001b[0m in \u001b[0;36m__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 2904\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mnlevels\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2905\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_getitem_multilevel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2906\u001b[0;31m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2907\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mis_integer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindexer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2908\u001b[0m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mindexer\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m 2898\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcasted_key\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2899\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2900\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2901\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2902\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mtolerance\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Trafficvolume'" + ] + } + ], + "source": [ + "A2018t_df_notyear = A2018.groupby(\"first_road_class\").agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "A2018t_df_notyear = A2018t_df_notyear.withColumnRenamed(\"first_road_class\", \"road_name\")\n", + "A2018t_df_notyear_df=A2018t_df_notyear.toPandas()\n", + "\n", + "\n", + "TrafficvolumeGrouped_notyear=TrafficvolumeGroupedupdated.select(col(\"road_name\"),col(\"all_motor_vehicles\"))\n", + "TrafficvolumeGrouped_notyear = TrafficvolumeGrouped_notyear.groupby('road_name').agg(F.sum(TrafficvolumeGroupedupdated['all_motor_vehicles']).alias('all_motor_vehicles'))\n", + "\n", + "TrafficvolumeGrouped_notyear_df=TrafficvolumeGrouped_notyear.toPandas()\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 120, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>road_name</th>\n", + " <th>Total accidents</th>\n", + " <th>Trafficvolume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>B</td>\n", + " <td>286824</td>\n", + " <td>2.057755e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>M</td>\n", + " <td>86106</td>\n", + " <td>8.846338e+11</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>U</td>\n", + " <td>687752</td>\n", + " <td>1.175274e+13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>C</td>\n", + " <td>188025</td>\n", + " <td>3.374912e+12</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>A</td>\n", + " <td>1038720</td>\n", + " <td>3.126184e+13</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " road_name Total accidents Trafficvolume\n", + "0 B 286824 2.057755e+12\n", + "1 M 86106 8.846338e+11\n", + "2 U 687752 1.175274e+13\n", + "3 C 188025 3.374912e+12\n", + "4 A 1038720 3.126184e+13" + ] + }, + "execution_count": 120, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "road_length_total = pd.read_csv ('/Users/Asfandyar/Desktop/disertation/diseration_final/road_length.csv')\n", + "road_length_traffic=pd.merge(TrafficvolumeGrouped_notyear_df, road_length_total, on=['road_name'])\n", + "road_length_traffic[\"link_length_km\"]=road_length_traffic[\"link_length_km\"].str.replace(',','')\n", + "road_length_traffic[\"link_length_km\"] = road_length_traffic[\"link_length_km\"].astype(float)\n", + "road_length_traffic[\"Trafficvolume\"] = road_length_traffic[\"all_motor_vehicles\"] * road_length_traffic[\"link_length_km\"]\n", + "road_length_traffic=road_length_traffic.drop(['all_motor_vehicles', 'link_length_km'], axis=1)\n", + "result24=pd.merge(A2018t_df_notyear_df, road_length_traffic, on=['road_name'])\n", + "result24" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJQAAAJ8CAYAAACobfuQAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAABehklEQVR4nO3deZglVX038O8PBhDZURCjLCoo4AIKKkYUEBUUVEZQeXEbNS8KiPoajagxITEJLlGj4r6hKCpoxA13BXGX4C4Yt0HcEEX2nTnvH1U9c2n69nTN9HQPw+fzPPXUVNWpU+fWrdvT99unTlVrLQAAAAAwU2vNdwMAAAAAuHkRKAEAAAAwiEAJAAAAgEEESgAAAAAMIlACAAAAYBCBEgAAAACDCJQA1jBVdWJVtX767/luzzhVdXrfxhNWoo7FfR3Hzl7LmC8j1+2ieTr+diNt2HsF69h7pI7tptjummVeVdUJ/TV4+ny3BYCbN4ESwBqkqjZMsnBk1QFVtfl8teeWzhc3hqiqY/vrZfF8twXGme/gF4DVh0AJYM1ycJINRpbXTXLoPLUFAABYQy2Y7wYAMKue0s9/leSaJDv16948by0ao7W293y3AWZba+30JDXf7QAAWNX0UAJYQ1TV1kn27hdP7KckuX9V3XVeGgUAAKyRBEoAa44nZdnP9ff3U+uXnzyTCqrqzlX12qr6QVX9taquqqpfVtXnqur/TTceU1U9uqo+XFXn9ftdVFU/7AcJf3RV1aTyyx2Uu6q2qaq3V9VvquqaqvptVb2/qu45k9fT17F+VT2vqs6oqgur6tqq+mNVnVpVj5xmvxuNZ9MP2PyWflDla6rqgqr6SFXde4p9F1VVS/LUftVeI+OOTEwnTNpn26p6XVX9qKou79v5+6r6fn8OFk4+zgxe+40GiK6qLarqNVX18/49urA/Dw8ccB52rqp3VtWv+/Nw8aTya1XVk6vqs1X1p/51/KlffuLk62Ca4y7or7n/qapL++lrVfWU5ex3h6p6VlV9cuS6uaKq/req3lFV95jJ8fu6Nqiqf66qn/R1XFRVX6iqA6fZZ9pBuafbJ8k/96u2neJ6Ob0v+/Z++XdVtfZy6n1BX/bq6T670+w/+L2sqiP7Y95QVXdYTv0PHnl9DxtTZt+qOqm6nytXV9UlVfXdqjqmqjYYs8+NBlev7mfAMf21dHG//qAB5+FGA6lX1WFV9cXqfgYsqar/mlR+i6r6j+p+jl5ay36OvqOq7r6cY21fVc+vqs9X9/m/tq/jx1X1XzO5pqrq1lX1T/11O/E5/3xVPWqmr3lMvaf31+mE90xxne5dVVv373+rqmctp871quovfdlXj6yf/B4O/ixOOs7g6wiAGWitmUwmk2kNmJL8NF2A9I2RdV/u1/06SS1n/79Pcl1fftz0vCn22zzJF5ezX0uy6aT9Tu/XnzCmPQ9McumYuq5KcmCSxf3ysWPquNdImXHTu5OsPcW+x/bbFyfZK8nFY/a/OslDJ+27aAbn44SR8nsluXw55S9fgWti75H990ly/pi6lyR5zpg6Rs/DY/pzP7rvxSNlN01yxnJex5eSbDzmWBNlDs+ya3eq6cNTvWd9HX9dzvGvS/K0MftuN1JuYZIfTVPPf87gnG83xfbFmXTNTtpn3HR6X/b+I+v2X877/5OJ87UC184KvZdJbpPk2n77C5dzjLf15X6fZK1J226V5KTlHP+XSXZYzvt48Jj38aAB52LiPfuXJB+Yoq7/Gim7T8b/rGhJrs8UP0f7fTeZwXVw2XTve5LbZdn/BVNNL09ywug1NeA8nD6D9u3dl/1Mv/yt5dT5uJF9d5rNz+LKXkcmk8lkWv407w2Y9ReU3C3Jc9P9Zf7cdL8ktySHzHfbxrR30Qz+c25Jlsx3W00m0+o7JbnvyM+LI0bWP21k/V7T7P+8kXLnpBt3abt0Xyrvmq6H06cyKXRIN+j3t0f2/UC6L8e3S7JFui+/L0ny8wwIlJJsmeQv/fZLkhydZJt+/cK+vouyLDw4doo6thmp4xdJnp7kzkk2S3KPJP+Z5IZ++79Nsf+x/ba/9vX8oD/2Vv3re8rI8X+TZMHIvguSbJhlvcTO7JdHp/X6smslOW+knU9Ocpe+nbdP8qAkL0vyPytwXew98t78uj+Xz0mybX8uD0rys5EyD53mPFySLuD7cZLH9ufhDkke05erJJ8dqesdSe6dLmC4d5J3jWz79Jj2jrZ1SZL/SnL3vo4HZtmX1Jbk5WPq+Fp/vh6aZOd+37skeVSSz/f7Xptklyn23W5SG65J8k9Jtk9y277O74yUecZyzvl2U2xfnEnXbJK1+2viP/pt501xvaw/Uv7HfbkPTfPe32+kHdMGT1Psu1LvZZKP99t+MM0x1k33GW5JXjPF9lP6bdckeXWS3dKF13dM99n7Tb/93CQbTPM+/jbJlUlemu53xNskeUCS7Qecj8UjdbV0IfR9+7p2SvK3fbkdsiwY/kuSI7Ls59ajsyzga0keN8VxNkn38/SF/XU00d67JnlClv2svTjJ7ce8b1/tyyxJ8rrc+PPzuSy7tluGB0rr99fixGt45hTX6dp92UNGyu04TZ2nZYrgKbPwWVzZ68hkMplMy5/mvQGz/oK6Xz6nCmRW10Bpz3R/KRo3TfxH96X5bqvJZFp9pyRvHPmlefOR9Rul+zLVkrxrzL7bZFmPgq9P90t1RkKTfvmYkZ+zz5tmv7UyqYdUpg+Uju+33ZBkzym23y5dr4aJYx87RZlPZNlfnzcd067DR87b30zaduxI/d+b6rykC1bGfmnPDHoCJLnnSB27zPJ1sfdI3TckedAUZbbMsi/KP5pi++h5+FmSTcYc66CRcv8xpsyrRso8eorto/9vv2SK7WtnWdBxbab4Uj2Dc/LBfv/3TbFtu0ltOGyKMrdO8v1++4Xpg8Ex53y7KfZfPM01O3GuFy/nNfy/vtzV01zbb+nLnJ9JvX9mcI5W6r3MjcOEe8zgGLuO+Vwtmeo66cvcMcmf+nIvWM77+MiV/BwtHqnrldOUO7Uvc1WSe02xfdMsC3D/kGTdge1YkC4wbUn+dYrto+d93OfnCyNlTl/B8zGx/6Jpyqw78v5Mec6S/E26HlstyeHLeQ9X5LO4UteRyWQymZY/rYljKP043V8gnpDurxhnzG9zptda+1prbdFUU5JnpftrT9L9NRDgJqpqnSSH9ountdYumtjWWrss3ZecJDmkqtafooojkqyT7pfup7TWrhh3rNba9ZNWPaefn9Fa+69p9lvSWmvTvY4JVbUg3XhQSXJKa+1rU9R3QZJ/n6aOO6e7JS5JjmqtXTym6DvSPRFv3XS3XozzojHn5dR0vQWSrsfCihh94urvVrCOmTiltXbm5JWttT9l2bm8R1XtPk0d/9Rau2TMtr/r539MF4xM5WXpvryNlp/K79IFFpPbekO6MCXprtknTlPHOBOD1T90OeW+3Vo7aYo2XJnkxf3ibdP1fJprJ6YL1NZL8n8mb6yqW2XZz4T3tdaWDKx/Zd/LT6br0ZYs+yxPNrH+J62170/a9tx+fnJr7RNT7dxa+2264DmZ/jr4bGvttGm2D/HXLBvn6kaqasssuxbe0lr74eQy/c+hY/rFrbLsZ9SM9D9/J67JqcacWtTPZ/L5WaVaa9dm2WftSWPG+3pyupDrqiQfmqa6Ff0szuZ1BMAU1rhAqbX2ztbaP7TWTm6t/XK+27OSFqa75eHiJP89v00BVmOPTPfLdLLsF/hR7+vnG6cbA2eyffv514b83KyqndPdkpUk753pfjNwj3S3fiTJx6YpN93PxX3T3f5xTZLvVtWGU01JNkh3K1uSjAtSrknylak29F/Uf94vbjVNe6bzs3RfqJLkvbXqnsg33bkc3TZugO6W7pazm+gHZ57Y7xP9l8mbVtDaNenChqTroTvOJ6cILyfqOCfdORvb1qp6QHUDh/+kH9B4ycQAv0k+3Re7fVVtNE0bpjtfn0/X829sG1al1tqf091WliwLEUYdlK43TJK8Z0jds/Fe9ttO6RcPmzx4d1VtkmVhyvsnbbt1ulvSkuQr4z67/ef3x325e1XVumNe0qfHrF8RX26tXT1m299m2e/Vp4wpk3S3Dk983h80VYGq2q+qPlDdQPKXjw56neRNfbG7Ttpn9H2b7vPz4yT/O037ZtPEH0P/JsnDp9i+qJ9/tLV26TT1DP4sroLrCIAprHGB0orqnx7xD/0THyaeyPGT6p5us+Hya1glnt7PPzDNLzAAE0+9+mum/vL0hXQ9DUbLjrpLP//+wOPeZeTfQ/edznYj/z53XKHW2h+yrBfEZHfr5+sl+XO6gWzHTRNPT9tiTF0Xttaum6a9E19mbj1NmbEm/ZX9kUl+VlXn9k+EenJV3X6a3YeY7lz+McvO5bZjiv15mi99G2dZgPHT5bTjJ/18s6raeEyZsW2dtP0mbe2fFPWNJM9IN4bSRunCxalsMmb9tG3oe3pMBInjzteqNvFl/X59uDvqaf38zNbaLwbWO1vv5URQtHW6QedHHZLus9nSjbs26s7pep8lyVsz/Wf3o325tdKNizOVXy3nNQwxXV2j18HY89b/LJny2qnuyYYnpbut87B0YzKNewLZ5Gt3kyx735b3+TlnOdtnRWvtp0m+1S8+bXRbVT0gyY794vJCzxX5LM72dQTAFARKSarqjukG9ntluv+MvpnuLx6bpeva/PWq2myO27RNkof0i253A6bU/2ya+Ev/15PsVFW7jk7pxuj5al/m4VV1u0nVTHwRvGzg4Ue/QA7ddzqjIf7lyyk7bvt0QcE4txqz/oYZ7j8utFiu1trr0wVb30r3Jftu6W4jel+S31bVJ2eh59JMz+W4XjtXjlk/eZ/lHWf0Whl3rBVqa1U9MckL+sUz0t0OtnO6sHCjfjpgZJfR2w1npQ1z6AvpxllMRnop9b/TTNzO9+4VqHe23suvphtcPLnpbW8Ttxad0Vo7f9K2FfnsJuM/v9Ndt0PN9mdg8jl7UZbdwnhqup8Jd03XA3Xi+j2i3z75FrLZ+Lm5Kkz8DvvoSb9LL+rnizOmB+iIFfkszvZ1BMAUbvGBUt9F+OR0v3Aen2Tb1tp+rbXHpPvr+/vTPXb6dXPctKele3++11r73hwfG7j5ODTd+D9JFyx9b8z0+L7M2rnpOBHjvtwsz0yCgRUx+uVheT1Ex22fqONPrbWa4bT3Srd8JbTWTm2tPSDdgOMHpXsK3U/T/V9wYJJvVdV2K3GImZ7LFQkHR/cZ8p6NO9aKtvVZ/fzrSR7SWvtQa+2c1tqfW2uXt9Yuz7LPy/KsyvO10vrbLSd6djx5ZIyap6S7Zi7P9LdejTMr72U/ZtrEuDeHVNV6ydLAa6LH0o1ud+uNfv4fOeDzu3h5L2wVW5HzNu76/VBrbWH/M+HnrbW/jFy/4wKP2fi5uSp8KF3b1kvX6yr9WH5P6LefMIPx9VbkfN5cryOAm5VbfKCUZP9091h/K8lzW2sT97Wn//ez0g06+cS56qXUh1yL+kW9k4DpTHUL29B9Jm6J2XVgPaO30gzddzqLR/6947hC/a1g4/4KPXFrym378VpuNlprF7bWPt5ae2Fr7e7peiwsSddr9nkrUfV053KrLDuX540rN41L091ymXR/oJnO3fv5RdPcQje2rZO2T27rLv38lGkGor7ncupebhv68GaHMW2YS+9J16Ntq3S/zyTLfn84ZboB9qcxm+/lxJhuo2Mm/Z90v39eneQjU+yzON31ntz4ttrV3eKRf489b/1DByZ6Gy4eWT/xKPtk+gGqx12/l2TZAwKW9/nZaTnbZ00fgp3cLy7q549Nd020dE/CXJ4V+Swuzs3zOgK4WREodeNVJN2AgDf55bP/ZeysdN3ilz7Bp6q26ce4GDodN4M27ZtuDJGrs+yvewA3UlU7JNmjX3zF8v7ymmW3Au1SVaNfSr7Qz/fsn442I/34GL/vF1ck2Brnx1k2ns/Caco9dpptE69prXTjtcyXibGXpnrC0Yy01j6UZYPGrswXwenO5UEj//760Ir7HgYT+z2quicP3kTfS2XiSUzTHefA/ov3VHXslGVjZE2uY71+PuX5rqq1MsVT0caY7nw9LMvGzBp8vqYx6HpprZ2X5Iv94qKq2jPLvlyvyO1us/pe9gOon90vPmnS/FNtiicG9uu+0y8+YfL21dg3syzAOHiacgckmXja5ugTLNcb+fe463eD3PizutSk9226z8/dM2lA7xUwMeD3TH+uTfxxdPf++BPjKX25v4aXZ/Bn8WZ8HQHcrAiUukH7kuTVo0/RmPREjYnQaXTA1nXT/UI7dJrJ4KoTg3F/rLX212lLArdkoyHOTMLnD2fZF57Rfd+a7hHka6V7ytjYwaWn+JLyhn6+d1UdPc1+a01+0tM4/dOJJm6FeVz/JXlyfbdL8tJp6jg3ywYof8Xyxh+qqi1XUS/Uv/Tzv5nm2HeY7uEP/e0hE/v/ZVy5GRh3LrdI8o/94o9ba2etYP0TXxpvn+SfxpQ5Nt0tfUnyjmnqumOSf5i8su+N8Np+8brcdEDnX/fzcY9jf3FmHsrdv6oOm6INt07yin7xz1n2pLPZMPH+bjEuEJjC0jFqkjy///fPW2tfG1N+SJ2z8V5O9FJ6ZFU9ON0wAqPrp/Kafr5nVT1/mnKpqrWravvpysyF1tqfsuxaOLKq7jG5TN9b8pX94h/TPfFtwoVJJnqUPSpTe12mHzT6hH4+3ednNoZwWO7PtVGttW9k2UDg/5xkn/7fM30C4Yp+Fm921xHAzU5rbY2ekpyerkvtIWO2f7bffnq6/4inm/acg/Zumu5xsi3JvvN9/kwm0+o5pRsA+tf9z4ofDdhv4mfi75KsPbL+uf36lu7JTU9O95CCTZNsn65Xx8eTPGdSfesm+fbIviemGx9ly3QDye6e7ovNz5JsOqYtJ0zRzi3TfWlp6XorPTvd06K2SPfX6p+nuy3nr32ZY6eoY5skF4zU8S9Jdktym75td0/XW+LD6XqE7j5p/2P7fRfP8JxO9ToeN3Jujupf14J+WqsvsyjdrSrvTNfravt0t7dtna43w9dG6njUwOtk75F9f92fh6NHzuVB/XszUeahU9Qx0/NQST43Utfb0t2Ctnm6WyLfMbLt02PqGG3rknRffnfu6/jbJJ8ZKfPyKfb/15Ht709y7/79vs/I8X86Uma7SftvN6kN1yR5WbpbZm6TbrDr0ev9Gcs559tNsX1xxl+z9x3Z9z/SfWFfp79e1h5zztZN92W6jUwvnoWfLyv1Xo7Udbt0PVomzmnr27vOcvb74MgxPpbuj3t/k+5n0rbpbvF7ZbrbnI6f5n3ce2XOxfLes0nldkg3dk9LFxAdnmWftUcl+dFIux4/xf7vG9n+2nQ/o27TX/v/Pfn6HfO+fbXfvqSvY6cs+/xMvKcT78PpK3g+Pt3v/4t0w0ZsmGU/12rMPn8/6Rq9OMn60xxj9D1coc/iyl5HJpPJZFr+NO8NWOUvcPmB0sQvRUfNd1v79hzZt+dX4/5TNplMpnShzcQvyS8ZsN8zR/bbb9K2f8iyL37jpudNUedtRn7WTjdtOmm/iX1OGNPWPdON5zJVXVen+4K2ONN80Us39sZPZ9C2lmSXSfsem5UPlNZP8ssxxzuhL7Nohu07bgWuk71H9n9Ikt+OqXtJJoWFQ89DX3bTdE9Xm+51fDnJJmP2nyhz+HKuqQ9nioAl3SPW/2ea/b6W7gvlxPJ2k/bfbmTbwnS3Go6r6zUzOOfbTbF9caa/Zr8+5ninT3Pe/2uk3PVJ7jALP2NW6r2cVNdnJu335hnss2663pMz+Wy8dpr3ce9ZOBfTvmeTyu6TLiwZ19brM8XP0X7frUaONdX0kXS92FuSNqaO22X6n3n/nu6PpNNeU8t5jftNU/+U5ztdmH7tSLm3LucYo+/hCn0WV/Y6MplMJtPyJ7e8db/kJN1fkVcHz+jn72mttXltCbA6G71l7YMD9jsly8ZpudG4R621V6X7i/ibkpyb7vaLK9P9Ffq0dD+f3jO5wtbaX9J9iXpcukdd/z7dF4e/JPlhut4ND8mycZFmpHW37NwjXfD/277O36cbsHaP1tpybzVq3a1v90ry1HS3Q0y07Zok56f7i/2Lk+zQWvvBkPbN8DVcleRB6b7Q/CJdEDbZyelu0XpdugdEnN+376ok/5vuy98DWmsvXsnm/CpdT53Xpwu5rknXU+QTSR7UWnvDNPvOSGvt4nTXwlOSfD5dL43r+/nn0/V827dNMXbOJNemGxvlhUm+n67Xx+VJvpHkqa21J7TWbpji+FckeXCSf0t37q5N14vtO+kGNN87M3+M/F/TjVH2b+lu17kyXVDwxXQ9xf5+hvUM9cgkr04XCly1nLITRh/g8fnW2u9WthGz+F4mN729baqnu00+/rWttWel61X4tnTvwWV9Gy5K8t0kb0wXbrxgXD1zrbX2lXRjFB2X7uff5ek+979K9z7t2lr7rzH7/jFdL7U3pOsxc126z+gZSZ7WWjsky25bHnf8C9L1DD023Tm7Ot3P4i8nWdhaG3ur8Ey11j6XrmfPZ7PsuljePqO3BCbDxvha4c/izfU6Ari5qDU9s6iq09P9Jf9xrbWbPE2kH6DzO1n2H81LWmsXTSqzVbr/sKYbI2A22nqvJD9I98vCdq2181fl8QBYs1XV3km+0i/eqXkk9hqpH6D/f/vFx7fWTpnP9sBUqur9SZ6Y5CettZuMMTWp7HZZNibaPq2101dt6wBYETMd8PFmo6ruk+TNI6smHt36H1W19C8PrbU9+vmSqjoo3V/fn5nksKr6Qbq/EN8q3V+Zdk7yp0w/6ORsmOid9HlhEgAwQ4v6+V/SjXUGq5V+QPKJp7XdpKcrADdPa1yglGTjJPefYv0OU6xLkrTWfltV90sX6Dw+yT37Ov6SbuDa16QbyG+Vqap10/3VJlnBR/0CALcs/ZOu/q5fPKG1du18tgfG+L9Jbp3uVtsT5rcpAMyWNS5Q6rvEzujR1JP2uzrduCFvmu02zfD416Z76hAAwFj97fprJbl9uvGWtkz3Rf2/5rFZcCNVtSDdoNj7pHtCW5K8qx93D4A1wBoXKAEArOH+Kck/T1r3b621385HY2CM6yYt/zE3vW4BuBnzlDcAgJuna9M9De6odI+Dh9XRn5J8NN3TJP88340BYPasEU95u+1tb9u22267+W4GAAAAwBrjf/7nf/7cWttiqm1rxC1v2223Xc4666z5bgYAAADAGqOqzhu3zS1vAAAAAAwiUAIAAABgEIESAAAAAIMIlAAAAAAYRKAEAAAAwCACJQAAAAAGESgBAAAAMIhACQAAAIBBBEoAAAAADLJgvhsAAACwJmmt5bLLLsull16aK6+8MjfccMN8Nwm4hVuwYEE22WSTbL755lmwYHaiIIESAADALGmt5U9/+lOuuOKKbL755tlqq62y9tprp6rmu2nALVRrLddee23+8pe/5Pzzz8+2226btdZa+RvW3PIGAAAwSy677LJcccUV2XbbbbPppptmwYIFwiRgXlVV1ltvvdz+9rfPggUL8te//nVW6hUoAQAAzJJLL700m2++edZee+35bgrAjVRVNt1001xxxRWzUp9ACQAAYJZceeWV2XDDDee7GQBTuvWtb52rrrpqVuqacaBUVXerqudW1fur6tyqWlJVraoOmZWWdMf4j77OVlUvmK16AQAA5sINN9ygdxKw2lprrbWyZMmSWalryKDcRyR57qwcdQpVdd8k/5CkJXGTMQAAcLNkzCRgdTWbP5+G3PL24ySvTvKEJNsnOWO2GlFV6yV5b5ILknx8tuoFAAAAYPbNuIdSa+2do8uznLr/a5Kdkjw6ycGzWTEAAAAAs2veB+Wuqvsn+fskJ7XWPjnf7QEAAGBuLFmyJNtss02qKltssUWuu+66eW1PVa1Q54ntttsuVZXFixfPfqPmyKJFi5a+/olpnXXWyVZbbZUDDjggp5566py1Ze+9905V5fTTT1/lxzr99NNTVdl7770H7bd48eJUVbbbbrubbBt3PUyc4xNOOGGF27s6GTKG0qyrqlulu9XtoqzC8ZkAAABWGyfdzMZYOqytsqq/8IUv5Pzzz0+S/PnPf84nPvGJHHywm1ZWxOmnn5599tkne+2110oFMbvsskt23XXXJN1TC3/0ox/ltNNOy2mnnZajjjoqxx9//Ow0mKVOOOGEPO1pT8tTn/rUm1XYNN89lP49yd2SHN1a+/M8twUAAIA59O53vztJcoc73OFGy/PlnHPOyTnnnDOvbZhvBx10UE444YSccMIJOfnkk3POOefkDW94Q5LkTW96U774xS/OcwtXD3e4wx1yzjnn5Etf+tKM9znuuONyzjnnZOHChauwZXNn3gKlqvrbJM9Lcmpr7cPz1Q4AAADm3kUXXZSPf/zjqap86EMfytprr53Pfe5z+f3vfz9vbdpxxx2z4447ztvxV1dHH310HvSgByVJTjnllHluzephnXXWyY477pi73OUuM97n9re/fXbcccdssskmq7Blc2deAqWqWj/JCUkuTXLkCtZxeFWdVVVnXXjhhbPZPAAAAFaxD3zgA7nmmmuy9957Z88998zDH/7w3HDDDXnve9877X7nnHNODj/88Gy//fZZf/31s9lmm+Ve97pXXvCCF+S88867Sfnzzz8/z3/+87Pzzjtngw02yMYbb5yddtopRx55ZH784x/fqOx0Yyidd955ecpTnpLb3e52WX/99bPzzjvnVa96VW644YZp23vdddflrW99ax70oAdls802y61udavssMMOef7zn5+pvsuecMIJqaosWrQol112WV74whfmTne6U9Zbb73c4Q53yBFHHJGLLrroRvvsvffe2WeffZIkZ5xxxo3GQRo6NtA4u++++9LzMGF0rKBTTz01++yzTzbbbLNUVb7//e8vLfeNb3wjBx98cLbaaqusu+662WqrrXLIIYfkW9/61nKP+5WvfCUPfehDs9lmm2XDDTfMnnvumU984hNTlj3vvPNy3HHHZZ999snWW2+d9dZbL5tvvnn22WefnHTSScs91hVXXJFjjjkmd77znbPeeutl6623ztFHH52//OUvNyk73RhK40w1htJ2222Xpz3taUmS9773vTd67xYtWpTLL788m2yySRYsWJDf/va3Y+vebbfdUlU57bTTZtyelTVfPZT+I8kOSZ7fWvvDilTQWnt7a2331truW2yxxey2DgAAgFVq4va2RYsWJcnSL9Xvec97xu7zvve9L7vuumve8Y53pLWWRz3qUdlrr72yZMmSvOY1r8lXvvKVG5X//Oc/n3vc4x553etel0suuST77bdfHv7wh2f99dfP2972tnzkIx+ZUVt/+tOfZvfdd8+JJ56Y9dZbL495zGOy9dZb52Uve1ke//jHj93v0ksvzUMe8pAcccQR+dGPfpT73Oc+OeCAA3L99dfnda97XXbfffexA3lfcskleeADH5h3v/vd2XXXXfPwhz88V155Zd761rfmYQ972I0GMN9///2z3377JUlud7vb5alPferSaf/995/Ra1yeSy+9NEmy3nrr3WTba17zmixcuDBXXnllHvGIR2TPPffMWmt1ccNb3vKWPOhBD8p///d/Z5tttskhhxySbbbZJh/96EfzwAc+MO94xzvGHvNjH/tYHvrQh+ZPf/pTHvGIR2SXXXbJ17/+9TzmMY/Ja1/72puUP/HEE/OSl7wk559/fnbccccsXLgwO++8c84888w88YlPzHOe85yxx7r22muz77775vjjj8897nGPPOpRj8rVV1+d448/Pg94wANywQUXDD1lM3LIIYfkgQ98YJLkLne5y43euz333DMbbrhhnva0p+WGG27I29/+9inr+Na3vpWzzz47d77znWft/Z6J+RqUe2GSJUmeWlVPnbRton/hEVV1YJJftNb+bk5bB5Dc/AbM5MZW4QCiAMDK+d73vpfvf//72WijjXLIIYckSR796Edn8803z89//vOceeaZS2+xmvDd7343z3jGM9Jayzvf+c48/elPv1FvosljH/3mN7/JIYcckssuuywvf/nLc8wxx2TBggU32j7Tu12e/OQn589//nOe/OQn553vfGfWXXfdJMlPfvKT7LPPPmPrOfzww/O1r30thxxySN7+9rdns802S5LccMMNeclLXpJXvepVWbRo0ZSDaJ966ql55CMfmW984xvZcMMNkyS///3vs8cee+Tss8/OySefnCc+8YlJkmOOOSZ77LFHPve5z2XHHXec9YGdr7jiinz+859PkqUDdo9661vfmk996lM54IADbrT+Bz/4wdIQ5+STT87jHve4pds+9KEP5YlPfGKOOuqoPOABD8g97nGPm9T7hje8Ia9+9avzghe8YOm6T37yk3nsYx+bf/iHf8hDH/rQ3Ote91q6bb/99svChQtz97vf/Ub1/PznP8++++6bN77xjXniE5+Y+9///jc51je/+c3c9a53zc9+9rOlY3pddtllWbhwYb70pS/l6KOPzsknn7y8UzXYf/7nf+aEE07I17/+9ey5555TvndHHXVU3vCGN+Sd73xnXvayl2Wddda50fY3v/nNSZIjjjhiaZA3F+ZzUO61kuw1xXS7fvud++Xd56V1AAAArBITvZMe//jH59a3vnWSrufLREAy1eDc//7v/57rr78+L3jBC/KMZzzjJrem7bTTTtlpp52WLr/2ta/NZZddlic84Qn5x3/8xxuFSUmyzTbbZLfddltuW88888ycffbZ2WSTTfLGN75xaZiUJHe/+93zspe9bMr9fvrTn+bDH/5wtt1227zvfe9bGiYlydprr53jjjsu97znPXPGGWfkRz/60U3233DDDfOud71raZiUJH/zN3+TZz/72UkyaDDoFXXllVfm29/+dg488MCcf/752WCDDfJ3f3fT/h5Pe9rTbhImJV0gdP311+fQQw+9UZiUZOm66667Lq9//eunPP7uu+9+ozApSR71qEflsMMOyw033JA3vvGNN9p23/ve9yZhUpLssMMOS9+n6XqlveY1r1kaJiXJRhttlLe+9a1Ze+2189GPfnTpEwnn2g477JD9998/f/jDH/Kxj33sRtv+/Oc/5+STT86tbnWrPP3pT5/Tds1LoNRa2661VlNNSSZumH1hv27X+WgjAAAAs++aa65ZOp7NxG1uEyaWTznllFx++eVL199www35whe+kCRTBhpT+exnPzuo/DhnnHFGkuTAAw+ccjDlJz/5yVPu95nPfGbpfuuvv/5Ntq+11lpLe2F985vfvMn23XbbLVtttdVN1k8MGr6qBi//l3/5l6Vj+GywwQbZY489cvrpp2fLLbfMxz/+8Wy99dY32eexj33slHVNnLuJ2xonmwhApuqhlWRpwDjZxDmfar+rr746H//4x/OP//iPeeYzn5lFixZl0aJFS4Ok//3f/52yzk033TQHHnjgTdZvv/322WOPPbJkyZJ89atfnXLfuXD00UcnWdYbacK73vWuXHPNNTn00EOz+eabz2mbVuktb1V1XLrb2z7WWnvxqjwWAAAAq79TTz01F110UXbYYYelY8dMuPe9751ddtklP/jBD/LhD384z3jGM5J0vTCuvPLKLFiwINtvv/2MjjMxePTKPrVtYiDkO93pTlNu33TTTbPJJpvkkksuudH6X/3qV0mSN73pTXnTm9407TGmumVum222mbLsxhtvnKQLTlaFXXbZZeltbeuss04233zz7LbbbnnUox41ZTCWJNtuu+2U63/3u98lGX/u7nznO9+o3GTj9psYCHvyINXf/OY38/jHP37awasnxoIaV+e4bV//+tenrXdV23///bPDDjvkjDPOyE9/+tPsvPPOWbJkSd761rcm6W6Lm2szDpSq6j5JRqOwnfv5f1TV0j5orbU9RsrcPsnd+jkAAAC3cBO3s11yySXZc889b7L9T3/609JyE4HSuCevTWdF9plNE09/22233aYcH2jUVLdpzeVYOKMOOuigHHvssYP2GRc0TZiL9+LKK6/MwoULc8EFF+QZz3hGjjjiiGy//fbZaKONstZaa+Xzn/989ttvv7R28xxns6ry7Gc/O8997nPz5je/Occff3xOO+20LF68OPe9732XPoVvLg3pobRxkpuOXNU9rQ0AAACmdf755+eLX/xiki44mgiPpvKNb3wjP/vZz3K3u90tt7nNbXLrW986V155ZX75y1/mLne5y3KPtc022+RnP/tZfvazn+WOd7zjCrd5YkydcU9ju/jii2/SOynJ0lvD9tlnn7z61a9e4ePfnN3hDnfIL3/5y/zqV7+a8j2b6MU1Om7RqHHnfGL96H5f/epXc8EFF2S33XbLO9/5zpvs84tf/GLato471rjjzYdFixblpS99aU488cS84hWvWHr723z0TkoGjKHUWjt93LhHk8ZAGt1nUb9+0YDjTOzznwNeBwAAAKu5E044IUuWLMlDHvKQtNbGTo9//OOTLOvNtPbaa+ehD31okkwZFkxlv/32G1R+nL322itJ8qlPfWrK26U+8IEPTLnfIx7xiCTdLX7XX3/9SrVhJiYGC5+LY83UxLl73/veN+X297znPUmSvffee8rt487txPrR/S666KIkmXKMpyRLx+0a5+KLL85pp512k/W//OUv861vfStVlQc/+MHT1rGiZvrebbzxxnnqU5+aSy+9NP/6r/+az33uc7nNbW6TJzzhCaukXcszn095AwAA4Baitbb0kejjBrKeMLH9xBNPXHrr2Etf+tKsvfbaSx+zPtm5556bc889d+ny85///Gy44Yb50Ic+lOOOO25pPRPOP//8/M///M9y2/2gBz0ou+66ay6++OI897nPzXXXXbd02znnnJOXv/zlU+53n/vcJwcddFB+8YtfjB3X569//Wve9ra3zUoINNF75he/+MVqEyo95znPyYIFC/LBD37wJk8nO+WUU3LyySdnnXXWyXOe85wp9//ud7+b173udTdad9ppp+X9739/1l577aVPvEuWjZX15S9/+UbXwZIlS/Kv//qv+frXv77c9v793/99/vCHPyxdvvzyy3PkkUfmhhtuyMKFC8eOa7WyJt67c845Z7lln/3sZ6eq8upXvzpLlizJ05/+9NzqVrdaJe1aHoESAAAAq9zpp5+eX/3qV1l//fVz8MEHT1t2//33zxZbbJE//OEPS3uN3O9+98vb3/72JN3T4Lbffvs8/vGPz0EHHZR73OMe2WmnnfKtb31raR3bbrttTj755Gy44YZ5yUtekm233TYHH3xwDjnkkOy2227Zbrvt8slPfnK57a6qnHjiidl8881zwgknZPvtt8+hhx6a/fffP7vuumse+MAHjh2U+r3vfW/22muvfOxjH8sOO+yQPfbYI4ceemgOOeSQ3Oc+98kWW2yRZz3rWbMSAG277ba5973vnQsuuCD3ute98uQnPzl/93d/N6+32+2yyy55/etfnyVLluSxj31s9thjjzzxiU/M/e9//6W90I4//vjc8573nHL/5zznOXnBC16QXXbZJYcddlj23HPPHHDAAbn++utz3HHHLR08POkCvAMPPDCXXnppdt111zziEY/IoYcemh122CEvf/nL8w//8A/TtvUBD3hANt5449z1rnfNYx7zmDzucY/Lne9853z+85/PXe5yl+UOrL4y9thjj2y11VY5++yzs/vuu+epT31q/u7v/m5pD65RO+64Yx72sIcl6cbZOuKII1ZZu5ZHoAQAAMAqN3H72kEHHZSNNtpo2rILFizIoYceeqP9ku4x82effXYWLVqU6667Lh//+Mfz1a9+NQsWLMgLX/jCPOQhD7lRPY94xCPywx/+MEcddVTWX3/9fPrTn84XvvCFXH311TniiCOWhhrLc4973CNnnXVWnvSkJ+Wqq67KqaeemsWLF+ef//mf8+EPf3jsfhtvvHG+9KUv5X3ve18e/OAH55e//GU++tGP5qtf/WqWLFmSZz7zmfnc5z43az1M/vu//zuPf/zjc9FFF+WDH/xg3vWud+XTn/70rNS9oo488siceeaZWbhwYX7961/n5JNPzuLFi/PYxz42X/va13L44YeP3XfhwoVLb+v69Kc/ne9973v527/923zsYx/LC1/4wpuU/+hHP5pXvOIV2X777XP66afnS1/6Uu5+97vna1/72tJbEMdZd9118+UvfznPfOYz88Mf/jCf+MQnsu666+aoo47Kt771rWy11VYrfS7GWW+99fLZz342BxxwQH7961/n/e9/f971rnfljDPOmLL8RKD0iEc8YuyT8OZC3VxHOB+1++67t7POOmu+mwGsaU6a3yeDsJIOu/n//wbAzc8555yTnXbaab6bAazB7n3ve+f73/9+TjvttOUGZVMZ8nOqqv6ntTblI+T0UAIAAAC4GfjYxz6W73//+9lpp52y//77z2tbFszr0QEAAAAY6y9/+Ute9KIX5aKLLlo6ptirX/3qVM3vHRUCJQAAAIDV1GWXXZZ3vetdWbBgQbbffvu8+MUvzgEHHDDfzRIoAQAAAKyutttuu6yO418bQwkAAACAQQRKAAAAAAwiUAIAAABgEIESAADALFodxzoBSGb355NACQAAYJasvfbaueGGG+a7GQBTWrJkSdZaa3aiIIESAADALLn1rW+dyy+/fL6bATClK6+8Muuvv/6s1CVQAgAAmCUbb7xxLrroIr2UgNVOay0XX3xxNthgg1mpT6AEAAAwSzbaaKNssMEG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", + "text/plain": [ + "<Figure size 1440x720 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "result24=pd.merge(A2018t_df_notyear_df, road_length_traffic, on=['road_name'])\n", + "result24[\"Accident Probability\"] = result24[\"Total accidents\"] / result24[\"Trafficvolume\"]\n", + "result24=result24.drop(['Total accidents', 'Trafficvolume'], axis=1)\n", + "result24=result24.sort_values('road_name')\n", + "ax=result24.plot.bar('road_name','Accident Probability', rot=0,title=\"Accidents probabilty over road type \",figsize=(20, 10),color=\"Orange\")" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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FltswaKLLsp8883Haqutxpe+9CUazVhef/rT66+/zle+8hVWXnll5p13XpZbbjkOPfRQJk6cON02W2+9Ndtssw0AN91007S/oy9OgavZaKONpj0ONcOHDyciGD9+PJdffjnbbLMNiy66KBHB/fffP63d7bffzp577skyyyzDPPPMwzLLLMOoUaO48847e7zfG2+8ke23355FF12UhRZaiM0337zpqZFPPvkkxx9/PNtssw0rrLAC8847L4stthjbbLMNF1xwQY/39cYbb3DMMcewyiqrMO+887LCCitwxBFH8NJLL83Qdvz48UREpTGzRo8eTUQwZsyYacuGDx/OQQcdBMAvf/nL6Z670aNHM2nSJBZZZBGGDh3Kv/71r6b73nDDDYkIrrrqqrbrmVltBUoR8QngG+XNR4EjImJMg8sx3TZdFli9vK43HPg98O+IuDYifhURfwKeBH5Qtjk6M6/uxd8kSZIkSZrF1U5vq40bU/tSfc455zTd5txzz2X99dfn5z//OZnJbrvtxlZbbcXUqVP54Q9/yI033jhd+2uuuYZ11lmHk046iVdffZUdd9yRHXbYgfnnn5+f/exnXHLJJW3V+o9//IONNtqI8847j3nnnZfdd9+dFVZYgW9+85vsvffeTbd77bXX2HbbbTn00EN54IEH+NCHPsQuu+zCe++9x0knncRGG200w4DONa+++iqbbbYZv/jFL1h//fXZYYcdePPNNznjjDP42Mc+xuTJk6e13Wmnndhxxx0BWHrppaeNgXTggQey0047tfU39uS1114DYN55551h3Q9/+ENGjhzJm2++yc4778zmm2/OXHMVccPpp5/OFltswW9/+1tWXHFFRo0axYorrsill17KZpttxs9//vOm93nZZZex/fbb8+9//5udd96Z9dZbj9tuu43dd9+dH/3oRzO0P++88/j617/OhAkTWGONNRg5ciRrrbUWt9xyC/vttx9HHnlkg3spvPvuu2y33XaccsoprLPOOuy22268/fbbnHLKKWy66aY8//zzVR+ytowaNYrNNtsMgFVXXXW6527zzTdnoYUW4qCDDmLKlCmceeaZDfdx5513cu+997LKKqv02fPdjnZneVus7t8blZdGbgJOaGN/fwVOBj4MrAVsASTwL+Ac4NTMvKfN2iRJkjQQBtvMVLODfpxdS+qk++67j/vvv5+FF16YUaNGAfCJT3yCxRZbjEceeYRbbrll2ilWNXfddRcHH3wwmclZZ53FZz7zmel6E3Uf++ipp55i1KhRvP766xx33HEcc8wxDB06dLr1jXoINbL//vvz4osvsv/++3PWWWcxzzzzAPDggw+yzTbbNN3PIYccwq233sqoUaM488wzWXTRRQGYMmUKX//61/n+97/P6NGjG84udvnll/Pxj3+c22+/nYUWWgiAZ555hk022YR7772Xiy66iP322w+AY445hk022YSrr76aNdZYY7oeMH3hjTfe4JprrgFg/fXXn2H9GWecwR/+8Ad22WWX6Zb/9a9/nRbiXHTRRey1117T1v3mN79hv/324/DDD2fTTTdlnXXWmWG/P/nJTzjxxBP58pe/PG3Z73//ez75yU9y9NFHs/3227PuuutOW7fjjjsycuRI1l577en288gjj7Dddtvx05/+lP3224+PfOQjM9zXHXfcwQc+8AEefvjhaWN6vf7664wcOZLrr7+eI444gosuuqinh6qyH/zgB4wZM4bbbruNzTffvOFzd/jhh/OTn/yEs846i29+85szzIR42mmnAXDooYdOC/IGQlv3lJljMjPauGzdbbvR5fLR3ZY/kZlfzMyPZuZymTlfZs6fmatl5mcMkyRJkiRp9lXrnbT33nuzwAILAEXPl1pA0mhw7v/7v//jvffe48tf/jIHH3zwDKemrbnmmqy55prTbv/oRz/i9ddf51Of+hT//d//PV2YBLDiiiuy4YYb9ljrLbfcwr333ssiiyzCT3/602lhEsDaa6/NN7/5zYbb/eMf/+DCCy9kpZVW4txzz50WJgEMGTKE448/ng9+8IPcdNNNPPDAAzNsv9BCC3H22WdPC5MA3v/+90+baa3KYNC99eabb/LnP/+ZXXfdlQkTJrDgggvy2c9+doZ2Bx100AxhEhSB0Hvvvcc+++wzXZgETFs2efJkTj755Ib3v9FGG00XJgHstttu7LvvvkyZMoWf/vSn063beOONZwiTAFZbbbVpz1OrXmk//OEPp4VJAAsvvDBnnHEGQ4YM4dJLL502I+FAW2211dhpp5149tlnueyyy6Zb9+KLL3LRRRcx33zz8ZnPfGZA6xq46EqSJEmSNMd75513po1nUzvNraZ2++KLL2bSpK5Jv6dMmcK1114L0DDQaORPf/pTpfbN3HTTTQDsuuuuDQdT3n///Rtu98c//nHadvPPP/8M6+eaa65pvbDuuOOOGdZvuOGGLLPMMjMsrw0a3l+Dl3/rW9+aNobPggsuyCabbMLYsWNZaqmluOKKK1hhhRVm2OaTn/xkw33VHrvaaY3d1QKQRj20gGkBY3e1x7zRdm+//TZXXHEF//3f/83nPvc5Ro8ezejRo6cFSf/85z8b7vN973sfu+666wzLR4wYwSabbMLUqVO5+eabG247EI444gigqzdSzdlnn80777zDPvvsw2KLLdZo037T7ilvkiRJkiTNtMsvv5yJEyey2mqrTRs7pmaDDTZgvfXW469//SsXXnghBx98MFD0wnjzzTcZOnQoI0aMaOt+aoNHz+ysbbWBkFdeeeWG69/3vvexyCKL8Oqrr063/PHHHwfg1FNP5dRTT215H41OmVtxxRUbth02bBhQBCf9Yb311pt2Wtvcc8/NYostxoYbbshuu+3WMBgDWGmllRouf/rpp4Hmj90qq6wyXbvumm1XGwi7+yDVd9xxB3vvvXfLwatrY0E122ezdbfddlvL/fa3nXbaidVWW42bbrqJf/zjH6y11lpMnTqVM844AyhOixtoBkqSJEmSpAFTO53t1VdfZfPNN59h/b///e9p7WqBUrOZ11rpzTZ9qTb724YbbthwfKB6jU7TGsixcOrtscceHHvssZW2aRY01QzEc/Hmm28ycuRInn/+eQ4++GAOPfRQRowYwcILL8xcc83FNddcw4477kjm4BybLiL4whe+wFFHHcVpp53GKaecwlVXXcX48ePZeOONp83CN5AMlCRJkiRJA2LChAlcd911QBEc1cKjRm6//XYefvhhVl99dRZffHEWWGAB3nzzTR577DFWXXXVHu9rxRVX5OGHH+bhhx9m+eWX73XNtTF1ms3G9sorr8zQOwmYdmrYNttsw4knntjr+x/MlltuOR577DEef/zxhs9ZrRdX/bhF9Zo95rXl9dvdfPPNPP/882y44YacddZZM2zz6KOPtqy12X01u79OGD16NN/4xjc477zzOOGEE6ad/taJ3kngGEqSJEmSpAEyZswYpk6dyrbbbktmNr3svffeQFdvpiFDhrD99tsDNAwLGtlxxx0rtW9mq622AuAPf/hDw9OlfvWrXzXcbueddwaKU/zee++9maqhHbXBwgfivtpVe+zOPffchuvPOeccALbeeuuG65s9trXl9dtNnDgRoOEYT8C0cbuaeeWVV7jqqqtmWP7YY49x5513EhFsueWWLffRW+0+d8OGDePAAw/ktdde49vf/jZXX301iy++OJ/61Kf6pa6eGChJkiRJkvpdZk6bEr3ZQNY1tfXnnXfetFPHvvGNbzBkyJBp06x399BDD/HQQw9Nu/2lL32JhRZaiN/85jccf/zx0/ZTM2HCBO65p+cJxrfYYgvWX399XnnlFY466igmT548bd24ceM47rjjGm73oQ99iD322INHH3206bg+L7/8Mj/72c/6JASq9Z559NFHZ5lQ6cgjj2To0KH8+te/nmF2sosvvpiLLrqIueeemyOPPLLh9nfddRcnnXTSdMuuuuoqzj//fIYMGTJtxjvoGivrhhtumO44mDp1Kt/+9re57bbbeqz3v/7rv3j22Wen3Z40aRKHHXYYU6ZMYeTIkU3HtZpZtedu3LhxPbb9whe+QERw4oknMnXqVD7zmc8w33zz9UtdPTFQkiRJkiT1u7Fjx/L4448z//zzs+eee7Zsu9NOO7Hkkkvy7LPPTus18uEPf5gzzzwTKGaDGzFiBHvvvTd77LEH66yzDmuuuSZ33nnntH2stNJKXHTRRSy00EJ8/etfZ6WVVmLPPfdk1KhRbLjhhgwfPpzf//73PdYdEZx33nkstthijBkzhhEjRrDPPvuw0047sf7667PZZps1HZT6l7/8JVtttRWXXXYZq622Gptssgn77LMPo0aN4kMf+hBLLrkkn//85/skAFpppZXYYIMNeP7551l33XXZf//9+exnP9vR0+3WW289Tj75ZKZOnconP/lJNtlkE/bbbz8+8pGPTOuFdsopp/DBD36w4fZHHnkkX/7yl1lvvfXYd9992Xzzzdlll1147733OP7446cNHg5FgLfrrrvy2muvsf7667Pzzjuzzz77sNpqq3Hcccdx9NFHt6x10003ZdiwYXzgAx9g9913Z6+99mKVVVbhmmuuYdVVV+1xYPWZsckmm7DMMstw7733stFGG3HggQfy2c9+dloPrnprrLEGH/vYx4BinK1DDz203+rqiYGSJEmSJKnf1U5f22OPPVh44YVbth06dCj77LPPdNtBMc38vffey+jRo5k8eTJXXHEFN998M0OHDuUrX/kK22677XT72Xnnnfnb3/7G4Ycfzvzzz8+VV17Jtddey9tvv82hhx46LdToyTrrrMPdd9/Npz/9ad566y0uv/xyxo8fz//+7/9y4YUXNt1u2LBhXH/99Zx77rlsueWWPPbYY1x66aXcfPPNTJ06lc997nNcffXVfdbD5Le//S177703EydO5Ne//jVnn302V155ZZ/su7cOO+wwbrnlFkaOHMkTTzzBRRddxPjx4/nkJz/JrbfeyiGHHNJ025EjR047revKK6/kvvvu46Mf/SiXXXYZX/nKV2Zof+mll3LCCScwYsQIxo4dy/XXX8/aa6/NrbfeOu0UxGbmmWcebrjhBj73uc/xt7/9jd/97nfMM888HH744dx5550ss8wyM/1YNDPvvPPypz/9iV122YUnnniC888/n7PPPpubbrqpYftaoLTzzjs3nQlvIMRgHeG83kYbbZR33313p8uQJEmavV3Q2RmT5kj7Dv7P6nOacePGseaaa3a6DEmzsQ022ID777+fq666qsegrJEq71MRcU9mNpxCzh5KkiRJkiRJg8Bll13G/fffz5prrslOO+3U0VqGdvTeJUmSJEmS1NRLL73EV7/6VSZOnDhtTLETTzyRiM72HDZQkiRJkiRJmkW9/vrrnH322QwdOpQRI0bwta99jV122aXTZRkoSZIkSZIkzaqGDx/OrDj+tWMoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkqQ/NimOdSBL07fuTgZIkSZIk9ZEhQ4YwZcqUTpchSQ1NnTqVuebqmyjIQEmSJEmS+sgCCyzApEmTOl2GJDX05ptvMv/88/fJvgyUJEmSJKmPDBs2jIkTJ9pLSdIsJzN55ZVXWHDBBftkfwZKkiRJktRHFl54YRZccEGefPJJXnnlFd577z3HVJLUUZnJO++8w7PPPst7773Hoosu2if7Hdone5EkSZIkEREstdRSvP7667z22mv8+9//treSpI4bOnQoiyyyCEsttVSfjaFkoCRJkiRJfSgiGDZsGMOGDet0KZLUbzzlTZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVtBUoRcTcEbFdRPwwIu6OiNci4t2IeDoiLomIrXtbQETsGxG3RMSrETGp3P/hEWHYJUmSJEmSNAsa2ma7rYBry38/B9wMvAGsBewJ7BkRx2Xm/1S584g4FTgMeBu4HpgMbAecAmwXEaMyc2qVfUqSJEmSJKl/tdsLaCpwKbBlZi6bmbtm5qcy84PAPsAU4JsRsU27dxwRe1KESc8B65b7HAmsBowDRgJHVPhbJEmSJEmSNADaCpQy84bMHJWZtzRYdyEwprz56Qr3/bXy+quZ+Ujd/p4HDi1vHuOpb5IkSZIkSbOWvgpr7iuvl2+ncUQsD2wIvAtc3H19Zt4EPA0sA2zSRzVKkiRJkiSpD/RVoLRaef1sm+03KK8fzMy3mrS5q1tbSZIkSZIkzQJmOlCKiGWA0eXNS9vcbOXy+skWbZ7q1laSJEmSJEmzgJkKlCJiKHA+sAhwfWb+vs1NFyqv32jRZlJ5vXCT+z4kIu6OiLtfeOGFNu9WkiRJkiRJM2tmeyidAWwHTKDagNwzLTPPzMyNMnOjJZdcciDvWpIkSZIkaY7W60ApIk4GDgaeA7bLzOcqbF7rfbRgiza1Xkyv96I8SZIkSZIk9ZNeBUoR8UPgSOAFijDpkYq7GF9er9SizQrd2kqSJEmSJGkWUDlQiojvA18CXgK2z8x/9OJ+7yuv146I+Zu02bhbW0mSJEmSJM0CKgVKEXEC8BXgZeBjmfm33txpZk4A7gXmAfZqcD9bActTnE53R2/uQ5IkSZIkSf2j7UApIr4DfBV4hSJM6rHnUEQcHxEPRcTxDVbXln0vIkbUbbMUcFp584TMnNpujZIkSZIkSep/Q9tpFBGfAL5R3nwUOCIiGjV9KDNPqLu9LLB6eT2dzLwkIk4HDgUeiIjrgMkUs8YNAy4HTmnvz5AkSZIkSdJAaStQAhar+/dG5aWRm4ATmqybQWYeFhG3AocDWwFDgIeAXwCn2ztJkiRJkiRp1tNWoJSZY4AxVXeemaOB0T20uQC4oOq+JUmSJEmS1BmVZ3mTJEmSJEnSnM1ASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiVtB0oRsXpEHBUR50fEQxExNSIyIkb15o4jYky5fbPLQ73ZryRJkiRJkvrX0AptDwWO6ocabgMebbD82X64L0mSJEmSJM2kKoHS34ETgbuBe4Czga36oIazMnNMH+xHkiRJkiRJA6DtQCkzz6q/HRF9X40kSZIkSZJmeQ7KLUmSJEmSpEqqnPLWX7aJiHWBhYDngVuBazNzamfLkiRJkiRJUiOzQqB0QINl/4iIfTLzgQGvRpIkSZIkSS118pS3+4EjgbUoeie9H9gV+Gu57LqIWK7ZxhFxSETcHRF3v/DCCwNQriRJkiRJkqCDgVJm/jgzf5qZ4zLzjcx8NjOvBD4M3AksBXytxfZnZuZGmbnRkksuOVBlS5IkSZIkzfFmuUG5M/Nd4Pjy5sc7WYskSZIkSZJmNMsFSqWHyuump7xJkiRJkiSpM2bVQGnx8npSR6uQJEmSJEnSDGbVQGnv8vqujlYhSZIkSZKkGfRroBQRx0fEQxFxfLfl60fErhExpNvyoRHxXxSzvwGc1J/1SZIkSZIkqbqh7TaMiA8Bp9UtWqu8/m5EfLm2MDM3qWuzLLB6eV1vOHAZMDEi7gX+TXGa2weB9wNTgaMz8+p265MkSZIkSdLAaDtQAoYBH2mwfLVe3O9fgZOBD1MEU1sACfwLOAc4NTPv6cV+JUmSJEmS1M/aDpQycywQVXaemaOB0Q2WPwF8scq+JEmSJEmSNGuYVQflliRJkiRJ0izKQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlbQdKEbF6RBwVEedHxEMRMTUiMiJGzUwBEbFvRNwSEa9GxKSIuDsiDo8Iwy5JkiRJkqRZ0NAKbQ8FjurLO4+IU4HDgLeB64HJwHbAKcB2ETEqM6f25X1KkiRJkiRp5lTpBfR34ETgU8AI4KaZueOI2JMiTHoOWDczd83MkcBqwDhgJHDEzNyHJEmSJEmS+l7bPZQy86z62xExs/f9tfL6q5n5SN39PB8RhwJjgWMi4qezdS+lC2b6cVRV+2anK5AkSZIkaVDryDhFEbE8sCHwLnBx9/WZeRPwNLAMsMnAVidJkiRJkqRWOjXw9Qbl9YOZ+VaTNnd1aytJkiRJkqRZQKcCpZXL6ydbtHmqW1tJkiRJkiTNAjoVKC1UXr/Ros2k8nrhRisj4pCIuDsi7n7hhRf6tDhJkiRJkiQ116lAaaZl5pmZuVFmbrTkkkt2uhxJkiRJkqQ5RqcCpVrvowVbtKn1Ynq9n2uRJEmSJElSBZ0KlMaX1yu1aLNCt7aSJEmSJEmaBXQqULqvvF47IuZv0mbjbm0lSZIkSZI0C+hIoJSZE4B7gXmAvbqvj4itgOWB54A7BrY6SZIkSZIktdKvgVJEHB8RD0XE8Q1W15Z9LyJG1G2zFHBaefOEzJzanzVKkiRJkiSpmqHtNoyID9EV9ACsVV5/NyK+XFuYmZvUtVkWWL28nk5mXhIRpwOHAg9ExHXAZGA7YBhwOXBKu/VJkiRJkiRpYLQdKFGEPB9psHy13t55Zh4WEbcChwNbAUOAh4BfAKfbO0mSJEmSJGnW03aglJljgaiy88wcDYzuoc0FwAVV9itJkiRJkqTO6dQsb5IkSZIkSRqkDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVUjlQioh9I+KWiHg1IiZFxN0RcXhEVNpXRBwbEdni8nbV2iRJkiRJktT/hlZpHBGnAocBbwPXA5OB7YBTgO0iYlRmTq1Yw1+B+xssn1xxP5IkSZIkSRoAbQdKEbEnRZj0HLBlZj5SLl8auBEYCRwBnFyxhssz89iK20iSJEmSJKlDqpym9rXy+qu1MAkgM58HDi1vHlP11DdJkiRJkiQNLm2FPxGxPLAh8C5wcff1mXkT8DSwDLBJXxYoSZIkSZKkWUu7p7xtUF4/mJlvNWlzF7Bc2fb2CjV8KCK+BywKTAT+DFyZme9W2IckSZIkSZIGSLuB0srl9ZMt2jzVrW27disv9f4VEZ8uez5JkiRJkiRpFtLueEcLlddvtGgzqbxeuM19PkYxLtP6wCLAksC2wE3A8sBVEbFum/uSJEmSJEnSAGl7lre+lpnnNVh8I3BjRFwC7Al8F9i10fYRcQhwCMCKK67YX2VKkiRJkiSpm3Z7KNV6Hy3Yok2tF9PrvS9nmm+X1x+LiLkbNcjMMzNzo8zcaMkll+yDu5QkSZIkSVI72g2UxpfXK7Vos0K3tjPjofJ6HmCJPtifJEmSJEmS+ki7gdJ95fXaETF/kzYbd2s7Mxav+/ekpq0kSZIkSZI04NoKlDJzAnAvRY+hvbqvj4itKAbSfg64ow/q2ru8fjgz++IUOkmSJEmSJPWRdnsoARxfXn8vIkbUFkbEUsBp5c0TMnNq3bovRMRDEXFu/Y4iYsWI2Dci5u22PCJi/7r7OqlCfZIkSZIkSRoAbc/ylpmXRMTpwKHAAxFxHTAZ2A4YBlwOnNJtsyWA1Sl6LtVbDPgVcEZE3As8AywMrA2sXLY5JTN/VumvkSRJkiRJUr9rO1ACyMzDIuJW4HBgK2AIxQDavwBOr++d1IMJwIkU4y6NAD5M0VvqOeBC4MzMvKFKbZIkSZIkSRoYlQIlgMy8ALigzbbHAsc2WP4ScHTV+5YkSZIkSVLnVRlDSZIkSZIkSTJQkiRJkiRJUjUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlBkqSJEmSJEmqxEBJkiRJkiRJlRgoSZIkSZIkqRIDJUmSJEmSJFVioCRJkiRJkqRKDJQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqGdrpAiRJmi1cEJ2uYM6zb3a6AkmSpDmWPZQkSZIkSZJUiYGSJEmSJEmSKjFQkiRJkiRJUiUGSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpEgMlSZIkSZIkVWKgJEmSJEmSpEoMlCRJkiRJklSJgZIkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVYqAkSZIkSZKkSgyUJEmSJEmSVImBkiRJkiRJkioxUJIkSZIkSVIlQztdgCRJkiTNMi6ITlcw59k3O12BpF6wh5IkSZIkSZIqMVCSJEmSJElSJQZKkiRJkiRJqsRASZIkSZIkSZUYKEmSJEmSJKkSAyVJkiRJkiRVMrTTBUiaAzj97sBz+l1JkiRJ/cgeSpIkSZIkSarEQEmSJEmSJEmVGChJkiRJkiSpksqBUkTsGxG3RMSrETEpIu6OiMMjolfhVETsFBHXRMTEiHgzIv4eEd+IiHl7sz9JkiRJkiT1r0ohUEScCvwK2Ai4BbgW+ABwCnBJ1VApIo4G/ghsC9wLXAksBXwHGBsRC1TZnyRJkiRJkvpf27O8RcSewGHAc8CWmflIuXxp4EZgJHAEcHKb+9sIOAF4E9g2M/9cLl+IIljaEvg/4D/brVGSJEmSJPXAWZgH3mw4C3OVHkVfK6+/WguTADLzeeDQ8uYxFXopHQME8L1amFTubxJwEDAVOCwi3lehRkmSJEmSJPWztsKfiFge2BB4F7i4+/rMvAl4GlgG2KSN/c0D7Fze/FWD/T0O3AHMA3y8nRolSZIkSZI0MNrtTbRBef1gZr7VpM1d3dq2sjqwADAxMx/rg/1JkiRJkiRpgLQbKK1cXj/Zos1T3dq2s7+nWrSpsj9JkiRJkiQNkHYDpYXK6zdatJlUXi/cgf1JkiRJkiRpgLQ9y9usJiIOAQ4pb06KiIc7Wc8caAngxU4X0Sv7OaOB2uZxrjmBx7nmBB7nmhN4nGtO4HE+8FZqtqLdQKnWW2jBFm1qvY5eH4j9ZeaZwJlt3Jf6QUTcnZkbdboOqT95nGtO4HGuOYHHueYEHueaE3icz1raPeVtfHndNJkCVujWtp39rdhH+5MkSZIkSdIAaTdQuq+8Xjsi5m/SZuNubVt5CHgLWCwiVm3S5sMV9idJkiRJkqQB0laglJkTgHuBeYC9uq+PiK2A5YHngDva2N+7wB/Lm/s12N8qwKbAu8CV7dSoAefphpoTeJxrTuBxrjmBx7nmBB7nmhN4nM9CIjPbaxgxCriYIjTaIjMfLZcvBdwIrAV8MTNPrtvmC8AXgL9k5gHd9rcx8GeKnkrbZOZfyuULAX8AtgJ+nJn/OVN/oSRJkiRJkvpUu6e8kZmXAKcDywAPRMTvI+K3wCMUYdLlwCndNlsCWJ0GYyVl5l3AMcACwO0RcU1EXAQ8RhEm/Rn4RtU/SJIkSZIkSf2r3VneAMjMwyLiVuBwitBnCMV4SL8ATs/MqRX39/2I+BvwXxRjMM0HPA78BPhBZr5TZX+SJEmSJEnqf22f8qY5T0Qsmpkvd7oOqT9FxJbAc5n5zx7arQYsm5k3D0xlkqQqIuLzwHmZ+Uana5EkaU5goKSmIuIN4NfAaZl5b6frkfpDREwFzsnMg3to93PgM5k5ZGAqkyRVUb6fvwqcS9Fz/qEOlyTNtIiYYeiQKjLzqb6qRZK6M1BSUxHxNsXMfgn8BTgVuKicpU+aLZRfQMZk5md6aGegJEmzsIi4FNiNYkiHpJg05lTgiqrDMkizivJzSm+/sGVmVhriRJKq8A1GrSwH/D/gc8BHgA8DP4qIs4EzMvPJThYnDbClKGallAa1iHgcuDgzv9pDu+OBvTNz1YGpTJo5mblnRLwf+DzwWWBbYBvgmYj4GfDzzHy+kzVKvfAUjQOller+/Wp5vUjdMj+na7YREfMBGwHvpxh3uaHMPHfAihJgDyW1ISIC2BU4DNgBCGAKcBXF6XBXd7A8qbJy3KSascCfgBOaNB8KrAn8ABiXmR/q3+qk/mWvPM0JImIosCfFZ5ctKL6QTwYuo/jscksHy5N6LSLmAi6iOK6Poxg37NVy3SLAp4H/Bm4FPmXvPA12EfGfwP8Aw3pq62eWgWegpEoiYhWKD2cHAYtSfEB7HDiNYhyaVzpXndSebt3Hg/a6kgdwaGb+rN8KkwZAhUDpfGCvzJx3YCqT+kdErEPx2WU/YKFy8d8pToc7LzPtfapBIyK+Anwb+FBmjmvSZk3gPuB/M/N7A1mf1Jci4jPAWeXNcRQzzL/WrH1mHjQQdamLgZJ6JSLmBb4FHE3Xl/G3gDHAdzLzuQ6VJvUoIsbSddxuBTxP8R9UI+8CTwOXZebv+786qX+1EyiVv3LfD8yVmSs1aycNFuXAxkdTBEs1CbwEfNMfCzRYRMSDwFOZuXMP7f4IrJSZaw1MZVLfi4j7gQ8C+2fmBR0uRw0YKKmSspvtHhQfyLah6LXxMnA78DGKQbxfBnbKzLs6VKbUtnZ7a0iDWTluUs1wYBLwYpPmQ4Gly+uzM/OQ/q1O6j8RsRPFZ5adgbkofvw6H7iW4tSg3Sg+y3w5M0/qVJ1SuyLiTeDyzNy3h3a/BnbPzAUGpjKp70XEW8DdmblFp2tRYwZKaktELAMcQjFI9/spPnz9HTiFsrt4RCxJcc72EcDNmbl1h8qV2hYRWwHPZebDna5F6i9lcFqTFO/hrbwLXAl8NjNf7rfCpH4QEYsCB1NMKrIKxfH+BMXp+WfXn54fERsCNwAvZOaIga9WqiYingPeBkZk5ntN2gwFHgXmy8xlBrI+qS9FxIvA1Zm5X6drUWPO8qaWImJril/2dqc4XqYClwM/zcyx9W0z8wXgqIj4ILDxQNYp9VZm3tTpGqQBsHJ5HRTj3l0CfKVJ23cpvlw3/KIizaoi4sMUn1n2opgFKIDrgJ8Cf8gGv6Jm5j0RcRUwaiBrlWbCNRTjgf08Io7MzNfrV0bEQsDJwAoUvfGkwex2YJ1OF6Hm7KGkpspztNeg+EA2kWJAtFMzc0IP250FHOQo+xpMyp5KXwA2BZYEzs/Mg8t1H6M4xfMnjg+mwS4izgFuycxfdLoWqS/V9cR7AzgXOKXZoMXdtjuLYkbDufqzPqkvlOOB3QMsBrwK/IGiBx4UpzTvCryP4rP7Rpn55MBXKfWNshfp7cAhmfnLTtejGRkoqanyg9lfKX7ZuyAz325zu02BD/ii12AREd+iOF2z/jSgaeMqRcTGwJ3AkZl5agdKlCT1ICIeoTgV/5zMbDoLkDTYRcRawHnABuWi+plroZhUYf/MfHCAS5P6VERsSTEG3tEUvauvBJ6iOGtmBpl588BVJzBQUgsRsXlm3trpOqT+FBG7AVcAE4AvATdTzPo23UDd5ZgF9/U0q4okSdJAiIjNKWarXb5c9DRwU2be0rmqpL5TdnCojf3YU3CRmemQPgPMB1xNGSZpDnEk8A7FzITjACIajld8P+CArRr0IuKGCs0zM7frt2IkSb1Wflb387pmZzfTc5CkDjJQkjSn2xC4s41xNl4ANhuAeqT+tnUbbdr9NVCaJUXEghQ/AgyjyayGnhohSbM2Zw2f9RkoqUcRsRfF7CcfoPkHs8zMVQe0MKlvzE8RFvVksf4uRBog2zRZPhewErALsCfwPeBPA1WU1BciYgTFDFc7UBzTzSR+DtZsICIWoXVw+tTAViRpTuJ/pGoqIuaiGPxsd5r8J4W/Ymvwe5ZiNsOerAU4U4oGvcy8qYcmYyLiMOBHFP8HSINCRCxPMRvQEsAzFJ9zlwLuoOittCTF55U7gMkdKlOaaRGxGHAcRfi/ZIumBqca1CJi/cy8v9N1qDmnR1Urnwf2oJjpbQfgtxT/Ma1O8Qv2r8t23wVW6UB9Ul+4EVg7InZo1iAiPkXRc+PaAatK6qDMPA0YDxzb2UqkSo6hCJOOy8zlgT9S9KDeLDOXBnakmF79XYrPNdKgExGLAn+m+Jy+GPAWxY+7z9WalNdPUUw4Ig1m90bE8xFxYUQcEhF+55zFGCiplf2Bt4GdM/M64HWAzHwkM/+YmfsBnwW+RnE6nDQYnUjxS/XF5X9Ui9dWRMQCEXEA8DPgTeAnHapR6oQHgI92ugipgh0pvkB/q9HKzLy2bPNRiimopcHoq8CqwDnAIhQ9STMzlwMWBj4HTARuzcyVO1al1DfupghO9wJOBx6JiCci4qyI2CcilupseYpMz1RSYxHxCnBPbYafiPgFcCAwNOsOnIj4G/BcZvprnwaliNgHGAPMTddpnFOAIWWT94D9M/OijhQodUBE3AJsmJkLdLoWqR0R8RZwTWbuXt4+GxgNzJeZk+vaXQ0sl5nrdKRQaSZExIMUPfFWzMx3IuIc4IDMHFLXZiPgTuDIssepNGiV44RtDWxXXtYsV9W+jz4IXAdcn5lXDniBczh7KKmVeenqPgtFbyUofg2p9wDFTFnSoJSZvwE2pviVbxJFoDSU4pj/A/BRwyTNScqQ9aPAQ52uRargbeCdutuTyuvuv2BPBOy5ocFqOHB3ZtaO9QSIiGmBUmbeDdwKHDzg1Ul9LDNfzcwrMvPIzFwbeD/FmTS/BP4FrAMcBVzRwTLnWA7SplaeBZauu10Ll9ag+NWjZhmKnh3SoJWZDwCfiogAFqfonfRiZk7pbGVS3yp7mzazEMV7/NrlbU/z1GDyNLBi3e1Hy+tNKQeYL9/jNwBeHdjSpD4zBXit7vYb5fUSwPN1y58Bdh2ooqSBkpnPlb2o5wMWoBiYfr7OVjXnMlBSKw9TzGxVcwdFz42jI2LPzMyI2ALYCri/A/VJfa48nfPFTtch9aPRbbR5Hfh2Zo7p31KkPvUXYFREzJeZbwN/KpefFBFvUPySfSiwGuBpERqsngFWqLs9vrzeELiqbvmaTN9jTxq0ysHotwW2Ly/1g3M/AFxPcdqbBpiBklr5E7BjRGycmXcBN1Cc/rA78ExEPEPRxTAoBkmTBrWIWJvil+wlgQcz83fl8rkoxg57t5P1SX3koBbr3qXo5XFXZr41QPVIfeVKitMgdgUuycxHynGUPktx+jIUn1neBb7RmRKlmXYvsENEDCl7UV9PcVyfEBFPUASnhwHrUXx2lwatiDieIkBan66xTccDv6AIkG7IzBc6UpwAB+VWCxGxBMVsKHdn5sPlstWASymCJICpwGmZeWRnqpRmXkSsSDEo91Z1i3+ZmZ8p1x9CEZrukJnXD3yFkqTeKMeV+SIwimKmoIeA4zPzzlbbSbOqiKiNHbNbbQDiiLgC2I2uQYprtsnMmwe4RKnPRMRUiuP6AeBUioG3H+9sVapnoKReiYjVKT6YPZKZnh6kQasMTu+mGHfjAeAWil/2xtQFSosC/wZONzyVJEmdEhFDKcY4fTUzJ5XLFgROYPrg9NuZeWnHCpX6QERMoeiBlxSne15HV8+kZztZmwoGSpLmaBHxQ+A/ge8BXy/HBptKXaBUtruH4j3zQx0qVepzEbEcsCWwXLnoaeDmzHy6c1VJkiRBRCwCbANsV17WKFclRXBaGztpbGa+1nAn6lcGSmoqIvYAbsxMZ0LRbCsi/klxTvaIckBumgRKFwNbZOYynalU6jsR8T6KruN7A3N1Wz0VuBD4Qma+MrCVSb0XEZcD11L8cj2uw+VIkvpYRCxLMabSdhSDdC9PES5NoRim5aMdLG+OZKCkpsov1VMoBv+rpb+3ZaYzRmi2ERFvAX/IzL3qljUKlH4NfDIz5+1AmVKfiYj5gdsoBmxN4M9AbTyCVYCPUHQvvx/Y3MG5NVjUjbUB8BzFZ5frKcbc+FfHCpP6SUTMQzG7W30v03ucRERzgohYmWKYisOB+Sgmax7Seiv1NWd5UyuXAFsDG5eXrwLvRMTtFOHS9RRJsKmkBrO3gPe10W448Ep/FiINkC9SzJZyO/D/uvfkiIg1gZ8BmwFHUpwOKg0Gu9B1WsS6wKeB/QAi4hG6AqYb7H2nwSwi5gaOpfgivXC31ZMi4qfAtzJz8kDXJvWXiFicoldSrYfSyrVVFD8m3Neh0uZo9lBSjyJiPYoX7fbAFsCC5aoEXgXGAtdl5mkdKVCaCRFxM8WshSvXTu/s3kOpHGfmEeCmzNy5Y8VKfSAi7qMYhH6VZqc0l6fEPQY8lZkbDGB5Up9o8MVjlXJVUpzWeV9mfrhD5Um9Vs5ceBXFsR3As0zfy3RZiuP8OuDjmTmlE3VKfSEidqTrfXxdimM+ytWP0nUWzY2ZObEjRc7hDJRUSTmzxEfo+gVwE2BuYGpm2uNNg05EfB44DbgIOCAz360PlCJiLuBiYI9y/a86V6008yJiEvCnzBzVQ7tLgJ0yc6GBqUzqPxGxIvCF8uKpERq0IuJQijHw/gkclZlXd1u/I/Bj4APA4Zl5xoAXKfWRulOZg+JU5hsoQ6TMnNDJ2lQwAFBVQXHczA3MQ9dgrtF0C2nWdhbFKRF7AxtHxJXl8nUi4nsUQdJqFD3xLuhEgZKk6iJiaYpftmu/bi9H8XllKnB3B0uTZsYBwBvAdo1m5MzMqyNie4oZsA4EDJQ0mP2BcqiVzHyw08VoRvZQUo/KU95qH8g2Bxag+ED2GsWX7FpK7IwqGpQiYmHg5xShUiOXAwdm5usDVpTUTyLifopZUVZudkxHxDCKUyj+lZnrD1x1Uu9FxIIUYz/WPrOsRdcPXg8z/akRzmCrQSkiXqU4Bf8TPbT7HbBVZi4yMJVJmhPZQ0lNlbNabQssQfGB7B3gDro+kN2VmVM7V6HUN8ov1ftExLeAnSnGIBgCTAD+mJkO8qfZycXAccDvIuL/Zeaj9SsjYgTFoNyLAj/qQH1Sb02k67Ptc8Cv6Pple4aeHNIgNTfwZhvt3izbSlK/sYeSmqo7Z/UBipkkrnb6aM1uIuJHwCuZ+e1O1yINhIhYALiTYjD6KeW/n6B4v1+FYmy8IRTv/ZtmZjtfXKSO6/a55RSK3tPjO1qU1MciYhwwjKKX6btN2sxD8b7+WmauOZD1Sf0hItYCjqLohbpcufhp4Ebgp54O1zkGSmoqIl4EFitvvkvRO+k6ih5Kf7F3kmYHETEZ+F1m7tnpWqSBUs6AdTqwJzOOgZfApcChmfnSQNcm9Vb5A8G2wAfrFj9BV8/qGzymNdiV4zt+BbiQ4n36lW7rF6EYtPs/gBMz85gBL1LqQxFxMMUxPTeNx+19l2IA+rMHtDABBkrqQUSsTzGQZW38pAUpvmy8DtyMg6RpkIuICcDtmfmpTtciDbRy5qstmP7Xvlsy86nOVSXNnIhYgq7ZaLel6HkHxWDcf6Nr7MerG+9BmnWVPwjcR/G+/Trwe6bvZbobsDDwL2ADp1LXYBYRHwFuK29eDPyCYoxHKI73zwB7URz/m2fmnwe8yDmcgZLaFhFDgU3p+oD2EerGKsjM5ZptK82qIuIc4GPA8Mx8r9P1SJL6VkSsRFfANBKYF8jMdCxRDUrlWHcXABuVi2pf6Gq9N+4C9s3Mxwa6NqkvRcTFwCeB/8jMi5q02Yuix94lmdlsgh31EwMlVRYRc1P0VtodOASYj+KD2ZCOFib1QtlD4z7gMuCozHyjwyVJkvpIRCxLV0/r7YD3U3zp9nOLBr2I2BzYiul7md6Umbd2riqp70TEs8CTmblJD+3uBFbKzGUHpjLV+MuM2hIRH6LrA9lmwPy1VcDLwNjOVCbNtNHAH4GDgE9ExHXAk0CjAegzM48bwNqkfhMR6wBHUAxwuXy5uDbA5amZ+bcOlSb1WkQMozimawHSGrVV5fWDFKe8XT/gxUl9oH4ykTI4MjzS7Gwx2nu/fhTYoJ9rUQP2UFJTEfE5ig9k21BMHw3FB7K3KM5lrQ1yeW96IGmQqpsVqNEgfzW19f6irdlCRHwR+D7FbG6Njv33gGMy80cDWZc0MyLiDmBDpj+uJ9A1ocj1mfl8h8qT+oSTiWhOUqGH0h0Uw1fYQ2mA2UNJrZxeXk8B/kLXL3q3NZumVBqEvk3X2APSbC8idgN+RBEanVdexperhwOfBvYDToyIRzLz9x0oU+qNjwATKXrZ1SYNebSzJUl97jmK929pTnA7sEdEfDIzf9uoQUTsQfH+33C9+pc9lNRURJxMESCNzczXOl2PJGnmRcQtwEeBT2TmlU3afBz4A3BrZm45kPVJvRURGwD322taszMnE9GcJCI+SjGzeAK/Bn7J9LMaHgD8BzAXsEVm3tGhUudYBkqSJM1BIuJ1ii/dW/TQ7hZg/cxceGAqkyT1xMlENKeJiEOBkylOZ55hNUWPvaMy8/QG69XPPOVNbSunKF0SeCkz/9npeqS+EBFTgDGZeXAP7X4OHOQ005oNTKYYeL4nTwHr9HMtUp+LiLmAnYFNKT63/Dkzf1GuW5JiXMjHMnNK56qUem00TiaiOUhmnh4RtwFHAVvSbVZD4CdOJNI5fjFSSxExFPg6cDiwRLn4l8BnyvX7lesOycy/d6RIaeYErQfk7t5WGuzupb2gaG3gnn6uRepT5ay0vwFWpZxMAZgb+EXZZHvgfGAPwPHBNBgdS9dkIUsA+zRoM20yEcBASYNeGRi1/PFXnWGgpKbKMOkqiml33wPGAWt1a3YbxYCuewIGSpqdLUTRs0Ma7P4PuDYi/jMzT2rUoJwFbh1gh4EsTJoZEbEScC1FD6QrKX65/n63ZlcA72KgpMHLyUQkzTIMlNTKFyh+ybsOODAzny2nWJ8mM8dHxKMUXzq+1YEapX5VnjqxJrAt8K8OlyNVFhHdB9WeApwC/CAiPgVcQDHAJRSzvO0HbAz8BGcS0uDyDYow6QuZeRpAREwXKGXmmxHxV4pjXBp0MvPYTtcgSTUOyq2mIuIeYEVgtcx8pVw2lWK8mc/UtbsC2CAzV+xIoVJF5bhJ027S/i99P8rMr/RDSVK/Kd+3Gx3jtVM4u6+rX56OG6bBIiKeBCZl5tp1yxp9bvkNsF1mLtmBMiVJFUTEMIohVrYD3g/M16RpZuaqA1aYAHsoqbXVgbG1MKmF1ykGvZQGi/qxkJLWYyNNphj07zLgm/1ZlNRPatPtSrO7pYE722gXgLMXStIsLiJWAG4BVqDnsUz9rNMBBkpqJYGpPbYqkuK3+7kWqc9k5ly1fzf69VqanWTm1p2uQRogr1OESj1ZBXixn2uRJM2871KcMXMv8D3gIeC1jlak6RgoqZUngPUiYq7MbBgsRcT8wLoUA3ZLg9G3gPs6XYQkaabdB3w0IpbNzGcbNYiI1YH1cUBuSRoMdgCeA7bJzNc7XYxmNFfPTTQH+x2wPPBfLdocTTEA5hUDUpHUxzLzW5n5u07XIUmaab8AFgB+FRGLd19ZjsNxJsXn37MHuDZJUnXDgDsMk2ZdDsqtpiJiMeABYBngQuCS8vIH4HRgL+BA4ClgXV/oGowiYh7gfcBrmfl23fKFgGOA9YDxwPczc0InapT6S0QsCIyg+MDWcGyCzLx5QIuSZkJEXAqMpDj97SZgV4pTJB6gmLl2UeDCzPyPjhUpSWpLRIwDHsnMT3S6FjVmoKSWIuKDFL2PhtN4JqAJwC6Z+fcBLk3qExFxHPB1YPPMvKNcNhdwN0WYVPuS/QywXma+1JFCpT4UESOAkym6krfqrewsbxpUImIo8B3gCGD+bqsnA6cCR2fmewNdmySpmoj4BsUZMav4GXzWZKCkHkXEfMBBwM4UA1kOoQiS/gicmZlvdLA8aaZExO3A8pm5Yt2yPYGLKX7RPhnYheIX729m5v91pFCpj0TE8hSDWy5BEZQOBZYC7qDorbQkxQ8IdwCTM3ObDpUq9VpELApsw/SfW67LzH93tDBJUtvKHwn+SNGT+qDM/EeHS1I3BkqS5mgR8QzwYGZ+rG7ZucB+wPqZ+UDZY2kC8GxmbtShUqU+ERGnAIcBx2Xm/0bEOcABmTmkXP8xitOanwJ2zMzJnatWktRKRCxLMeYpwNOZ+Uwn65H6UkTcAMwNbEYx+/hT5aXRhFGZmdsNYHnCQEnSHC4i3gYuycxP1y17FJgrM1epW/ZbitPilupAmVKfiYhHgHmAlTNzavdAqWyzKvAgRehkrzxJmsVExOeB/6ToWVrvUeDkzDxt4KuS+lZENJxpvIms/yyjgeG4CJLmdJOBRWo3ImIpilMkzu/W7k1goQGsS+ovywPXZGbtQ9pUgIiYu9YbKTMfi4ibgP8ADJQ0KETElm02fRd4MTMf7c96pP4QEUOAi4A9KMZ5nAo8W65eFlgN+GnZ23RUZk7pRJ1SH/G0+1mcgZKaiojH22z6LvAixSDG52bmvf1XldTn/glsFhHzlbO87Ukxfsyt3dotCzj2hmYHbwPv1N2eVF4vBTxdt3wisPlAFSX1gbHMOIFIUxHxGvBLivHxnKlWg8VRFOM6Pg18E7ggM9+F4ocBYF/gOOATZdsfdahOaaZl5k2drkGtecqbmqrrYpg0mU66wbqpwHcy89h+LE3qMxFxDPBdikD0VuCzFOdqr1QbvLX8NfBF4J7M3L5TtUp9ISL+DkzKzE3K20cAPwY+lZmXlMsCGAcMy8z3d6pWqYqIGEvxY+lHy0Uv0zXWxkrAYhSfW+6kCFCHU8xy+ADw0cx8c2Arlqor38NXBtbNzMeatFmV4rh+IjPXHsj6pL4UEYtl5sQ2234kM//c3zVpeq2mCpZWBn5A8UGs1rV2A4qp1HcHLizX/QjYAvhfil+9vxkRO3egXqk3TgJuBDYCvkgxzfSXu80EtAPFaXE3D3h1Ut/7C7BWOYMnwJ/K65MiYueI+CDF1OqrUQSt0mCxU3n9D+Djmbl4Zm6QmRtm5hIUs9U+WLb5IMUxfnv57yMHvFqpd1YFxjYLk6A4bZnis80qzdpIg8TvImLenhpFxAYUs8FpgNlDSU1FxCeAy4BPZuYVPbTZMzMvj4iPA38A/pCZnxi4aqXeK3tjbA4sDdybmY93W78NsC7wu8x8ogMlSn0mIvYEfgP8R12PpDMpeufVPhQExenMG2fmAx0pVKooIr4DHAGs1u1Hgfo2S1Oc6nxqZn49IlYAHqaY7XPjgatW6p2IeA64MTP/o4d2vwG2zsxlBqYyqe+VZ8xcmpl7tWizNsUpz4tmpkP6DDADJTUVEbdQzHS1WQ/tbqMYVX/z8vaDwGKZuewAlClJmknlaZ1fBEZRnBb0EHB8Zt7ZybqkKsoZDB/MzD16aHc5sE5mjihv3wp8MDMXabWdNCuIiPOBrYBVa2MnNWgzD/AYcEtm7juQ9Ul9KSIuAD4F/CQz/7PB+g8AN1H8KHx4Zp4+wCXO8TzlTa2sC7TTG+MJiu7iNQ9TfCGRJA0CmTklM3+YmZtm5uqZubthkgah5Zl+wPlm3gGWq7s9AejxlAppFvHfFKfnnxcRS3RfGRGLAecC8wFfH+DapL42GrgFODIivli/IiJWBq6nCJO+YpjUGXYJU09W70WbpJhiXZIkaaC8CGwZEfNn5luNGkTE/MCWwEt1ixcFXun/8qQ+cQDF8BIHAB+PiGvp+gF4OMW4jwsA5wEHFGf1T5OZedzAlSrNnMx8NyJ2pxjv7gcRMSEzL42I5SnCpOWAYzPzhx0tdA7mKW9qKiKuA7YBPpOZv2zS5gBgDHB9Zn6sXHY3sFBmrjFQtUqSpDlbRJwGfB64EjgsMyd0W788cBqwC/CzzDysXD4eeCYzP4o0iyvHlGk1A3NNfZvavzMzh/RjeVK/iIiVgDuA91GEqd8BPgB8PzOP6WBpczwDJTUVEVsD11H8B3Qd8GvgSYr/lFYC/gP4WHl7+8wcGxFLAc8AYzLzsx0oW5JUJyJumInNMzO367NipH4UEUtSzGK4EjCZ4stH/eeWTYF5ymUfzswXIuJDFLMZficz/6cjhUsVRMSxdE2gUFlmfqvvqpEGTjmT280UPfCCYnKFIzpblQyU1FJEfBo4HViQGf/zCuAt4NDMPLdsvwJFV9vbM3PcQNYqSZpR+Wt2I/UzujVb7q/ZGlQiYlmKzy270fjYvpLic8vTddsMycwpA1elJKk3ImJH4PfALzPz/3W6HhkoqQ0R8X6K6aS3pGsQy2coEuKzM/NfnapNktRaRGzVYPEewFHAPcD5wPhy+XDg08CGwMnA5Zl5U78XKfWx8vSILZj+c8stmTm+Y0VJklqKiJkJ9zMzHSN6gBkoSZI0B4mILSkGsjym2SCWEfGfwPcpTmc2UJIkSf2uRa/qtmSms9gPMAMlSXO0iDgBOC0zn+p0LdJAiIhrgKUzc70e2v0VeD4zdxiYyiRJ3ZUT4ABclpmv191uS21YCknqDwZKkuZo5S8hU4CrKIKlqztcktSvImIicFVmfrqHducDu2TmogNTmdR3ImJBYAQwjCazYWXmzQNalNQLdbO6rZmZ/6y73RbHwZPUnzzHUD2KiL2AURRTMzb7YJaZueqAFib1jZOA0RQDuO4aEY9RDOh6Tma+0sG6pP4yN8WMVz1ZCT8naJCJiBEU43/tALQ69SHx+NbgcC7F8fpqt9uS1HH2UFJTETEXcAmwO01+3aP4D82ZgDSoRcR8wL7AYcCHKI7rt4FfU/RaureD5Ul9KiJuAzYBdsvMq5q02Rn4A3BHZm4+kPVJvRURywP3AktQDMI9FFgKuIOit9KSFO/vdwCTM3ObDpUqSaooIoYAiwPzNWvjEBYDz0Gr1MrnKWYC+ivFL32/pfggtjqwC8WXbYDvAqt0oD6pT2Tm25n5i8zciOKL9vkUQelngLsi4s6I+HREzNPRQqW+cSLF8X1ZRJwdEdtGxMrlZZuIOAu4vGz7g45VKVV3DEWYdFxmLg/8keIHr80yc2lgR+AJ4F2KzzWSpFlcRHwkIq4GXgeepXgfb3R5vGNFzsHsoaSmIuIOYD1g5cx8PiLOAQ6o74kUEQcBZwE7Zea1HSpV6nMRsRjwWeBzwMoUYepLFMf7qZn5dAfLk2ZKRBwN/B+Nf1gKYCrw35l5woAWJs2EiHgEmIfic8vUJp9bVgUepAid/q9DpUqS2hARmwHXAfOWi14GXmvWPjNXHoi61MVASU1FxCvAPZm5XXn7F8CBwNCsO3Ai4m/Ac84EpNlNRGwOHAHs1W3VO8CPKb5wTxnouqS+EBHrUxzfWwLLl4ufBm6iCE091VODSkS8BVyTmbuXt8+mGCNvvsycXNfuamC5zFynI4VKFUTEijOzvacAaTCLiOuAbYGfA9/MzH93uCR142CEamVe4Lm622+X14sAr9QtfwDYaYBqkvpVOTPQ/sChwDoUvTUmUAzUfS3waYqeS0dT9OL4RmcqlWZOZt4PHNzpOqQ+9DZF4F8zqbxeiiIsrZkIODaYBovx9H4Qbgef12D3YWBcZn6u04WoMd9g1MqzwNJ1t2vh0hrAnXXLl6GYNUgatCJiLYpBuT8NLEwRJN0M/BS4vK4n0j0R8SPgLuAADJQkaVbxNFDfm+PR8npTiklGiIgANqBrxixpVvcUzuqmOVcAf+t0EWrOQEmtPAysVXf7DooX9dERsWdmZkRsAWwF3N+B+qSZFhF7UwRJW1Ac32/9//buPEy2sjz3//feGxEnEGRSkFmGoAmDWwQUMCCDEjUBPc5A1CiiRk0OOT+M/uIxOc4iDnBURCTHEzFKGMQJVAQEGQIoIYAMMm0IyKTMIPs5f6zV0DRdvbv37qrVVf39XFdf1Wutd3XfxdX0rn7qfZ8X+Crw+aq6eLJ7qur6JKcArxtYUEnS0pwL7Jtkpaq6H/hBe/7QJPcAN9DMPn0OcHJHGaUZqaoNus4gdehimskLmqMsKGkqPwD2SLKoqs4DfgJcBrwSuDHJjTy6JOiI7mJKy+Wb7eO1wOHAkVV1xzTuW0yzFE4aOklWBg4CdgWeRe8teKuqNh5YMGn5nEyzZHlv4NtVdUXbR+mtwHfbMaHZ5c3ZpZI09x0GfCPJVu1Sfc0xNuVWT0lWp9li9/yqurw99xzgOzSFJGh6yBxeVe/pJqW0fNpmf58HTqqqJV3nkfotybOBM4Bn0/xxPZUav0OWNGySLATeC+wLrEbzxthHq+oXU90nSZobknyYZjXBh4CTbTQ/t1hQ0jJJshnNC7MrqurWrvNIkqYnyT8DbwAuAD5O8wf2VFvwXjugaJKkZZBkH+BVwBo0SzuPrapTOg0lzYIkM9lNuarKFVgDZkFJkqR5JMnNwMPAZlV1V9d5JEm9JdkN+F/AcVX1sUmuHwXsN3bYPhbw8ao6ZDAppf5IMqPVA1W1oF9ZNDkreJLUSrIFsCmwMj2WAlXVMQMNJc2+lYHvWUySpKGwJ7At8P6JF9qNRfZvDy+g6Xe6Hs0Sz79L8t2qOmtAOaVZZ4Fo7rOgpEck2an99Nyqun/c8bRU1el9iCX1XZIdgC8DW0w1jOYdPwtKGnbXAE/oOoS0vNqZGQUcUlU3t8fTVVX1lj5Fk2bT9sBtVXXmJNfGepj+EHj5WC/IJG8DvgS8BbCgJKlvXPKmR7RTCgvYoqp+Pe54OlyzqqGUZHPgfODJNC+61gY2pNn9bRNga2AhcALwu6o6oKOo0qxI8gHgYGCjqrqt6zzSsurxumW6bDivoZDkWuDSqtpzwvmVgdtp3vDacXyj+bYZ/bXAXVU11Ztl0pySZL1pDCvg7mnuyqw+swCg8U6n+R/03gnH0ij7HzTFpLdX1VeSfA3YsKreAI8sg/s6zVK47buLKc2ajwO7AN9LckBV/WfHeaRlNVbgv2nCsTRK1qB5TT7RImABcPvEXQur6uEkvwJePIB80mz6zXQHJrkb+BnwKVfKdMeCkh5RVbtMdSyNqF1odiv8ymQXq+rSJHsDVwIfpJnZIQ2zH9EseVsE/CrJdcB1wGSzO6qqdh1kOGm6qurrUx1LI6KAVSc5v037eEGP+27H5c0aPpP2MO3hacDewMuSHFxVn+lTJk3BgpJ6aqfSlo1bNeLWBk4ed/wwQJInVtUDAFV1S5KfAX+OBSUNv13Gfb4A2KD9mIyzVDU0krwHuLeqjuw6izSLrgf+OEnqsb1Kdqb5HX1Oj/tWA27pdzhpNk23CXeSpwLPAV4NvBf4RJLTq+r8PsbTJCwoaSp3AucB23WcQ+qnuycc/759fCZN8+Ix9wHrDCKQ1Gcv6TqA1CefAb4PWFDSKDkNeBvwLuDzAEm2BHZvr588+W1sRTP7VBo5VXU3cCFwYZKzaXqdHoRLnwfOgpKmchdwRdchpD67gWaL3TGXtY8vAb4GkOQJNIXV3w42mjT7qupnXWeQ+uS3NK9dpFFyKLA/8Nkk/41m1tGuNBuGnD+xfxJAkkU0M7C/PcCcUieq6qQkl2DPsE5Ma0qZ5q1LgXW7DiH12c+BLdslntC80/cwcGiSA5P8GfAdmv8XJtuyV5I0N5xJ0xtMGhlVdTmwH81M6R2AV9H0jrkJeHOP2w5sH0/tdz5pjriEZnWBBsyCkqbyFeBFSbbtOojUR8cBi2n7ylTVYuCjwMrAF4DjaRr+/Q44pJOEkqTp+J/Aukk+nGQmjV2lOa2qjgU2pln69gHgTcDmbbFpMucD7wN+PJiEkuarPLa3m/RYST4HvJFmm+l/A64da1QsjbIk+wD70jS1vAz4bFVNeytTaa5K8pMZDHeXNw2NJG8GXgS8heb39gnAtTQzOx6nqo4ZXDpJUr8kuRh4UlVt0nWW+caCknpK8vAMhldV2ZNLkua4JEumMaxotu6tqlrY50jSrGh/tsd+dmEpuxT6sy1Jwy/Jy4DvAsdU1f4dx5l3LABoKjOZLu7UckkaDr12eVsArA+8HNiHZmbqDwYVSpoFx7CUIpIkafgleTKwCc3rlb8BltC0qtCAOUNJ0ryW5CLgFOAnwOlVdU+3iaTuJXknzRbsO1bVv3edR5Ikjb4ZrpAZ7+Cq+vSshtG0WFBST0leATxUVd/vOovUL+OWSAD8ATiHponlj4Gzq2pZ/2GThlqSy4ArqurPus4iTUeS44CbquqgrrNIkmZumsvyx9wDnA58qqp+2qdIWgoLSuqprRCfWlV7dJ1F6pckWwC7ArsBOwOrtJeK5h+qM2iKS6dW1a86CSl1IMm/An9aVc/oOos0HUkeAI6vqv/WdRZJ0swlWX8awwq4F7i9qmZSgFIf2ENJU7kduLXrEFI/VdWlwKXAF5IsALalKS7tCuwA7AXsCZDkt1W1dldZpQFbG3hS1yGkGVgMPKHrEJKkZVNV13adQTOzoOsAmtPOBZ7bdQhpUKpqSVWdV1UfrardgHWBTwEP0DSeX6PTgNKAJHktTUH1sq6zSDPwXeDFbbNWSZLUZy55U09JdqJpVPz2qvpq13mkfksS4AU0M5R2A14IrEhTTLoN+IlLKTTskhw1xeWnApsDW7bHb6mqo/seSpoFSVYDzgMup3ntcn3HkSRJGmkWlNRTW1B6DXAg8CPg34BrgfsmG19Vpw8unTQ7kmzGowWkXYCVaQpI9/LY/kkXdRRRmlXTbHh5F/A/3TFFw6Qtlq4O7A08CFxA79ctVVVvGWA8SZJGjgUl9TRu96u0p6b6YamqsieXhs64n/OHgfOBU9uPs6vqoS6zSf2QZL8pLj9I04fmvKqa9M0Daa6a5HXLVKqqFvY5kiRJI80CgKZyOlMXkaRREeDXNEs8f4LFJI2wqvp61xmkPjmg6wCSJM0nzlCSNK8leTfNjm47A6vQFFHvA35OM1Ppx1V1QXcJJUmSJGnusaAkSUCSBcDzaXop7QpsD6xEU2C6A/gpcEpVfbmzkNIsS7IOsBOwTntqMXB6VS3uLpUkSZKGgQUlSZpEkicCOwKvAP4KeCL2CtOISPJ04Is0Gy8smHB5CXAs8K6qunOwySRJkjQsLChpWpI8BdiER3fAehx3edMoaGcqbUczS2k34IXAiu1lm7hq6CV5Es2Szj+hmYF3DnB1e3kjmp//ABcBL7I5t4ZNkmcBrwQ2pffrFnd5kyRpOflOu6aUZBPgMGB3Hv8u9niFP08aUkm25NEC0k7A03j0D5C7gVOAH7cf0rB7L7AVcBbwtqq6dPzFJFsAX6KZofce4OMDzictsyTvBT4GPGH86faxxh0XYEFJkqTl4Awl9ZRkXeACYHXgRpqC0ZrA2TSzldageUF2NvBQVb2ko6jSMktyI7DW2CHwEPAL2obcwDlV9XBH8aRZl+RCYD1go6r6XY8xTweuAq6rqq0HGE9aZkn2AL4P/B74ArALTT+8d9C8btkH2BD4HHCROx5KkrR8pppxIv0PmmLSR6pqXZoXaVVVO1bVWsAewG+AB2lmMEnDaG3gl8BngL2AVatq56r6SFWdZTFJI+g5wE97FZMA2t5JP23HSsPiPTRvdL20qv4euAKgqr5SVX8H/BHwVZqZSWd1llKSpBFhQUlT2QO4HvjwZBer6pR2zA7AwQPMJc2mNapqm6r671X1w6q6t+tAkqRlsgg4v6rOm+xiVT0IHEQzg+n/H2QwSZJGkQUlTWVdminhS9rjJQBJHulLUFVXAT8DXjf4eNLyq6rbus4gDdiVwC5JntZrQJKVaZYLXTmoUNIsWIVHG8xDM4N6bGMRAKrqIZqm9C7TlyRpOVlQ0lTuBx4Yd3x3+7jmhHG30/QkkCTNff8KrAac2G688BjtuX8DVgW+NeBs0vK4lWZXtzG3t48bTBi3Es3PtyRJWg4WlDSVxTSNW8eMvVO9/diJJAG2Bnr24pAkzSmHAv8B7AxcmuSMJMck+XqSM4BLaWZv/Afw2e5iSjN2DbD+uOOLaDZbeO3YiSRr0sy+u3aAuSRJGklu866pnAvsm2Slqrof+EF7/tAk9wA3AAfSNG09uaOMkqQZqKp7k7wEOIJm16sd249HhgDfBg60p5iGzI+BDyRZr6quo3ltcgdwSJJNaV637AM8FTi+s5SSJI2IVFXXGTRHJdkH+Cbwuqr6dnvuy8Bbaf7ggOadvweBRVV1cSdBJUnLJMl6wIuBddpTi4Ezquq6JAuA/arqa50FlGYgyRbA+4FjquqM9twrgf8LPGnc0AuBnarqnsGnlCRpdFhQ0owkWQi8F9iXpgfHZcBHq+oXXeaSJM2OtpD0JuDvgY2qamHHkaTlkmQdYG8efd1yYlU93G0qSZKGnwUlSZLmgSTPAnYH1gJuBn5UVTdOGPN64B+AjWlmoN5cVc8ccFRJkiQNAXsoSZI04pL8NfAxYMVxpx9M8tdV9eUkGwHfAF5AU0i6C/gU8JmBh5UkSdJQcJc39ZTk2UnenGSzKcZs1o5Zd5DZpNmWZJUkByX5P0l+mOTgcdc2TbJ7kidN9TWkuSjJTjQ7uz0RuBu4ALiK5k2lw5O8FPg5sB3wB+AwYOOq+og9ZjRMkuyV5Cdt0/leY/60HfPSQWaTJGkUWVDSVN4DTKcZ69HAQf2NIvVPkj2Bq4HPAa8HdgM2HzdkM+D7wCsGn05abmO/nw8H1qqqRVW1KbAVcCVwAs0yuIuBP66q91XVrZ0klZbPAcDzaXap7eVcYBGw/yACSZI0yuyhpJ6S/JLmZ+SPlzLuYuChqtpmMMmk2ZPkuTR/YKwAfAk4HTgWOLqq/rId8wTgduCkqnp9V1mlZZHkWpqdOTee2Ig4yV40W6vfR9OA++YOIkqzIslVwI1V9eKljDsDeGZVbTKYZJIkjSZnKGkqz6Z593pprgTW63MWqV8OoVkKtG9Vvbuq/nXigKp6iGab6T8ZdDhpFqwJXNhjV6uz28fTLSZpBDwTuH4a464H1u5zFkmSRp4FJU1lJeDBaYx7EHhKn7NI/bILzR/bJy5l3GKaP1akYfNE4I7JLlTVne2n/zWwNFL/PACsMo1xqwCTFVglSdIMWFDSVBYD205j3Db4x4iG1zOY3ky8FQGbcmtUuf5do+BS4EVJehaVkqwMvAj49cBSSZI0olboOoDmtJ8Cb0myf1UdPdmAJPsBGzO95t3SXHQHMJ1dCjcGXBKkYbV2u9vbjK9X1el9yiTNtuOAFwJHJXl9VT0w/mKSFYGjgKcC3+kgnyRJI8Wm3OopyebARTQz2T4JfLWqrm6vbQi8Ffjbdvg2VXVJFzml5ZHkRGAP4LlVdUV7bgmPbcq9CDgH+JeqekNnYaVl0P48L+s/9lVVvvmkoZDkycAFwHOAa4BvAJe1lzcD3ghsQDMrdZuqumfwKSVJGh0WlDSlJG8GjgQWtqf+0D6O/YGxBHhbrxlM0lyXZA/g+zRbpr+mqi4fX1BKshHNtup/BOxcVWd2GFeasSTXsBxL2qpqw9lLI/VXkvWA44GtePzPfWjeKPuLqrpmkLkkSRpFFpS0VEmeD/w9sBvw5Pb0vcCpwD9V1XldZZNmQ5LDgHfT/PFxCbAlTQ+xm4CtaQqon6mqv+35RSRJc0KSAK8A9gTWp/ndfh3wQ+CE8sWvJEmzwoKSpi3JAmB1mhdmt1XVko4jSbMmyTuAD/H4raRvAz5SVZ8bfCpJkiRJmpssKElSqy2abgVsRLPM83rg3Kr6w1T3SZIkSdJ8Y0FJkiRJkiRJM7Kg6wCSJEmSJEkaLm4FLElAknWAlwDPAlbqMayq6iODSyVJkiRJc5NL3iTNa+1uQJ8F3smjszYzYVi156qqFg4unSRJkiTNTc5QkjTf/Xfg3cAS4AfAZcDvO00kSZIkSXOcM5QkzWtJLqXZ1W3Xqjqz6zySJEmSNAwsKEma15LcD5xZVbt1nUWSJEmShoW7vEma7+4Ebuk6hCRpdiTZJMknk5yZ5PIknxh3bbskf5Xk6R1GlCRpJNhDSY9I8qHluN3drzSsfgIs6jqEJGn5JXkL8EVgxfZUAauPG/Jk4AjgIeBrg00nSdJoccmbHpFkCY/uZjVd7n6loZZkY+DfgU9bFJWk4ZVkR+BnwN3AR4DTgXOAo6vqL9sxC4BbgZ9V1Z93lVWSpFHgDCWN9+GuA0gd2JHmXep/SPIy4PvAdTS7vj1OVR0zwGySpOk7mOaNrr2q6myA5LHvkVXVkiQXAlsMPp4kSaPFGUqS5rVJZuZN+UvRmXiSNDcluQW4oqp2HHduCeNmKLXnvgHsXVWrdBBTkqSR4QwlSfPdMSyliCRJGgqrADdMY9xT8TWwJEnLzX9MJc1rVbV/1xkkSbPiFmDDaYzbDFjc5yySJI08C0qaliRbAJsCK9Ojabe9ZSRJUod+Duyb5PlVdf5kA5K8lOb1zJEDTSZJ0giyh5KmlGQH4MtM3bzSXd409Nqdf1ZrD2+vqkmbckuS5qYk2wFn0cw+eitwKvAH2h5KSXYCvgGsBWxbVRd3FlaSpBFgQUk9JdkcOB94Ms0LtLVpppJ/E9gE2BpYCJwA/K6qDugoqrRMkqwGvAt4BfAnwIL20hLgl8CJwOFVdWs3CSVJM5Hkb4BP0vTG+z3NzOrfAQ8Bq9O8Cfb+qvpsVxklSRoVFpTUU5KjgTcDb6+qryT5GvDmsZlI7TK4r9MUnLavqrs6CyvNUJI/B45iimWcPPoHyVur6juDyiZJWnZJ9gL+AVg04dLFwAer6sSBh5IkaQRZUFJPSa4BHqiqzdrjxxSU2nNrAlcC/7uqDu4kqDRDSV4N/AvNjKSLaXZ6Ow+4maa4tCbwApqC6nNpZiy9vqq+1UlgSdKMJXkGzczqhcD1VXVjx5EkSRopFpTUU5L7gZOrap/2+EjgAODJVfXAuHEnAZtX1XO6SSpNX5I1gKtoZta9r6o+v5Txfw18GrgX2KSqbul/SkmSJEma2xYsfYjmsbsnHP++fXzmhPP3Aev0P440K94NPBU4ZGnFJICqOgz4QHvPQX3OJkmSJElDwRlK6inJRcBDVbWoPf4r4AiafjJfa889gWbJG1W1fkdRpWlLch6wAbB2VT08zXtWAP4L+M3Y/w+SpG4lefPy3F9Vx8xWFkmS5qMVug6gOe3nwAFJVq6q3wMnAw8DhyZZCbgBeBuwLs3Ob9Iw2Aj4+XSLSQBV9YckZwE79i+WJGmGjqbZPGFZWVCSJGk5WFDSVI4Ddgd2AU6sqsVJPgp8EPhCOybAncAhXQSUlsFTgGXZkfCu9l5J0txwDMtXUJIkScvBJW+asST7APsCqwGXAZ+tqt90m0qaniQ3ANdW1YxmGyU5E9igqtbtTzJJkiRJGh4WlCTNK0lOAF4GbFxV103znvVpeoV9r6pe2c98kiRJkjQM3OVN0nxzLLAQOCrJiksb3I45iub35bF9ziZJkiRJQ8EZSpLmlSQBzgO2Bs4F3llVF/YYuy3wRWARcBHw/PKXpiTNSUl2mubQB4Fbq+rKfuaRJGnUWVBST0munsHwqqqN+xZGmkVJ1gXOANanaeh6CU1x6eZ2yFrAC4EtaBrPXw/sWFU3DD6tJGk6kixhZk26fw98HfhgVS3LZg2SJM1rFpTUU/vCbGmK5g/uqqqFfY4kzZokqwKHA6/m0eW/438hBlgCfBs4qKpuG2xCSdJMJDmNZgfjHdpTdwDX0fwuX59mM5ECfgGsCWxA8/v/YmCHqrp3sIklSRpuFpTUU9uIeDILaF6YvRx4N/AJ4KtVde2gskmzJclGwN7AtsAa7elbgX8HvltVV3WVTZI0fUlWAk4Fng78bVX9YML1PYBPAncBuwJrA/9MU4D6QFV9bKCBJUkachaUtFySvIpmBseeVXVqx3EkSdI8leQfad7oek5V3dJjzFrAr4EvVtUhSZ4NXA5cUlWLBpdWkqThZ0FJyy3JhcAdVfWnXWeRJEnzU5IraApDr1rKuOOB51bVJu3xmcDzqmqVvoeUJGmELFj6EGmprgC26TqEJEma19YFHpjGuAeAdcYdXw88sS+JJEkaYRaUNBs2ommCKUmS1JVbgZ2SPKnXgPbaTsD4jRZWBe7sbzRJkkaPBSUtsyQLkxxMMzvpl13nkSRJ89pJwFrAt9reSI+RZF3gWJod3k4cd2lz4OqBJJQkaYTYQ0k9JfnJFJefCmxMs5NKAa+qqu8OIpckSdJESdYAzqXZifYh4GzgWprXKesD2wMrtudeUFW/TbINcD7wj1X1oU6CS5I0pCwoqackS6Yx7Crg/6uqb/c7jyRJ0lSSPBM4AvgzIBMuF3AycGBVLR53z8KqenhwKSVJGg0WlNRTkp2nuPwgsLiqrhtUHkmSpOlIsj7wYh5tvn0jcEZVXdNZKEmSRowFJUmSJEmSJM2ITbklSZIkSZI0I271rp6SrAm8BNgSeAawBLgduBg4rapu7TCeJEnS4yRZCXg+8CxgpV7jquqYgYWSJGkEueRNj5NkVeDTwBuBhT2GPQR8HTi4qn43qGySJEm9JHkf8CFg5aWNraper3EkSdI0WFDSYyRZCzgN2JRmd5TbgQuAW2mWSK4ObA2sSrNbyqXALs5WkiRJXUryl8CR7eGlwGXA73uNr6oDBpFLkqRRZUFJj5HkBJqtdq8E3ltV3+sxbm/gUGAj4N+qat/BpZQkSXqsJBcBzwPeVFX/t+M4kiSNPAtKekSS5wG/BK4Cnr+0pWzt0rjzgA2B51XVf/Y/pSRJ0uMluQ84v6pe3HUWSZLmA3d503ivo1nG9v7p9EWqqjuA99MsjXtdn7NJkiRN5R7guq5DSJI0X1hQ0niLgN9V1UkzuOck4E5gu74kkiRJmp6zgOd2HUKSpPnCgpLG2wy4cCY3VLNm8oL2XkmSpK58GNg8yX5dB5EkaT5YoesAmlOeDvx2Ge77Lc3sJkmSpK48BfgMcFSSlwEn0yyBWzLZ4Ko6fYDZJEkaORaUNN5TgHuX4b7723slSZK6chpNL8gA+7YfvRS+DpYkabn4D6nGS0f3SpIkLa/TaQpFkiRpACwoaaK1k+w003v6kkSSJGmaqmqXrjNIkjSfpOmpLEGSJSzHO3tVtXAW40iSJEmSpDnKGUoa7zqcKi5JkiRJkpbCGUqSJEkaOknWaz9dXFUPjzuelqq6rg+xJEmaNywoSZIkaei0S/WXAH9UVb+e4dL9qipn6kuStBz8h1SSJEnDaGyp/kMTjiVJ0gA4Q0mSJEmSJEkzsqDrAJIkSZIkSRouFpQkSZIkSZI0I/ZQkiRJ0khKsg/wKmAN4Abg2Ko6pdNQkiSNCHsoSZIkaegk2Q34X8BxVfWxSa4fBew3dtg+FvDxqjpkMCklSRpdLnmTJEnSMNoT2BY4c+KFJK8B9qcpJF0IfAr4Fk1B6e+S7DC4mJIkjSaXvEmSJGkYbQ/cVlWPKygB72kffwi8vKqWACR5G/Al4C3AWQNJKUnSiHLJmyRJkoZOkmuBS6tqzwnnVwZup5mdtGNV/WLctYXAtcBdVbXFIPNKkjRqXPImSZKkYbQG8NtJzi+ieY17x/hiEkBVPQz8Cli3//EkSRptFpQkSZI0jApYdZLz27SPF/S473bgCX1JJEnSPGJBSZIkScPoeuCPk2TC+Z1pik3n9LhvNeCWfgaTJGk+sKAkSZKkYXQasA7wrrETSbYEdm8PT+5x31bAjf0MJknSfGBBSZIkScPoUOAh4LNJzkxyHM3ObQuB8yf2TwJIsghYGzh3oEklSRpBFpQkSZI0dKrqcmA/4D5gB+BVwNOAm4A397jtwPbx1H7nkyRp1KWqus4gSZIkLZMkawF7A2sC1wEnVNXdPca+k6Yh95FVdc/gUkqSNHosKEmSJEmSJGlGXPImSZIkSZKkGbGgJEmSJEmSpBmxoCRJkiRJkqQZsaAkSZLmlCTXJKkJH/cnuS7Jt5Ls3HXGqSQ5rc28yzLcO9lzX9rHabP+JCRJkpZiha4DSJIk9fBD4L/az1cFtgZeDbw6yfur6tDOkvXPt4HVJ5x7KrBP+/nXJ7nnsr4mkiRJmoS7vEmSpDklyTXA+sBLquq0ceefABwGHAg8CGxcVTd0kXEq7YyhnZmQfzm+3gbAbwCqKsv79SRJkmaDS94kSdJQqKqHgL8B7gJWBHbvNpEkSdL8ZUFJkiQNjaq6D/h1e7jW+GtJnpLkA0l+meSe9uOiJIckefJkXy/JPkmOSnJJkjvbXk1XJvlikmf3ypFk9SRfSHJDkgeSXJ3ko72+Tz8k+XHbQ+m1U4z5dDvmE+POHd2e2z/JVkmOT3JrkvuS/HuSA5byffdIcmKSm5M8mOSmJP+S5Hmz+fwkSdLcZkFJkiQNm1Xax5vHTiRZHTgb+Efg2TT9l35Is3Tun4Czkqw2ydc6FngNcA9wKnAK8ETgncAFSTadeEOStYFzgINoZkqdCFwCvBv4cXtuED7fPr5zsotJngQcACwBjphkyHY0/82eS/O8zwL+BDgqyed6fM3DgB8AewFXAccDNwGvBc5N8rJlfC6SJGnIWFCSJElDI8mWwIY0PZR+NO7S4cDzgDOAjarqL6rqL4CNeLRQ8sVJvuTrgTWr6gVVtW9V/Vn79f+Rpjn2YZPc88X2655K08fp1e19mwGrAdsv/zOdlpOAa4EXJ3nuJNdfR9PM/PtV9ZtJrr8D+DKwWVW9rqp2BXakWVL47onFoSTvAN5DUzx7XlXtUFWvqaptgD+n2ezlG0lWnaXnJ0mS5jALSpIkac5LsmqSvYDjaF6/vHesIXeS9YF9aWbivK2q7hy7r6ruAN7WXnvNxGVsVfWtqrp3wrk/VNUHgRuB3ZM8bVyO9WiKJw8D76iqu8bdtxj429l71lOrqodpCmkw+SylsXOHT3INYDFwcPt1xr7mOcDY7nnvGzufZCHwofbwNVX1mJ3lqup44EvA04E3TvtJSJKkoWVBSZIkzVU/bXv9FHA78D2aJWx7VdX4JVwvBgL8oqoun/hFquo/aZaoLQB2mng9yaZJ3pPkc20/paOTHE0z42YBsMm44TuN+15XTfK9TgLuXKZnu2yOBO4D3jih8LUdsC1wNc0Stcl8u6oemOT8P7ePL0qyQvv5VsAzgUva/56T+Vn7OKgZWpIkqUMrLH2IJElSJ34I/BdNAWdtmmLOSsAxSXasqivbceu0j5Mt6xpzNU2hY2wsbbHkcOCt7ffoZeVxn687je91Lc1Mnb6rqtuTfIPmObyJx89YOqKqlvS4vddzuI5mRtdKwDNoelVt1F7bsi3wTWWN6WSXJEnDzYKSJEmaqz5WVaeNHSR5Jk2R6Xk0vXpeWFXjixtLK3RM9Nc0y+FuBN5P02vplrFZO0nOoilCTVVsmgs+T1NQOhA4PMkzaBqN3w8cNUvfY2H7uJimd9RULlvKdUmSNAIsKEmSpKFQVTcleQ3wK+AFwBuA/0NT5IBHZ9FMZuza4nHnXt0+vr2qvjvJPZtMcm7s/g2m+F7rT3Ft1lXVr5KcDuyUZCfghTSzi46uqtunuHWDHufXo1nqdz9wW3vu+vbxpqraf7lDS5KkoWcPJUmSNDTaZtBjy7r+oV22dgbN7KQXJtl04j1JtgC2o1nGdfq4S6u1j9dPcs9LmXzp1tj32j7J4wpYSV7OgJa7TfD59vFdNLu3weS72o23b5IVJzn/hvbx51X1h/bzc2mKS1snmazQJkmS5hkLSpIkadj8E83W9hsDb6qqa4Hv0Lyu+VKSVcYGJnk6ze5jC4BvVdX44tHY0qwDkywYd8/GwP+e7BtX1TXAiTRLwI5I8pRx9z0L+NTyPrlldDxNYezVwIbAeVV1/lLuWRf42ITnvohm+R/AYWPnq+oh4CM0z/v4JC+Y+MWSrJjkFUk2X54nIkmShoMFJUmSNFSq6rc8Wrj5+3aW0oHAfwC7AFcn+U6S79A0434x8EvgoAlf6qPAQ8DbgUuTfDPJj4D/pCnOnNUjwjuBa4Ddgd8k+dckJwK/Bn4HnD0bz3Mm2plE43e+W9rsJGiKZu8ELk/yL0lOpXnOKwOHtzvWjf8ehwGHAlsC5yT5ZZLj2v9uZ9DsxHcCUy8HlCRJI8KCkiRJGkaf4dHdx/arqltpGmh/kKbP0V7tx/XAB4AdJ/YTqqqzgUXAycAqwCtpZu38E7AHTbHpcarqRpoeTke0Y15B0yj8cGBX4MFZfJ4zcUr7eBtw7DTGnwPsQDNTaw9gR+Bimkbl75rshqp6P7Az8E1gVeDlwJ7A6sB3aZbLnbHMz0CSJA2NPHZzFEmSJA2jJIcC7wU+UVV/N8W4o4H9gAOq6uiBhJMkSSPHGUqSJElDLsmzaWYWPQh8oeM4kiRpHlih6wCSJElaNkk+RrNM76XAU4BPTmg8LkmS1BcWlCRJkvqoXWI2XUdW1ZkzGP9aYD3gJuDjND2kJEmS+s4eSpIkSX2UZCYvtuxrJEmShoIFJUmSJEmSJM2ITbklSZIkSZI0IxaUJEmSJEmSNCMWlCRJkiRJkjQjFpQkSZIkSZI0IxaUJEmSJEmSNCMWlCRJkiRJkjQj/w8uBUJhkzl85gAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 1440x720 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "A2018=A2018.withColumn(\n", + " \"Road_Type\",\n", + " when(\n", + " col(\"Road_Type\") == 1,\n", + " \"Roundabout\"\n", + " ).when(\n", + " col(\"Road_Type\") == 2,\n", + " \"One way street\"\n", + " ).when(\n", + " col(\"Road_Type\") == 3,\n", + " \"Dual carriageway\"\n", + " ).when(\n", + " col(\"Road_Type\") == 6,\n", + " \"Single carriageway\"\n", + " ).when(\n", + " col(\"Road_Type\") == 7,\n", + " \"Slip road\"\n", + " ).when(\n", + " col(\"Road_Type\") == 9,\n", + " \"Unknown\"\n", + " ).when(\n", + " col(\"Road_Type\") == 12,\n", + " \"One way street/Slip road\"\n", + " ).when(\n", + " col(\"Road_Type\") == -1,\n", + " \"Data missing or out of range\"\n", + " ).otherwise(col(\"Road_Type\"))\n", + ")\n", + "dangeorusroadtype = A2018.groupby('Road_Type','first_road_class').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "dangeorusroadtype_df=dangeorusroadtype.toPandas()\n", + "\n", + "dangeorusroadtype_df=dangeorusroadtype_df.rename(columns={\"first_road_class\": \"road_name\"})\n", + "\n", + "result30=pd.merge(dangeorusroadtype_df, road_length_traffic, on=['road_name'])\n", + "\n", + "result30[\"Accident Probability\"] = result30[\"Total accidents\"] / result30[\"Trafficvolume\"]\n", + "result30=result30.drop(['Total accidents', 'Trafficvolume'], axis=1)\n", + "result30=result30.drop(['road_name'], axis=1)\n", + "result30_df = result30.groupby('Road_Type', sort=False)[\"Accident Probability\"].sum().reset_index(name ='Accident Probability')\n", + "result30_df=result30_df.drop(labels=[6],axis=0)\n", + "result30_df=result30_df.sort_values('Road_Type')\n", + "ax=result30_df.plot.bar('Road_Type','Accident Probability', rot=90,title=\"Accidents probabilty over road type \",figsize=(20, 10),color=\"Orange\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "A2018=A2018.withColumn(\n", + " \"Road_Type\",\n", + " when(\n", + " col(\"Road_Type\") == 1,\n", + " \"Roundabout\"\n", + " ).when(\n", + " col(\"Road_Type\") == 2,\n", + " \"One way street\"\n", + " ).when(\n", + " col(\"Road_Type\") == 3,\n", + " \"Dual carriageway\"\n", + " ).when(\n", + " col(\"Road_Type\") == 6,\n", + " \"Single carriageway\"\n", + " ).when(\n", + " col(\"Road_Type\") == 7,\n", + " \"Slip road\"\n", + " ).when(\n", + " col(\"Road_Type\") == 9,\n", + " \"Unknown\"\n", + " ).when(\n", + " col(\"Road_Type\") == 12,\n", + " \"One way street/Slip road\"\n", + " ).when(\n", + " col(\"Road_Type\") == -1,\n", + " \"Data missing or out of range\"\n", + " ).otherwise(col(\"Road_Type\"))\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "roadtype1=A2018.select(col(\"Road_Type\"),col(\"longitude\"),col(\"latitude\"))\n", + "Accident_Information20052019points=roadtype1.select(col(\"Longitude\"),col(\"Latitude\"),col(\"Year\"),concat(Accident_Information20052019points['1st_Road_Class'],Accident_Information20052019points['1st_Road_Number']).alias(\"road_name\"))\n", + "Accident_Information20052019points=Accident_Information20052019points.filter(Accident_Information20052019points.road_name==\"A51\")\n", + "Accident_Information20052019points.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+------------------+---------+---------+---------------+\n", + "| Road_Type|longitude| latitude|Total accidents|\n", + "+------------------+---------+---------+---------------+\n", + "|Single carriageway|-0.170782|51.501819| 1|\n", + "|Single carriageway|-0.206827|51.523238| 2|\n", + "|Single carriageway|-0.201912|51.497984| 2|\n", + "| One way street|-0.135473|51.498475| 1|\n", + "|Single carriageway|-0.167087|51.529279| 1|\n", + "|Single carriageway|-0.193582|51.526452| 3|\n", + "| One way street|-0.151663|51.518515| 2|\n", + "|Single carriageway|-0.193442| 51.52636| 4|\n", + "| One way street|-0.133996|51.509962| 1|\n", + "| One way street|-0.130422| 51.51629| 4|\n", + "|Single carriageway|-0.125741|51.496881| 15|\n", + "| Dual carriageway|-0.154789|51.508942| 1|\n", + "|Single carriageway|-0.131944| 51.49671| 1|\n", + "|Single carriageway|-0.147967|51.506586| 5|\n", + "|Single carriageway|-0.090806|51.543349| 1|\n", + "|Single carriageway|-0.168891|51.538209| 1|\n", + "|Single carriageway|-0.141031|51.553059| 1|\n", + "|Single carriageway|-0.135949| 51.52564| 1|\n", + "| One way street|-0.234388|51.492722| 2|\n", + "|Single carriageway|-0.032297| 51.53231| 5|\n", + "+------------------+---------+---------+---------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "roadtype = A2018.groupby('Road_Type','longitude','latitude').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "roadtype.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DataFrame[Road_Type: string, longitude: string, latitude: string, Total accidents: bigint]" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "roadtype_spark=roadtype.toPandas()\n", + "roadtype" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Road_Type</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.170782</td>\n", + " <td>51.501819</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.206827</td>\n", + " <td>51.523238</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.201912</td>\n", + " <td>51.497984</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>One way street</td>\n", + " <td>-0.135473</td>\n", + " <td>51.498475</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.167087</td>\n", + " <td>51.529279</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015739</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.287365</td>\n", + " <td>55.872205</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015740</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.25897</td>\n", + " <td>55.828063</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015741</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.288574</td>\n", + " <td>55.882689</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015742</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.175269</td>\n", + " <td>55.85861</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015743</th>\n", + " <td>Single carriageway</td>\n", + " <td>-3.87831</td>\n", + " <td>55.785517</td>\n", + " <td>1</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>2015744 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Road_Type longitude latitude Total accidents\n", + "0 Single carriageway -0.170782 51.501819 1\n", + "1 Single carriageway -0.206827 51.523238 2\n", + "2 Single carriageway -0.201912 51.497984 2\n", + "3 One way street -0.135473 51.498475 1\n", + "4 Single carriageway -0.167087 51.529279 1\n", + "... ... ... ... ...\n", + "2015739 Single carriageway -4.287365 55.872205 1\n", + "2015740 Single carriageway -4.25897 55.828063 1\n", + "2015741 Single carriageway -4.288574 55.882689 1\n", + "2015742 Single carriageway -4.175269 55.85861 1\n", + "2015743 Single carriageway -3.87831 55.785517 1\n", + "\n", + "[2015744 rows x 4 columns]" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "roadtype_spark" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+----+---------+-----------+---------------+------------------+---------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+-------------------------------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "|Count_point_id|year|Region_id|Region_name|Region_ons_code|Local_authority_id|Local_authority_name |Local_authority_code|Road_name|Road_category|Road_type|Start_junction_road_name|End_junction_road_name|Easting|Northing|Latitude |Longitude |Link_length_km|Link_length_miles |Estimation_method|Estimation_method_detailed |Pedal_cycles|Two_wheeled_motor_vehicles|Cars_and_taxis|Buses_and_coaches|LGVs |HGVs_2_rigid_axle|HGVs_3_rigid_axle|HGVs_4_or_more_rigid_axle|HGVs_3_or_4_articulated_axle|HGVs_5_articulated_axle|HGVs_6_articulated_axle|All_HGVs|All_motor_vehicles|\n", + "+--------------+----+---------+-----------+---------------+------------------+---------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+-------------------------------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "|51 |2005|1 |South West |E12000009 |1 |Isles of Scilly |E06000053 |A3111 |PA |Major |Pierhead, Hugh Town |A3112 |90200 |10585 |49.915022920|-6.317072964|.30 |.19000000000000000 |Estimated |Estimated using previous year's AADF on this link|205 |35 |470 |30 |323 |83 |6 |0 |1 |0 |0 |90 |948 |\n", + "|52 |2005|1 |South West |E12000009 |1 |Isles of Scilly |E06000053 |A3112 |PA |Major |A3111 |A3110 |91000 |10240 |49.912342659|-6.305685679|2.00 |1.24000000000000000|Estimated |Estimated using previous year's AADF on this link|66 |104 |543 |40 |182 |13 |1 |0 |0 |0 |0 |14 |883 |\n", + "|53 |2005|1 |South West |E12000009 |1 |Isles of Scilly |E06000053 |A3111 |PA |Major |A3112 |A3110 |91000 |10775 |49.917140810|-6.306113756|1.20 |.75000000000000000 |Estimated |Estimated using previous year's AADF on this link|184 |125 |914 |53 |283 |33 |0 |0 |0 |0 |0 |33 |1408 |\n", + "|54 |2005|1 |South West |E12000009 |1 |Isles of Scilly |E06000053 |A3110 |PA |Major |A3111 |A3112 |91515 |10820 |49.917810282|-6.298996455|.20 |.12000000000000000 |Estimated |Estimated using previous year's AADF on this link|68 |97 |517 |12 |257 |13 |0 |0 |0 |0 |0 |13 |896 |\n", + "|55 |2005|1 |South West |E12000009 |1 |Isles of Scilly |E06000053 |A3110 |PA |Major |A3111 |A3112 |91800 |10890 |49.918585039|-6.295093656|4.00 |2.49000000000000000|Counted |Manual count |42 |54 |183 |8 |67 |12 |3 |0 |0 |0 |0 |15 |327 |\n", + "|501 |2005|4 |Wales |W92000004 |6 |Newport |W06000022 |M4 |TM |Major |28 |27 |328570 |187000 |51.577320306|-3.032184269|2.20 |1.37000000000000000|Estimated |Estimated using previous year's AADF on this link|0 |395 |89870 |472 |13396|2667 |441 |366 |1040 |3874 |2283 |10671 |114804 |\n", + "|502 |2005|4 |Wales |W92000004 |7 |Bridgend |W06000013 |M4 |TM |Major |LA Boundary |37 |280770 |182100 |51.525189997|-3.720044465|2.90 |1.80000000000000000|Counted |Manual count |0 |143 |47789 |271 |7636 |1989 |539 |672 |374 |1625 |1153 |6352 |62191 |\n", + "|503 |2005|4 |Wales |W92000004 |8 |Swansea |W06000011 |M4 |TM |Major |47 |46 |263100 |199260 |51.675378776|-3.981299876|2.90 |1.80000000000000000|Estimated |Estimated using previous year's AADF on this link|0 |189 |42993 |113 |8423 |1721 |374 |256 |334 |906 |685 |4276 |55994 |\n", + "|505 |2005|4 |Wales |W92000004 |10 |Gwynedd |W06000002 |A5 |PA |Major |A487 |A4087 |256000 |371400 |53.220081427|-4.158239803|2.90 |1.80000000000000000|Estimated |Estimated using previous year's AADF on this link|128 |182 |10960 |127 |1214 |73 |9 |1 |2 |1 |0 |86 |12569 |\n", + "|506 |2005|4 |Wales |W92000004 |11 |Conwy |W06000003 |A5 |TA |Major |LA Boundary |A4086 |266150 |360260 |53.122661912|-4.001657116|8.40 |5.22000000000000000|Estimated |Estimated using previous year's AADF on this link|0 |19 |2561 |22 |456 |63 |13 |13 |4 |7 |10 |110 |3168 |\n", + "|508 |2005|4 |Wales |W92000004 |12 |Denbighshire |W06000004 |A5 |TA |Major |A539 |LA Boundary |324887 |341121 |52.962175094|-3.119702564|4.80 |2.98000000000000000|Estimated |Estimated using previous year's AADF on this link|1 |93 |4670 |50 |708 |178 |31 |25 |17 |59 |72 |382 |5903 |\n", + "|509 |2005|4 |Wales |W92000004 |13 |Monmouthshire |W06000021 |A40 |TA |Major |A449 |B4233 |350000 |211160 |51.796842440|-2.726434945|9.70 |6.03000000000000000|Counted |Manual count |0 |111 |18793 |108 |3373 |1227 |148 |63 |413 |1511 |1088 |4450 |26835 |\n", + "|510 |2005|4 |Wales |W92000004 |13 |Monmouthshire |W06000021 |A40 |TA |Major |LA Boundary |Pentre Rd, Abergavenny|325000 |216300 |51.840248870|-3.090006725|4.30 |2.67000000000000000|Counted |Manual count |13 |138 |7159 |54 |906 |130 |34 |8 |11 |46 |51 |280 |8537 |\n", + "|512 |2005|4 |Wales |W92000004 |14 |Powys |W06000023 |A40 |TA |Major |LA Boundary |A4067 |290000 |229321 |51.951468998|-3.601999230|11.50 |7.15000000000000000|Estimated |Estimated using previous year's AADF on this link|2 |84 |2347 |40 |694 |241 |30 |24 |5 |23 |69 |392 |3557 |\n", + "|514 |2005|4 |Wales |W92000004 |15 |Carmarthenshire |W06000010 |A40 |TA |Major |A485 |B4130 |245000 |221137 |51.867218741|-4.252634039|6.40 |3.98000000000000000|Counted |Manual count |6 |48 |5881 |80 |772 |123 |46 |21 |63 |40 |57 |350 |7131 |\n", + "|515 |2005|4 |Wales |W92000004 |16 |Pembrokeshire |W06000009 |A40 |TA |Major |A478 |LA Boundary |215000 |216780 |51.818943568|-4.685548935|6.80 |4.23000000000000000|Counted |Manual count |1 |82 |7668 |49 |1510 |428 |116 |36 |43 |176 |114 |913 |10222 |\n", + "|516 |2005|4 |Wales |W92000004 |16 |Pembrokeshire |W06000009 |A40 |TA |Major |A4219 |B4331 |194270 |230000 |51.930392758|-4.993778463|6.00 |3.73000000000000000|Counted |Manual count |1 |32 |4753 |68 |719 |192 |41 |12 |8 |58 |18 |329 |5901 |\n", + "|520 |2005|4 |Wales |W92000004 |17 |Neath Port Talbot |W06000012 |A48 |PA |Major |M4 jn38 |LA Boundary |281140 |185000 |51.551331439|-3.715693758|4.60 |2.86000000000000000|Estimated |Estimated using previous year's AADF on this link|78 |191 |7712 |93 |1351 |189 |21 |34 |4 |9 |10 |267 |9614 |\n", + "|521 |2005|4 |Wales |W92000004 |18 |The Vale of Glamorgan|W06000014 |A48 |PA |Major |LA boundary |A4222 Gibbet's Hill |295000 |176435 |51.477099176|-3.513319138|7.67 |4.77000000000000000|Counted |Manual count |12 |156 |11063 |80 |1129 |198 |48 |63 |16 |39 |36 |400 |12828 |\n", + "|522 |2005|4 |Wales |W92000004 |19 |Cardiff |W06000015 |A48 |PA |Major |A4232 / A4050 |A4161 |312000 |175000 |51.467103059|-3.268243720|4.50 |2.80000000000000000|Estimated |Estimated using previous year's AADF on this link|44 |124 |18249 |292 |1957 |248 |55 |14 |8 |15 |27 |367 |20989 |\n", + "+--------------+----+---------+-----------+---------------+------------------+---------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+-------------------------------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolume = spark.read.format('csv')\\\n", + " .option('header',True).option('escape','\"')\\\n", + " .load('/Users/Asfandyar/Downloads/dft_traffic_counts_aadf.csv')\n", + "# changing the type of column(\"Year'\") to interger type\n", + "Trafficvolume = Trafficvolume.withColumn('year',F.col('year').cast(IntegerType()))\n", + "Trafficvolume=Trafficvolume.filter(Trafficvolume.year>2004)\n", + "Trafficvolume=Trafficvolume.filter(Trafficvolume.year<2020)\n", + "Trafficvolume.sort(\"year\").show(truncate=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+----+---------+-----------+---------------+------------------+--------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+--------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "|Count_point_id|year|Region_id|Region_name|Region_ons_code|Local_authority_id|Local_authority_name|Local_authority_code|Road_name|Road_category|Road_type|Start_junction_road_name|End_junction_road_name|Easting|Northing| Latitude| Longitude|Link_length_km| Link_length_miles|Estimation_method|Estimation_method_detailed|Pedal_cycles|Two_wheeled_motor_vehicles|Cars_and_taxis|Buses_and_coaches| LGVs|HGVs_2_rigid_axle|HGVs_3_rigid_axle|HGVs_4_or_more_rigid_axle|HGVs_3_or_4_articulated_axle|HGVs_5_articulated_axle|HGVs_6_articulated_axle|All_HGVs|All_motor_vehicles|\n", + "+--------------+----+---------+-----------+---------------+------------------+--------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+--------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "| 51|2005| 1| South West| E12000009| 1| Isles of Scilly| E06000053| A3111| PA| Major| Pierhead, Hugh Town| A3112| 90200| 10585|49.915022920|-6.317072964| .30| .19000000000000000| Estimated| Estimated using p...| 205| 35| 470| 30| 323| 83| 6| 0| 1| 0| 0| 90| 948|\n", + "| 52|2005| 1| South West| E12000009| 1| Isles of Scilly| E06000053| A3112| PA| Major| A3111| A3110| 91000| 10240|49.912342659|-6.305685679| 2.00|1.24000000000000000| Estimated| Estimated using p...| 66| 104| 543| 40| 182| 13| 1| 0| 0| 0| 0| 14| 883|\n", + "| 53|2005| 1| South West| E12000009| 1| Isles of Scilly| E06000053| A3111| PA| Major| A3112| A3110| 91000| 10775|49.917140810|-6.306113756| 1.20| .75000000000000000| Estimated| Estimated using p...| 184| 125| 914| 53| 283| 33| 0| 0| 0| 0| 0| 33| 1408|\n", + "| 54|2005| 1| South West| E12000009| 1| Isles of Scilly| E06000053| A3110| PA| Major| A3111| A3112| 91515| 10820|49.917810282|-6.298996455| .20| .12000000000000000| Estimated| Estimated using p...| 68| 97| 517| 12| 257| 13| 0| 0| 0| 0| 0| 13| 896|\n", + "| 55|2005| 1| South West| E12000009| 1| Isles of Scilly| E06000053| A3110| PA| Major| A3111| A3112| 91800| 10890|49.918585039|-6.295093656| 4.00|2.49000000000000000| Counted| Manual count| 42| 54| 183| 8| 67| 12| 3| 0| 0| 0| 0| 15| 327|\n", + "| 501|2005| 4| Wales| W92000004| 6| Newport| W06000022| M4| TM| Major| 28| 27| 328570| 187000|51.577320306|-3.032184269| 2.20|1.37000000000000000| Estimated| Estimated using p...| 0| 395| 89870| 472|13396| 2667| 441| 366| 1040| 3874| 2283| 10671| 114804|\n", + "| 502|2005| 4| Wales| W92000004| 7| Bridgend| W06000013| M4| TM| Major| LA Boundary| 37| 280770| 182100|51.525189997|-3.720044465| 2.90|1.80000000000000000| Counted| Manual count| 0| 143| 47789| 271| 7636| 1989| 539| 672| 374| 1625| 1153| 6352| 62191|\n", + "| 503|2005| 4| Wales| W92000004| 8| Swansea| W06000011| M4| TM| Major| 47| 46| 263100| 199260|51.675378776|-3.981299876| 2.90|1.80000000000000000| Estimated| Estimated using p...| 0| 189| 42993| 113| 8423| 1721| 374| 256| 334| 906| 685| 4276| 55994|\n", + "| 505|2005| 4| Wales| W92000004| 10| Gwynedd| W06000002| A5| PA| Major| A487| A4087| 256000| 371400|53.220081427|-4.158239803| 2.90|1.80000000000000000| Estimated| Estimated using p...| 128| 182| 10960| 127| 1214| 73| 9| 1| 2| 1| 0| 86| 12569|\n", + "| 506|2005| 4| Wales| W92000004| 11| Conwy| W06000003| A5| TA| Major| LA Boundary| A4086| 266150| 360260|53.122661912|-4.001657116| 8.40|5.22000000000000000| Estimated| Estimated using p...| 0| 19| 2561| 22| 456| 63| 13| 13| 4| 7| 10| 110| 3168|\n", + "| 508|2005| 4| Wales| W92000004| 12| Denbighshire| W06000004| A5| TA| Major| A539| LA Boundary| 324887| 341121|52.962175094|-3.119702564| 4.80|2.98000000000000000| Estimated| Estimated using p...| 1| 93| 4670| 50| 708| 178| 31| 25| 17| 59| 72| 382| 5903|\n", + "| 509|2005| 4| Wales| W92000004| 13| Monmouthshire| W06000021| A40| TA| Major| A449| B4233| 350000| 211160|51.796842440|-2.726434945| 9.70|6.03000000000000000| Counted| Manual count| 0| 111| 18793| 108| 3373| 1227| 148| 63| 413| 1511| 1088| 4450| 26835|\n", + "| 510|2005| 4| Wales| W92000004| 13| Monmouthshire| W06000021| A40| TA| Major| LA Boundary| Pentre Rd, Aberga...| 325000| 216300|51.840248870|-3.090006725| 4.30|2.67000000000000000| Counted| Manual count| 13| 138| 7159| 54| 906| 130| 34| 8| 11| 46| 51| 280| 8537|\n", + "| 512|2005| 4| Wales| W92000004| 14| Powys| W06000023| A40| TA| Major| LA Boundary| A4067| 290000| 229321|51.951468998|-3.601999230| 11.50|7.15000000000000000| Estimated| Estimated using p...| 2| 84| 2347| 40| 694| 241| 30| 24| 5| 23| 69| 392| 3557|\n", + "| 514|2005| 4| Wales| W92000004| 15| Carmarthenshire| W06000010| A40| TA| Major| A485| B4130| 245000| 221137|51.867218741|-4.252634039| 6.40|3.98000000000000000| Counted| Manual count| 6| 48| 5881| 80| 772| 123| 46| 21| 63| 40| 57| 350| 7131|\n", + "| 515|2005| 4| Wales| W92000004| 16| Pembrokeshire| W06000009| A40| TA| Major| A478| LA Boundary| 215000| 216780|51.818943568|-4.685548935| 6.80|4.23000000000000000| Counted| Manual count| 1| 82| 7668| 49| 1510| 428| 116| 36| 43| 176| 114| 913| 10222|\n", + "| 516|2005| 4| Wales| W92000004| 16| Pembrokeshire| W06000009| A40| TA| Major| A4219| B4331| 194270| 230000|51.930392758|-4.993778463| 6.00|3.73000000000000000| Counted| Manual count| 1| 32| 4753| 68| 719| 192| 41| 12| 8| 58| 18| 329| 5901|\n", + "| 520|2005| 4| Wales| W92000004| 17| Neath Port Talbot| W06000012| A48| PA| Major| M4 jn38| LA Boundary| 281140| 185000|51.551331439|-3.715693758| 4.60|2.86000000000000000| Estimated| Estimated using p...| 78| 191| 7712| 93| 1351| 189| 21| 34| 4| 9| 10| 267| 9614|\n", + "| 521|2005| 4| Wales| W92000004| 18|The Vale of Glamo...| W06000014| A48| PA| Major| LA boundary| A4222 Gibbet's Hill| 295000| 176435|51.477099176|-3.513319138| 7.67|4.77000000000000000| Counted| Manual count| 12| 156| 11063| 80| 1129| 198| 48| 63| 16| 39| 36| 400| 12828|\n", + "| 522|2005| 4| Wales| W92000004| 19| Cardiff| W06000015| A48| PA| Major| A4232 / A4050| A4161| 312000| 175000|51.467103059|-3.268243720| 4.50|2.80000000000000000| Estimated| Estimated using p...| 44| 124| 18249| 292| 1957| 248| 55| 14| 8| 15| 27| 367| 20989|\n", + "+--------------+----+---------+-----------+---------------+------------------+--------------------+--------------------+---------+-------------+---------+------------------------+----------------------+-------+--------+------------+------------+--------------+-------------------+-----------------+--------------------------+------------+--------------------------+--------------+-----------------+-----+-----------------+-----------------+-------------------------+----------------------------+-----------------------+-----------------------+--------+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolume.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+------------+------------+-------------------+------------------+\n", + "|Count_point_id| longitude| latitude| Link_length_miles|All_motor_vehicles|\n", + "+--------------+------------+------------+-------------------+------------------+\n", + "| 51|-6.317072964|49.915022920| .19000000000000000| 948|\n", + "| 52|-6.305685679|49.912342659|1.24000000000000000| 883|\n", + "| 53|-6.306113756|49.917140810| .75000000000000000| 1408|\n", + "| 54|-6.298996455|49.917810282| .12000000000000000| 896|\n", + "| 55|-6.295093656|49.918585039|2.49000000000000000| 327|\n", + "| 501|-3.032184269|51.577320306|1.37000000000000000| 114804|\n", + "| 502|-3.720044465|51.525189997|1.80000000000000000| 62191|\n", + "| 503|-3.981299876|51.675378776|1.80000000000000000| 55994|\n", + "| 505|-4.158239803|53.220081427|1.80000000000000000| 12569|\n", + "| 506|-4.001657116|53.122661912|5.22000000000000000| 3168|\n", + "| 508|-3.119702564|52.962175094|2.98000000000000000| 5903|\n", + "| 509|-2.726434945|51.796842440|6.03000000000000000| 26835|\n", + "| 510|-3.090006725|51.840248870|2.67000000000000000| 8537|\n", + "| 512|-3.601999230|51.951468998|7.15000000000000000| 3557|\n", + "| 514|-4.252634039|51.867218741|3.98000000000000000| 7131|\n", + "| 515|-4.685548935|51.818943568|4.23000000000000000| 10222|\n", + "| 516|-4.993778463|51.930392758|3.73000000000000000| 5901|\n", + "| 520|-3.715693758|51.551331439|2.86000000000000000| 9614|\n", + "| 521|-3.513319138|51.477099176|4.77000000000000000| 12828|\n", + "| 522|-3.268243720|51.467103059|2.80000000000000000| 20989|\n", + "+--------------+------------+------------+-------------------+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolumepoints=Trafficvolume.select(col(\"Count_point_id\"),col(\"longitude\"),col(\"latitude\"),col(\"Link_length_miles\"),col(\"All_motor_vehicles\"))\n", + "Trafficvolumepoints.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Count_point_id</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>Link_length_miles</th>\n", + " <th>All_motor_vehicles</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>329793</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869526</td>\n", + " <td>1.12000000000000000</td>\n", + " <td>87649</td>\n", + " </tr>\n", + " <tr>\n", + " <th>211127</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869528</td>\n", + " <td>1.12000000000000000</td>\n", + " <td>88207</td>\n", + " </tr>\n", + " <tr>\n", + " <th>233871</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869528</td>\n", + " <td>1.12000000000000000</td>\n", + " <td>88858</td>\n", + " </tr>\n", + " <tr>\n", + " <th>121187</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869528</td>\n", + " <td>1.12000000000000000</td>\n", + " <td>120384</td>\n", + " </tr>\n", + " <tr>\n", + " <th>66505</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869528</td>\n", + " <td>1.12000000000000000</td>\n", + " <td>111253</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>121028</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>None</td>\n", + " <td>6886</td>\n", + " </tr>\n", + " <tr>\n", + " <th>94338</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>None</td>\n", + " <td>7726</td>\n", + " </tr>\n", + " <tr>\n", + " <th>66346</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>None</td>\n", + " <td>7203</td>\n", + " </tr>\n", + " <tr>\n", + " <th>44343</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>None</td>\n", + " <td>7204</td>\n", + " </tr>\n", + " <tr>\n", + " <th>22119</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>None</td>\n", + " <td>6892</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>362550 rows × 5 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Count_point_id longitude latitude Link_length_miles \\\n", + "329793 1000 -4.139833 55.869526 1.12000000000000000 \n", + "211127 1000 -4.139833 55.869528 1.12000000000000000 \n", + "233871 1000 -4.139833 55.869528 1.12000000000000000 \n", + "121187 1000 -4.139833 55.869528 1.12000000000000000 \n", + "66505 1000 -4.139833 55.869528 1.12000000000000000 \n", + "... ... ... ... ... \n", + "121028 999999 -1.332606 51.355174 None \n", + "94338 999999 -1.332606 51.355174 None \n", + "66346 999999 -1.332606 51.355174 None \n", + "44343 999999 -1.332606 51.355174 None \n", + "22119 999999 -1.332606 51.355174 None \n", + "\n", + " All_motor_vehicles \n", + "329793 87649 \n", + "211127 88207 \n", + "233871 88858 \n", + "121187 120384 \n", + "66505 111253 \n", + "... ... \n", + "121028 6886 \n", + "94338 7726 \n", + "66346 7203 \n", + "44343 7204 \n", + "22119 6892 \n", + "\n", + "[362550 rows x 5 columns]" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolumepoints=Trafficvolumepoints.toPandas()\n", + "Trafficvolumepoints['longitude'] = Trafficvolumepoints['longitude'].astype(float)\n", + "Trafficvolumepoints['latitude'] = Trafficvolumepoints['latitude'].astype(float)\n", + "Trafficvolumepoints\n", + "Trafficvolumepoints.sort_values(by=['Count_point_id'])" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Count_point_id</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>number of times</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>3066</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869528</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>34024</th>\n", + " <td>1000</td>\n", + " <td>-4.139833</td>\n", + " <td>55.869526</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55057</th>\n", + " <td>1001</td>\n", + " <td>-4.243721</td>\n", + " <td>55.869385</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>46011</th>\n", + " <td>1001</td>\n", + " <td>-4.243720</td>\n", + " <td>55.869383</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>853</th>\n", + " <td>1004</td>\n", + " <td>-4.096664</td>\n", + " <td>55.839624</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2486</th>\n", + " <td>999994</td>\n", + " <td>-0.108731</td>\n", + " <td>51.368788</td>\n", + " <td>5</td>\n", + " </tr>\n", + " <tr>\n", + " <th>35394</th>\n", + " <td>999995</td>\n", + " <td>-2.686455</td>\n", + " <td>52.964380</td>\n", + " <td>3</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1805</th>\n", + " <td>999996</td>\n", + " <td>0.395456</td>\n", + " <td>51.874254</td>\n", + " <td>4</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17036</th>\n", + " <td>999997</td>\n", + " <td>-0.506198</td>\n", + " <td>50.807358</td>\n", + " <td>4</td>\n", + " </tr>\n", + " <tr>\n", + " <th>59923</th>\n", + " <td>999999</td>\n", + " <td>-1.332606</td>\n", + " <td>51.355174</td>\n", + " <td>5</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>69080 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Count_point_id longitude latitude number of times\n", + "3066 1000 -4.139833 55.869528 13\n", + "34024 1000 -4.139833 55.869526 2\n", + "55057 1001 -4.243721 55.869385 13\n", + "46011 1001 -4.243720 55.869383 2\n", + "853 1004 -4.096664 55.839624 2\n", + "... ... ... ... ...\n", + "2486 999994 -0.108731 51.368788 5\n", + "35394 999995 -2.686455 52.964380 3\n", + "1805 999996 0.395456 51.874254 4\n", + "17036 999997 -0.506198 50.807358 4\n", + "59923 999999 -1.332606 51.355174 5\n", + "\n", + "[69080 rows x 4 columns]" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolumepoints=Trafficvolume.select(col(\"Count_point_id\"),col(\"longitude\"),col(\"latitude\"),col(\"Link_length_miles\"),col(\"All_motor_vehicles\"))\n", + "Trafficvolumepoints = Trafficvolumepoints.groupby('Count_point_id','longitude','latitude').agg(F.count(Trafficvolumepoints.Count_point_id).alias('number of times'))\n", + "Trafficvolumepoints.sort(col('Count_point_id').desc())\n", + "Trafficvolumepoints=Trafficvolumepoints.toPandas()\n", + "Trafficvolumepoints['longitude'] = Trafficvolumepoints['longitude'].astype(float)\n", + "Trafficvolumepoints['latitude'] = Trafficvolumepoints['latitude'].astype(float)\n", + "Trafficvolumepoints\n", + "Trafficvolumepoints.sort_values(by=['Count_point_id'])" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Count_point_id</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>number of times</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1119</td>\n", + " <td>-4.720427</td>\n", + " <td>57.367016</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>6871</td>\n", + " <td>-0.104098</td>\n", + " <td>51.498207</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>7123</td>\n", + " <td>-1.588269</td>\n", + " <td>52.280898</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>7499</td>\n", + " <td>-1.630728</td>\n", + " <td>55.068909</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>7551</td>\n", + " <td>-0.178150</td>\n", + " <td>50.830306</td>\n", + " <td>13</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69075</th>\n", + " <td>811341</td>\n", + " <td>-4.723405</td>\n", + " <td>55.277716</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69076</th>\n", + " <td>811564</td>\n", + " <td>-4.131090</td>\n", + " <td>56.598905</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69077</th>\n", + " <td>811569</td>\n", + " <td>-2.990135</td>\n", + " <td>56.484969</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69078</th>\n", + " <td>812043</td>\n", + " <td>-1.187613</td>\n", + " <td>60.353261</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69079</th>\n", + " <td>941849</td>\n", + " <td>1.026896</td>\n", + " <td>52.922097</td>\n", + " <td>1</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>69080 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Count_point_id longitude latitude number of times\n", + "0 1119 -4.720427 57.367016 13\n", + "1 6871 -0.104098 51.498207 13\n", + "2 7123 -1.588269 52.280898 13\n", + "3 7499 -1.630728 55.068909 13\n", + "4 7551 -0.178150 50.830306 13\n", + "... ... ... ... ...\n", + "69075 811341 -4.723405 55.277716 1\n", + "69076 811564 -4.131090 56.598905 1\n", + "69077 811569 -2.990135 56.484969 1\n", + "69078 812043 -1.187613 60.353261 1\n", + "69079 941849 1.026896 52.922097 1\n", + "\n", + "[69080 rows x 4 columns]" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolumepoints" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Count_point_id</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>coordinates</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1119</td>\n", + " <td>-4.720427</td>\n", + " <td>57.367016</td>\n", + " <td>(-4.720427161, 57.367015644)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>6871</td>\n", + " <td>-0.104098</td>\n", + " <td>51.498207</td>\n", + " <td>(-0.104098441, 51.498207386)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>7123</td>\n", + " <td>-1.588269</td>\n", + " <td>52.280898</td>\n", + " <td>(-1.588269169, 52.280898317)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>7499</td>\n", + " <td>-1.630728</td>\n", + " <td>55.068909</td>\n", + " <td>(-1.630728357, 55.068908918)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>7551</td>\n", + " <td>-0.178150</td>\n", + " <td>50.830306</td>\n", + " <td>(-0.178149938, 50.830305808)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69075</th>\n", + " <td>811341</td>\n", + " <td>-4.723405</td>\n", + " <td>55.277716</td>\n", + " <td>(-4.7234053, 55.277716)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69076</th>\n", + " <td>811564</td>\n", + " <td>-4.131090</td>\n", + " <td>56.598905</td>\n", + " <td>(-4.1310899, 56.598905)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69077</th>\n", + " <td>811569</td>\n", + " <td>-2.990135</td>\n", + " <td>56.484969</td>\n", + " <td>(-2.9901353, 56.484969)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69078</th>\n", + " <td>812043</td>\n", + " <td>-1.187613</td>\n", + " <td>60.353261</td>\n", + " <td>(-1.1876129, 60.353261)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69079</th>\n", + " <td>941849</td>\n", + " <td>1.026896</td>\n", + " <td>52.922097</td>\n", + " <td>(1.0268962, 52.922097)</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>69080 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Count_point_id longitude latitude coordinates\n", + "0 1119 -4.720427 57.367016 (-4.720427161, 57.367015644)\n", + "1 6871 -0.104098 51.498207 (-0.104098441, 51.498207386)\n", + "2 7123 -1.588269 52.280898 (-1.588269169, 52.280898317)\n", + "3 7499 -1.630728 55.068909 (-1.630728357, 55.068908918)\n", + "4 7551 -0.178150 50.830306 (-0.178149938, 50.830305808)\n", + "... ... ... ... ...\n", + "69075 811341 -4.723405 55.277716 (-4.7234053, 55.277716)\n", + "69076 811564 -4.131090 56.598905 (-4.1310899, 56.598905)\n", + "69077 811569 -2.990135 56.484969 (-2.9901353, 56.484969)\n", + "69078 812043 -1.187613 60.353261 (-1.1876129, 60.353261)\n", + "69079 941849 1.026896 52.922097 (1.0268962, 52.922097)\n", + "\n", + "[69080 rows x 4 columns]" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolumepoints=Trafficvolumepoints.drop(columns=['number of times'])\n", + "Trafficvolumepoints\n", + "Trafficvolumepoints[\"coordinates\"] = list(zip(Trafficvolumepoints[\"longitude\"] , Trafficvolumepoints[\"latitude\"]))\n", + "Trafficvolumepoints" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Count_point_id</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>coordinates</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1119</td>\n", + " <td>-4.720427</td>\n", + " <td>57.367016</td>\n", + " <td>(-4.720427161, 57.367015644)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>6871</td>\n", + " <td>-0.104098</td>\n", + " <td>51.498207</td>\n", + " <td>(-0.104098441, 51.498207386)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>7123</td>\n", + " <td>-1.588269</td>\n", + " <td>52.280898</td>\n", + " <td>(-1.588269169, 52.280898317)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>7499</td>\n", + " <td>-1.630728</td>\n", + " <td>55.068909</td>\n", + " <td>(-1.630728357, 55.068908918)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>7551</td>\n", + " <td>-0.178150</td>\n", + " <td>50.830306</td>\n", + " <td>(-0.178149938, 50.830305808)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69075</th>\n", + " <td>811341</td>\n", + " <td>-4.723405</td>\n", + " <td>55.277716</td>\n", + " <td>(-4.7234053, 55.277716)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69076</th>\n", + " <td>811564</td>\n", + " <td>-4.131090</td>\n", + " <td>56.598905</td>\n", + " <td>(-4.1310899, 56.598905)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69077</th>\n", + " <td>811569</td>\n", + " <td>-2.990135</td>\n", + " <td>56.484969</td>\n", + " <td>(-2.9901353, 56.484969)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69078</th>\n", + " <td>812043</td>\n", + " <td>-1.187613</td>\n", + " <td>60.353261</td>\n", + " <td>(-1.1876129, 60.353261)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>69079</th>\n", + " <td>941849</td>\n", + " <td>1.026896</td>\n", + " <td>52.922097</td>\n", + " <td>(1.0268962, 52.922097)</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>69080 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Count_point_id longitude latitude coordinates\n", + "0 1119 -4.720427 57.367016 (-4.720427161, 57.367015644)\n", + "1 6871 -0.104098 51.498207 (-0.104098441, 51.498207386)\n", + "2 7123 -1.588269 52.280898 (-1.588269169, 52.280898317)\n", + "3 7499 -1.630728 55.068909 (-1.630728357, 55.068908918)\n", + "4 7551 -0.178150 50.830306 (-0.178149938, 50.830305808)\n", + "... ... ... ... ...\n", + "69075 811341 -4.723405 55.277716 (-4.7234053, 55.277716)\n", + "69076 811564 -4.131090 56.598905 (-4.1310899, 56.598905)\n", + "69077 811569 -2.990135 56.484969 (-2.9901353, 56.484969)\n", + "69078 812043 -1.187613 60.353261 (-1.1876129, 60.353261)\n", + "69079 941849 1.026896 52.922097 (1.0268962, 52.922097)\n", + "\n", + "[69080 rows x 4 columns]" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Trafficvolumepoints=Trafficvolumepoints.drop(columns=['number of times'])\n", + "Trafficvolumepoints\n", + "Trafficvolumepoints[\"coordinates\"] = list(zip(Trafficvolumepoints[\"longitude\"] , Trafficvolumepoints[\"latitude\"]))\n", + "Trafficvolumepoints" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Road_Type</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.170782</td>\n", + " <td>51.501819</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.206827</td>\n", + " <td>51.523238</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.201912</td>\n", + " <td>51.497984</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>One way street</td>\n", + " <td>-0.135473</td>\n", + " <td>51.498475</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.167087</td>\n", + " <td>51.529279</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015739</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.287365</td>\n", + " <td>55.872205</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015740</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.25897</td>\n", + " <td>55.828063</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015741</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.288574</td>\n", + " <td>55.882689</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015742</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.175269</td>\n", + " <td>55.85861</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015743</th>\n", + " <td>Single carriageway</td>\n", + " <td>-3.87831</td>\n", + " <td>55.785517</td>\n", + " <td>1</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>2015744 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Road_Type longitude latitude Total accidents\n", + "0 Single carriageway -0.170782 51.501819 1\n", + "1 Single carriageway -0.206827 51.523238 2\n", + "2 Single carriageway -0.201912 51.497984 2\n", + "3 One way street -0.135473 51.498475 1\n", + "4 Single carriageway -0.167087 51.529279 1\n", + "... ... ... ... ...\n", + "2015739 Single carriageway -4.287365 55.872205 1\n", + "2015740 Single carriageway -4.25897 55.828063 1\n", + "2015741 Single carriageway -4.288574 55.882689 1\n", + "2015742 Single carriageway -4.175269 55.85861 1\n", + "2015743 Single carriageway -3.87831 55.785517 1\n", + "\n", + "[2015744 rows x 4 columns]" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "roadtype_spark" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Road_Type</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.170782</td>\n", + " <td>51.5018</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.206827</td>\n", + " <td>51.5232</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.201912</td>\n", + " <td>51.498</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>One way street</td>\n", + " <td>-0.135473</td>\n", + " <td>51.4985</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.167087</td>\n", + " <td>51.5293</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015739</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.287365</td>\n", + " <td>55.872205</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015740</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.25897</td>\n", + " <td>55.828063</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015741</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.288574</td>\n", + " <td>55.882689</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015742</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.175269</td>\n", + " <td>55.85861</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015743</th>\n", + " <td>Single carriageway</td>\n", + " <td>-3.87831</td>\n", + " <td>55.785517</td>\n", + " <td>1</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>2015744 rows × 4 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Road_Type longitude latitude Total accidents\n", + "0 Single carriageway -0.170782 51.5018 1\n", + "1 Single carriageway -0.206827 51.5232 2\n", + "2 Single carriageway -0.201912 51.498 2\n", + "3 One way street -0.135473 51.4985 1\n", + "4 Single carriageway -0.167087 51.5293 1\n", + "... ... ... ... ...\n", + "2015739 Single carriageway -4.287365 55.872205 1\n", + "2015740 Single carriageway -4.25897 55.828063 1\n", + "2015741 Single carriageway -4.288574 55.882689 1\n", + "2015742 Single carriageway -4.175269 55.85861 1\n", + "2015743 Single carriageway -3.87831 55.785517 1\n", + "\n", + "[2015744 rows x 4 columns]" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "roadtype_spark = roadtype_spark.dropna()\n", + "roadtype_spark" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [], + "source": [ + "roadtype_spark1=roadtype_spark\n", + "roadtype_spark1=roadtype_spark1.dropna().reset_index(drop=True)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": {}, + "outputs": [], + "source": [ + "roadtype_spark1=roadtype_spark1[roadtype_spark1['longitude']!=\"NULL\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/ipykernel_launcher.py:1: 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", + " \"\"\"Entry point for launching an IPython kernel.\n", + "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/ipykernel_launcher.py:2: 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", + " \n" + ] + } + ], + "source": [ + "roadtype_spark1['longitude'] = roadtype_spark1['longitude'].astype(float)\n", + "roadtype_spark1['latitude'] = roadtype_spark1['latitude'].astype(float)" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>Road_Type</th>\n", + " <th>longitude</th>\n", + " <th>latitude</th>\n", + " <th>Total accidents</th>\n", + " <th>coordinates</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.170782</td>\n", + " <td>51.5018</td>\n", + " <td>1</td>\n", + " <td>(-0.170782, 51.501819)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.206827</td>\n", + " <td>51.5232</td>\n", + " <td>2</td>\n", + " <td>(-0.206827, 51.523238)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.201912</td>\n", + " <td>51.498</td>\n", + " <td>2</td>\n", + " <td>(-0.201912, 51.497984)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>One way street</td>\n", + " <td>-0.135473</td>\n", + " <td>51.4985</td>\n", + " <td>1</td>\n", + " <td>(-0.135473, 51.498475)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>Single carriageway</td>\n", + " <td>-0.167087</td>\n", + " <td>51.5293</td>\n", + " <td>1</td>\n", + " <td>(-0.167087, 51.529279)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015739</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.287365</td>\n", + " <td>55.872205</td>\n", + " <td>1</td>\n", + " <td>(-4.287365, 55.872205)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015740</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.25897</td>\n", + " <td>55.828063</td>\n", + " <td>1</td>\n", + " <td>(-4.25897, 55.828063)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015741</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.288574</td>\n", + " <td>55.882689</td>\n", + " <td>1</td>\n", + " <td>(-4.288574, 55.882689)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015742</th>\n", + " <td>Single carriageway</td>\n", + " <td>-4.175269</td>\n", + " <td>55.85861</td>\n", + " <td>1</td>\n", + " <td>(-4.175269, 55.85861)</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2015743</th>\n", + " <td>Single carriageway</td>\n", + " <td>-3.87831</td>\n", + " <td>55.785517</td>\n", + " <td>1</td>\n", + " <td>(-3.87831, 55.785517)</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>2015744 rows × 5 columns</p>\n", + "</div>" + ], + "text/plain": [ + " Road_Type longitude latitude Total accidents \\\n", + "0 Single carriageway -0.170782 51.5018 1 \n", + "1 Single carriageway -0.206827 51.5232 2 \n", + "2 Single carriageway -0.201912 51.498 2 \n", + "3 One way street -0.135473 51.4985 1 \n", + "4 Single carriageway -0.167087 51.5293 1 \n", + "... ... ... ... ... \n", + "2015739 Single carriageway -4.287365 55.872205 1 \n", + "2015740 Single carriageway -4.25897 55.828063 1 \n", + "2015741 Single carriageway -4.288574 55.882689 1 \n", + "2015742 Single carriageway -4.175269 55.85861 1 \n", + "2015743 Single carriageway -3.87831 55.785517 1 \n", + "\n", + " coordinates \n", + "0 (-0.170782, 51.501819) \n", + "1 (-0.206827, 51.523238) \n", + "2 (-0.201912, 51.497984) \n", + "3 (-0.135473, 51.498475) \n", + "4 (-0.167087, 51.529279) \n", + "... ... \n", + "2015739 (-4.287365, 55.872205) \n", + "2015740 (-4.25897, 55.828063) \n", + "2015741 (-4.288574, 55.882689) \n", + "2015742 (-4.175269, 55.85861) \n", + "2015743 (-3.87831, 55.785517) \n", + "\n", + "[2015744 rows x 5 columns]" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "roadtype_spark[\"coordinates\"] = list(zip(roadtype_spark[\"longitude\"] , roadtype_spark[\"latitude\"]))\n", + "\n", + "roadtype_spark" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "float" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(Trafficvolumepoints[\"coordinates\"][0][0])" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 (-4.720427161, 57.367015644)\n", + "1 (-0.104098441, 51.498207386)\n", + "2 (-1.588269169, 52.280898317)\n", + "3 (-1.630728357, 55.068908918)\n", + "4 (-0.178149938, 50.830305808)\n", + " ... \n", + "69075 (-4.7234053, 55.277716)\n", + "69076 (-4.1310899, 56.598905)\n", + "69077 (-2.9901353, 56.484969)\n", + "69078 (-1.1876129, 60.353261)\n", + "69079 (1.0268962, 52.922097)\n", + "Name: coordinates, Length: 69080, dtype: object\n" + ] + }, + { + "ename": "TypeError", + "evalue": "min() got an unexpected keyword argument 'key'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-87-af8b01514a79>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 21\u001b[0m points=nearest_neighbor_bf(\n\u001b[0;32m---> 22\u001b[0;31m \u001b[0mquery_points\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mquery_points\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mreference_points\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mreference_points\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 23\u001b[0m )\n\u001b[1;32m 24\u001b[0m \u001b[0mpoints\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m<ipython-input-87-af8b01514a79>\u001b[0m in \u001b[0;36mnearest_neighbor_bf\u001b[0;34m(query_points, reference_points)\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0mreference_points\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 11\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreference_points\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 12\u001b[0;31m key=lambda X: SED(X, query_p))\n\u001b[0m\u001b[1;32m 13\u001b[0m )\n\u001b[1;32m 14\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mdatad\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mdatad2\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mTypeError\u001b[0m: min() got an unexpected keyword argument 'key'" + ] + } + ], + "source": [ + "def SED(X, Y):\n", + " #Squared Eucliden distance is computed between the x and y.\n", + " return sum((i-j)**2 for i, j in zip(X, Y))\n", + " \n", + "def nearest_neighbor_bf(*, query_points,reference_points):\n", + " #Nearest neighbor are found to the nearest coordinate\n", + " for query_p in query_points['coordinates']:\n", + " datad2.append(query_p)\n", + " datad.append( min(\n", + " reference_points,\n", + " print(reference_points),\n", + " key=lambda X: SED(X, query_p))\n", + " )\n", + " return datad,datad2\n", + "datad=[]\n", + "datad2=[]\n", + "reference_points =Trafficvolumepoints[\"coordinates\"]\n", + "query_points = roadtype_spark\n", + "count_point_id = Trafficvolumepoints[\"Count_point_id\"]\n", + "\n", + "points=nearest_neighbor_bf(\n", + " query_points = query_points,reference_points=reference_points\n", + ")\n", + "points" + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABFsAAANJCAYAAADTGTMWAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsIAAA7CARUoSoAAAP8FSURBVHhe7N0JvFTzG8fxp1LaF6WohBZJthQS2ZdQlijZE8VFKEvWkF12hRT+soTsS5QtFLKnEpUlCa1StGf+833uObe508xt7u10b/f2eb9ep+ae2c6cc+bM+T3n+T2/UrE4AwAAAAAAQCRKB/8DAAAAAAAgAgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAJCxhx56yNq0aWMtWrSwU0891X7++efgng3P9ddf78vZo0cPmzlzZjA3f1599VV/jWOPPdY++eSTYC5Kgl69evm2ve6662zevHnB3MI1Y8YMO/jgg305Xn/9dfvvv/+CezL3999/W58+ffw1br755mDuaqNHj/b7Dj/8cHvvvfeCuUDRef/99+3QQw+11q1b2xtvvBHMBYCSh2ALACAjK1eutGeffdaDDt988409+eST9v333wf3bni0bFpOTUuXLg3m5s+sWbP8+V988YX99ddfwdwNy6effmrHHHOMB8FefPHFYC7WZtKkSb5tp0yZYsuXLw/mFq4lS5b49tNyaF8riBUrVth3332X81mSKZCk+8aNG2dz584N5mbTPn3jjTfaHnvsYeeee26Bgj1Afmmf1P6oqSD7/eTJk32fPeSQQwggAtigEWwBAGTks88+s59++in4K9uHH37oV9Y3RJtsson/X7ZsWStVqpTfzi89VypVqpTzehsaNVzGjBnjQbDffvstmIu1qVChgv9fvnz5Au8f66p06dJWuXJlvx3uawUR7ptlypTx/xOF9+l9kvfhMFDz+eef25dffhnMBdYv7YfaH/XdK8h+v3DhQt9n9fsze/bsYC4AbHgItgAAMvLyyy/bn3/+aVWrVrV69er5CfNrr71mv/76a/CIDcs111xjH3zwgT344INWt27dYG7Jo8ZKlSpV/P9NN900mIuNRbVq1bz7kPb1yy+/PJibGQV7wqCTAopFFXQC8iMMGuq4V65cOb8NABsigi0AgLXSlcR3333Xu1vsv//+dsIJJ9jmm2/u6dzqjrEh2m677Wzfffe1nXfe2a+gllT6bGo0C8GW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AIAA9aUQBYItAAAAAAAAESLYAgAAAAAAECGCLQAAAAAAABFi6Oc4hn4GAACIxuzZs72wZL169YI5Kcz/yuyzC7Mv+xWH0ggr41PNHc32eDD77/XkgQcesGHDhvntyy67zDp06OC3i0r37t1t8uTJdt9999luu+0WzF27l19+2e6880479NBD7eqrry629S9+/PFHbydomNxVq1b5sMCikWpq1arl6+TYY4+1HXeM7xuF4O2337YbbrjBWrdubVdeeaWP+LU+/fDDDznb7/bbb7dtttkmuGfttP1feuklO+ecc+yUU04J5pqNGTPGrrjiCmvZsqXddttttummm/r8P/74w2688UabMWOG9enTx/bee2+fX1TmzZtnixcvtq222iqYU7Iw9HPhYM0CAACgcC2fZ/bbGLOZ8en3YjBpWeeODRZ+/ZgzZ4698sor3hjV9MYbb9jff/8d3Fs03n33XRs7dqwH0PJj+vTp/hm++eabYE7R+PPPP+28886zI4880r766qtgbuYWLlxoH330kX8WfSYFEZctW+av++abb3pwoGvXrvbUU08Fz1i/fv/9d1+ezz//3JYvXx7MXX+0/2kfeO+992zRokXB3MxofWvfUcAmkdad1ue4ceM8gBVSYOP999+31157zT9nSKObKSBw+OGH2x133OHrHyguCLYAAACgcJXaxKxc/H9NZYvBpOXcpHL8n/Xnww8/9KvN4VVm/f3tt9/67aJy11132YMPPmg777xzMCcz5cpphZlVrFjR/y8qS5YssdGjR9uIESM8mJVfGv5Xn6VGjRp28cUX2zPPPGPPPvusZ2woe+eQQw6xL7/80m6++WabOHFi8Kz1Rxk1yjKpVKlSoWQL6fNXrVrVp/wO5X7uuefaQw89ZMcff3wwJ5s+gyR/htq1a3v2zJNPPml77rlnMNc8m2jatGn21ltveQAnzC4CigOCLQAAAEARe+edd/yKvrpcHHjggTZlyhTPYChKxxxzjHcDqVu3bjCneFGQQF1tqlSpYtWqVQvm5o8qLijgoi40TZo0se222867DbVr1867YTRo0MCzN15//fVcmRrrW2F3zcrv+6kb0Nlnn2277LJLMCdv2kbt27e3k08+2ddpSOte206BO23LChUqBPcAGz6CLQAAAEARUmNdgZVNNtnETjrpJDvuuOO84f7BBx/Yb7/9Fjwq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O506dUo5opC6CWkkoq+++sruuusuu+666+yOO+6wt99+O88RjgAAAAAAANa3DSrYojou77//vv3777/WoEEDO/TQQ4N7clOwRZkvqiOjkYnUvUkBl9NPP93at29v7733XvDIzCTXjQEAAAAAACioDSrYMmfOHHvuueds0003tXbt2nn9lVQaNWpkPXv2tIEDB9rLL7/sxXpvuukmq1mzpgdaevToYR999FHw6LUj2AIAAAAAAKKyQQVbvv/+e/viiy+8MG7nzp2DubmVLVvWTj31VK+e3K1bNy/ce8QRR9h5553nQZfDDz/cfvzxR3vooYfs999/D561Jr3XVVddZV26dLEnn3zSs2kAAAAAAADW1QYTbFmwYIGNGDHCVqxYYbvssovtuuuuwT25KQtl8803t8022yyYk021XZo0aWLnn3++1a1b17sYaVSjdDSEdceOHe2cc86x1q1bezYNAAAAAADAutpggi3KQnn22Wd9OOejjz46ZWHcTLRs2dJq165t//zzjy1atCiYuyYV4NVj999/f9thhx08YwYAAAAAAGBdbRDBFg3h/Pnnn9sff/xh9erVs2OOOSa4J//0WrFYLPgrMyrMm9/nAAAAAAAApLJBBFtmz57t9VbKlClj++yzj3fxKSjVfJk1a5Z3M1KWDAAAAAAAQGEqcLAlrHGi7jeVK1f228mmTZtmN954o1199dX25ZdfBnPXpIK27777rtWqVSttYVxR9smMGTNs6tSpwZzcvvnmG7vzzjvtzz//tKOOOsoaN24c3AMAAAAAAFA4Mg62zJs3zwYNGmRXXnmlB1Deeustn69Mkuuuu8769etnl112mY0ZM8bniwrUDhkyxB544AGbPHlyMDc31VYZPXq0jwbUtGlTz2xJR8EWBVTOPPNMH0VIwz0//PDDds8999hFF11kXbt2tQ8//NB23313H51IwRsAAAAAAIDClHGwRV19lDVyyy232DXXXGPvvfeez1fw47bbbrNrr73W+vfvb++8847PF40s9Ndff/m0bNmyYG5uP/30kwdjRMM4V6hQwW+nUrp0aatZs6bXZXnllVc82HLBBRdYr1697N5777W5c+faueeeawMGDLBWrVoFzwIAAAAAACg8pWIZVobV0Mxvv/22Z7joKQp8aNJtBT9EwzLvsccetttuu/nfGmFImSYKuuy1114pu/WovoqGaa5YsaLtu+++ttVWWwX3pLZ48WLvdqTuRPPnz/fMGKlatarVr1/fh43WSEP5oSCRukJlZWUFcwAAAAAAKHkmTZpkffv2teHDh3ubHutHxsGWkoxgCwAAAABgY0CwpXCwZgEAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQgRbAAAAAAAAIkSwBQAAAAAAIEIEWwAAAAAAACJEsAUAAAAAACBCBFsAAAAAAAAiRLAFAAAAAAAgQqViccHtPK1cudLmzp1rv//+u/35559+e8WKFda0aVNr1aqVlS9fPnhkZhYsWGBjx47119Lr/Pfff8E9q9WrV8/at29vZcqUCebkpueOHz/eZs6c6c/ffPPNbeedd7Ztt902eERm+vfvb5UrV7asrKxgDgAAAAAAJc+kSZOsb9++Nnz4cCtdmvyL9SXjYMvHH39sQ4YMsc8++8wmT56cExw58cQT7d577/VAR35MnDjRn6v/pWzZspa4KLp94IEH2uuvv27lypUL5q42btw4GzhwoL300ku2ZMkSK1WqlE+HHnqo9ezZ0w466CDbZJNNgkfnjWALAAAAAGBjQLClcGS8ZidMmGAffvihLV++3A4++GBr1qyZz69QoYIHOfJL2Sp6bvXq1e2SSy6xhx9+2AYNGpRr6t27d8qAybRp0+yiiy6yJ554wtq0aWO33nqr3XXXXdapUycbOXKknX/++fbpp5/mCt4AAAAAAAAUhoyDLa1bt7abb77Zs1tefPFFO/XUU33+qlWr/P+C0HNr1KhhxxxzjHXt2tW6deuWM5155pnWrl27NSJtes7dd9/twZQjjjjCnnzySQ/WKJtFwZezzjrLfvrpJ8+2mT17dvAsAAAAAACAwpFxsGWXXXaxzp0727777muVKlVKWWOlIJR9kp/XUp2Wl19+2TNj+vTpk6v7kgIzF154oTVp0sRee+01T48CAAAAAAAoTAXuoBVFFx11P1Lh3VmzZnk2ytSpU70Ar+alovf88ssvbeHChV4EV8V5k22//fbWsGFDW7ZsmX3//feRBYUAAAAAAAAyUeBgS1T++OMP7xZ02mmn2SmnnOLdge655x4fZSiZuhCFAZQdd9zRi+qmomCLqLbLP//847cBAAAAAAAKQ5EGW2rVqmUNGjSwxYsXe+FdTarFcumll3qXJY00lJhBoyCLuhHp/9q1a6cdbUivq25Gypj5999/g7npabSjghT5BQAAAAAASFZkwZZq1ap5JsvgwYPt/fff9yGlR48ebY888oi1b9/epkyZYr169bKvvvoqJ+Ci/5cuXer/b7rppmkDJLpPwRY9Nl2XJHVF+vbbb31Ia3VfWrFiRXAPAAAAAABAwRVZsKVu3boebDnooIN8+GdRAEYjECkAc8ABB9iMGTP8dmLAJBydKK9aLLpPARk9Nl1ARrVhhg0b5l2WPvroI6/xAgAAAAAAsK6KvGZLKuoidPrpp3vQRN2KwmCLAidVqlTx/1WLJd2w0+F9eqyyXFJRId1bbrnFnnvuOR/GWiMsAQAAAAAArKsNMtiijJR69er57fnz5+d0I1KNlq233trvnz59etpgi4ruKlCz1VZbWeXKlYO5AAAAAAAA698GGWwRBUykatWq/r8oyLLLLrt40GXChAm2aNGi4J7VVHtFNVhE2SsVKlTw23kJgzkAAAAAAADrqsDBlnAkIBWiTddVR3VQNHqQAicacSikrBONPJSOarVoJCLZY489cg3xrCGfGzdubPPmzbO33normLva66+/bj/++KNntSjYAgAAAAAAUJgyDraoy4669Gg45Tlz5tjff//t8zW08syZM32eAiuJQZVvvvnG66F07NjR3n333WBu9nPeeecde+GFF/y5CpwsWLDAX2PixIl24403erBFw0J37do1V7BFtVWysrI84+WGG26wN99805+vZfv666/ttttus7lz59rZZ59tTZs2DZ4FAAAAAABQODIOtvz222927rnn2v7772+HH364D9EsI0aMsE6dOtlhhx1m++yzjz3zzDM+X9TNR919xo8f78GQkArcfvLJJ3baaadZ27Zt7aSTTvKgytFHH20HH3ywPfHEE7btttvatdde6/cnUleik08+2Z+rQrhdunSx448/3kc2OuKII/z9tDwK8lSsWDF4FgAAAAAAQOHIONiiWihhVouK04pGDSpfvrxntKjrj7JTFi5c6PeJ7qtfv7536Ukc7Ud1VDTk8wknnOBDQOv1vvjiCw/oqADu+eef71kvCsCkGrpZz7/99tvtvvvus9atW9svv/xikyZNsoYNG3q2i+YrKwYAAAAAAKCwlYplWB1W3YgSh1tODIIkvoQCIWFRWg3ZrG5Ful/zypUr5/MlrNuiII4ep8foNVULRjVgEh+bjl5jyZIl/jp6vrob6X3CejKZ6t+/v49apO5JAAAAAACUVEpU6Nu3rw0fPtx7jmD9yHjNqhButWrVbLPNNvOpRo0aOVM4T1MYaBEFPVRbRc9LDp5ooyrzpUqVKjmvof/1dyaBFtFrKGMmfL6em99ACwAAAAAAQJQIYwEAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhErF4oLbefrrr7/sq6++svHjx9t3331nP/74oy1btsw6dOhgWVlZVr169eCRmfn333/tiy++sLFjx/przpw507Qom2++ubVu3dqOP/54a9y4cfDo1VasWGH333+/vfTSS7Z8+XL777//gntWq1Gjht19993WvHnzYE7e+vfvb5UrV/bPAQAAAABASTVp0iTr27evDR8+3EqXJv9ifcl4zb799tvWu3dvu+aaa+yRRx6x0aNH2yeffOIbSgGQ/FCQ5oknnrDTTjvNrr/+ehs1apQHc+bPn2/vvvuuzzvllFPsxRdfDJ6xmgIyes8xY8bYtGnTbOXKlT5fQRdNq1atShmAAQAAAAAAKAwZB1sUxNh6662tS5cuNmTIEDvppJN8ftmyZa1UqVJ+O1MKtsyePdu22moru/fee23EiBH2/PPPe3Dltddes06dOtm4cePs2muv9cBKsnLlyln58uXtjDPOsCeffNKGDRtmzz77bM40ePBga9SoUfBoAAAAAACAwpNxsOXQQw/1wMhtt91mZ555pu2yyy4+P8NeSLlUrFjRunbtav/73//snHPOsb322suaNWvm0/77729XXXWV7bnnnt5dSd2FwuyVZHXr1vWuQupuFE5NmjSxbbfd1oMxAAAAAAAAhS3jYEvNmjU9iFGrVi3/O79dhxJtsskm1qBBg5Q1WWSbbbbxoIsyZiZOnJi2WxDdhQAAAAAAwIamwNVwCpLRkikVvl26dKkHWzbddNNg7mqar/efMmWKPfXUU/bYY49596Fvv/02eAQAAAAAAEDRKHCwZX2aNWuWvfrqq54Bs/fee/v/iRRoCYvsqhvSueee6yMJqeBu9+7dPRsmP9TlKL91ZwAAAAAAAFLZ4IItGhL6rrvusp9//tl22mknO+qoo9YYjmrLLbf0oaF79eplN910k08nn3yyDx+t4r0KwKwt4KKhqzXkc8+ePe2ZZ56xxYsXB/cAAAAAAAAU3AYVbFEdmAEDBnjAZPPNN/fRiLbYYovg3mzKctFISLfffrvdcMMNdsEFF/iQ1Pr7ueees913393Gjh1rgwYNsnnz5gXPWlPlypVt++23t912283q169vZcqUCe4BAAAAAAAouA0m2KIRhxQgufXWW61ChQp2yy232JFHHhncu5qyXFRYV8V6EwMkes4BBxxgF110kRfxVQ0XZcekU6dOHevQoYMPH922bduUtWEAAAAAAADya4MItqxatcqzWa6//novjquAi4aXLgiNYlSvXj2bM2eO/fXXX8HcvC1ZsmS9FvwFAAAAAAAbjyIPtiij5ZFHHrG+fft6vRYFWs4+++zg3vwrW7ZsTo0XAigAAAAAAKCwFWmwRYEWDdt8zTXX2KJFi+zmm2+28847b42CuPmhwrhz5861SpUqWcWKFYO5AAAAAAAAhaPAUQ3VSJFy5cpZtWrV/HYyjQ705JNP2qOPPmpTpkwJ5mbT0M1Dhw71rkNy//33e72VvAItylRR96DZs2cHc3KbPn26DRw40GbMmGEHH3yw13UBAAAAAAAoTKViGfa1WbhwoX300Uce6FAx2Zdeesmef/55Ly6r0YGqVKniwye3adPGmjdv7s8ZPXq0nXXWWf7ce+65xx8nqsvy+uuv+9DNv/76q7Vr184DLeoCpPotosVS4EWjEmkIaN3+77//bNSoUfb4449bkyZNrFmzZla9enUP3Pz+++/2xhtv2IgRI6xhw4ZebPeggw6yUqVK+evlRUNAa3SirKysYA4AAAAAACXPpEmTvIzH8OHD16lXCfKWcbDl+++/t44dO9rkyZODOan169fPuwXJyJEj7fjjj7d//vnHBg8e7IEX0ZDMCrQ88cQT/rcyY5Qho25FIS2WRhtq3769Pfzww36/vPvuu3buued6powCJJqvArea1HVov/32sx49evhIRhomOhMEWwAAAAAAGwOCLYUj42DLrFmzvDuQugbpKdooCoYo2yTMRlEWiYZTPuyww/zvqVOn2rBhw2zp0qUeqGnVqpXPV/BFGSgff/yxv9aKFSv8dVJp0aKFj0wUBk4WLFhgX3zxhf3www/2559/2t9//+2vUbNmTc92CUcjyg+CLQAAAACAjQHBlsKRcbClJCPYAgAAAADYGBBsKRysWQAAAAAAgAgRbAEAAAAAAIgQwRYAAAAAAIAIEWwBAAAAAACIEMEWAAAAAACACBFsAQAAAAAAiBDBFgAAAAAAgAgRbAEAAAAAAIgQwRYAAAAAAIAIEWwBAAAAAACIEMEWAAAAAACACBFsAQAAAAAAiBDBFgAAAAAAgAgRbAEAAAAAAIgQwRYAAAAAAIAIEWwBAAAAAACIEMEWAAAAAACACBFsAQAAAAAAiBDBFgAAAAAAgAgRbAEAAAAAAIgQwRYAAAAAAIAIEWwBAAAAAACIEMEWAAAAAACACBFsAQAAAAAAiBDBFgAAAAAAgAgRbAEAAAAAAIgQwRYAAAAAAIAIEWwBAAAAAACIEMEWAAAAAACACBFsAQAAAAAAiBDBFgAAAAAAgAiVisUFtzda/fv3t8qVK1tWVlYwBwAAABuE2R+ajdwv+xJhqexZKASr4lOlOmYdppiVrZo9D0CJMGnSJOvbt68NHz7cSpcm/2J9Yc0CAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEiGALAAAAAABAhAi2AAAAAAAARIhgCwAAAAAAQIQItgAAAAAAAESIYAsAAAAAAECECLYAAAAAAABEKONgy3///WcLFy606dOn2/jx423MmDE2evRo++GHH2zFihXBowpmzpw59uWXX9p7773nrzlhwgRbtGhRcG96et8pU6bYRx99ZO+++659+umn9uuvvwb3AgAAAAAAFL6Mgy0TJ060W2+91bp162aHHHKItW3b1g444AC7+eabbcGCBcGj8kcBnM8//9wuv/xya9eunR1++OF22GGHWfv27f11f/nll+CRa5o/f749/PDD1rlzZzv00EP9uVqus88+20aMGGHLly8PHgkAAAAAAFB4Mg62KGvkySef9KDL5ptvbltssYXP32STTaxUqVJ+O7+++uor69Gjhz3++OO24447Wq9evTxYUqVKFQ/sXHTRRZ71kmzp0qV+//nnn29//fWXnXzyyXbppZfawQcf7Fkup5xyir3++uu2cuXK4BkAAAAAAACFI+NgS/PmzT2g8cADD9g777zjQRFZtWqV/59fc+fOtYEDB9q3335rJ5xwgr366qseQLnvvvvshRdesFatWnmGyoMPPmixWCx4lvnt999/3wYNGmQ1atSwRx991IYMGWI33XSTvfTSS9anTx/7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AAAAIEIEWwAAAAAAACJUKhYX3M7IH3/8YW+88YZ98cUXtnDhQqtZs6bttddedtRRR1nlypWDR63du+++a4MGDbJUb1+qVCkrU6aMT5UqVbKePXvajjvu6PetWrXKRowYYS+99JItWbLE/071Gtdee23Oc9amf//+vuxZWVnBHAAAAGwQZn9oNnK/7EuEpbJnoRCsik+V6ph1mGJWtmr2PAAlwqRJk6xv3742fPhwK12a/Iv1JV/BlnHjxtkdd9zhwY7//vvPatSoYbNmzfL/O3bsaJdeeqk1adIkeHTenn76aevVq5dtsskmHlwJaWMrgDJv3jxbtmyZlStXzr7++mvbYYcd/P6VK1dav3797IYbbvC/t9xyS38NLY/o42h6/vnnrU2bNj5vbQi2AAAAbKAIthQNgi1AiUWwpXBkvGaV0XLLLbd4EOPQQw+1Z555xp599lkbNmyYNWrUyAYPHmwPPvigB0kycfDBB/tradJGDqfnnnvOhgwZYnvuuadv+Hbt2vnrJypfvrxnvBx77LE2dOhQf074/PA1M81qAQAAAAAAiFLGwRYFMN566y3bfffd7eabb7ajjz7a2rZta507d7bbb7/dGjdu7IGPMWPGBM/IW+3atf356oKUOLVu3dqaN29u06ZN86BKly5dbNNNNw2elds222xjBx54oD8n8TWU0VK1KhF4AAAAAABQ+DIKtqjrjuq0qFtPt27drGnTpsE92fbdd1/PdlFWy9ixY/3xBaX3eP311+3333+3Bg0aeAZMOuo6FHYfAgAAAAAA2BBkFGyZMWOG/fbbb1a2bFmvnZLcr0s1V5o1a+YFbb///nuv41JQf/31lz355JP+XocddphtvvnmwT256T31Pu+8845n3Kjg7tSpU4N7AQAAAAAAikZGwZYff/zR/vnnH6tTp07aEYfq1atn1atX96CMslIKSsGazz77zKpVq2YnnXRSMDc3FcD9999/7dVXX7UzzzzTTjnlFDv99NOte/fudtVVV9nkyZODRwIAAAAAABSujIIt8+fPt6VLl/owz+nqpygIozopf//9twdmCmLRokXehUijEe28887WokWL4J7cqlSpYvvss4916NDBjjnmGK/rolot48eP93oyF1xwgVdYzlTFihVzjYgEAAAAAABQUBkFW1asWOG1UdS1J93QUOpCpCGYVa9FwZKCUEaM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vffee9a8eXM75phjbKuttrLnn3/eTjrpJHv99df9cZnQ45SFsmzZMmvVqpWdfPLJ/hrhpCBK+/btrUyZMsEzVtNzrrvuOjv33HNtwoQJtueee9qRRx5p5cuXtwcffNBOO+00++abbwi4AAAAAACAQpdxsOXTTz+1gQMH2oIFC+yOO+6wV155xQMbb7/9tl144YXenej++++3yZMnB8/IW6lSpTwYstlmm3kA59577/Xnh9NDDz3kWSqbbLJJ8IzV9N4K/FSqVMmefvppe+aZZ/zvd955x4499lj74osv/PXUTQkAAAAAAKAwZRxsUVDjhx9+8C5Exx9/vFWsWNE23XRTD3ioG9Ghhx5q77//vo0ePTp4RmZKly5tFSpUsHLlyq0xlS1bNnjUakuWLPHAiurEXHLJJXbggQf687UsderUsauuusq2224772I0adKk4FkAAAAAAACFI6Ngy6JFi+zLL7/02+3atfNslER169b1minKVPnqq6/yVaRWz1G3oBUrVnh9lrXVffntt9/8PZTxom5GyQGZnXbaybs4rVq1yjNc8lNHBgAAAAAAYF1lFGzRSEEagahq1aq25ZZbBnNza9iwoWeY/PTTTz4qUCaU1aJCt2+99ZZ3Gerdu7fdcsstNmrUqLQBm++++86DMo0aNVoj6BNS0V29tro0abkBAAAAAAAKS0bBFmWTKCiyxRZbePehVGrVqmU1atSwWbNm2dy5c4O5eVNWijJaVFh30KBB9vjjj1v//v2tS5cuPhLRuHHjgkdmU7aKasMoG6ZBgwYpuxmJAkLq3qTlziTLRoEZAAAAAACAKGQUZVCgRUGRypUrpyxYKxoJSIGYxYsX+xDRa6PX0ShC119/vb300kv2wQcfeLHdG264wWuv6Pb555+fq+CuRjDSsijYomBKuiCJ7lMgRo9NN3S0XkufKezCBAAAAAAAEIWMgi0KbohGEEpH94UjDIWPz0vt2rWtR48e3nXooIMOsl122cVat25tWVlZXox3r7328porAwYMyBUMyXRZJK/l+P777+2KK66wzp07ezFdBWYAAAAAAADWVUbBFtViKVOmjI8EpK48qSiDRBktynDRyEBro8wW1YDRayfSKEQtWrSw8847z/9WPRe9r4QjFymYonnpginhcuqx6TJxttlmG38P1YhR0V8tNwAAAAAAwLrKKNiibj3q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5YK/UTiWxacDhpg1OjP77xKIYEvhyPea/eKLL+yiiy6yvfbay3beeWdr27atXXXVVTZt2rTgEfnz77//2rBhw6xjx47WokUL23XXXf320KFDbdky7enpTZw40S699FLbe++9baeddrJ99tnH/54yJf6jAAAAAADFVZnyZrr+rAtLTIU3aZ2XyuzCP5CXfAVbnn32WevatasNGjTI/vnnH6tXr579/vvvdvfdd9tpp51mH330UfDIzMybN8+uv/56O//88+3999+3KlWq+KTbF154oQd1Fi9eHDw6t1GjRtnJJ59sAwcOtL/++su23HJLmz17tv993HHH2Ycffhg8EgAAAAAAoPBkHGxRqtFdd93l//fp08fefPNNe+qpp+y9996zTp062SeffGL33Xef/fzzz8Ez8qbeS6+99poNGDDAqlevbs8995w9//zz9sILL9gzzzzj85544gkbMmRITveikAI8V155pX377bcelHnjjTf8Oe+8846deuqpnvFy3XXX2Y8//hg8AwAAAAAAoHBkHGx5+umnvQuRskbOOecc23bbbT2bpHHjxt6NqE2bNh48+eCDD4Jn5E3djhRIUR+xCy64wA4//HCrX7++T0ceeaTdeOON3sXowQcf9MyVkGq7KMNGgZb99tvPs2K22247X5ZGjRrZLbfcYnvssYeNHj3axowZEzwLAAAAAACgcGQUbFmyZIl3EVKGiYItdevWDe7J1rRpU6+Xohorn332mT9+bZR1Mm7cOA/WHH/88cHc1fbff3+/b8aMGZ41E9bxXbFihb3yyiv+vzJqFJxJVKtWLTv44IM9iKPuSOpaBAAAAAAAUFgyCrb89NNPNmfOHKtYsaJtvfXWwdzcmjRpYuXKlfOMlT/++COYm566GylLRcES1X5JVqlSJWvZsqUHeL766isfcUhUK+b777/328pgSTUK0i677GI1a9a08ePHE2wBAAAAAACFKqNgy/Tp0z3IscUWW3jAJZU6depYjRo1PNAya9asYG5qKnqrjBXRa6aioZ8V2FGQRe8f1m3R6ytzpkKFCp7FkooCOCq0q/dYtGhRMDdv6zp0dZHRcmvRmYpmQtFgvy/iSf8AQCHhmF/Ek/5BkVhjWzAV3qR/Sq5i2/YtZjIKtixcuNCWL19u1apV8+yVVBT8qFy5sgdl1taNSN2N9JqioEgqCrZUrVrV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LXyN3MuODJeove1ERMTfFGyRGwZlRFu2bFG9soiIiPgKveYyZMhgpUGTJk3yjv4TmSzvvfeeNU2nR0to3DMNcmmeHidOHPtZRESCQT1bJOxWrVplIxFDo28j4/RjDG5oItHBgwfd22+/bb1bRERERPyAZv80+u/evbsFXe6//34LqNAQndHPv//+u/VkIRBDFszo0aOtd8v69etdsWLFrKHuyJEjXbJkybxfUURE/E7BFgm7fv36XVHD24QJE7o2bdq4559/3nZ4RERERPyCgEqfPn2sQS49WOjPkiRJEgu2MP4fBGIY+9yqVSt7fvv27TaRiMBM8eLFXezYse11IiLifwq2SNhRHjRq1Kh/jUAMiRcvnqXfFihQwFWsWNElTpzYe0ZERETEP44fP27Bk8WLF7uff/7Z+tDdfPPNts7JnTu3K1eunKtcubL3ahERCTIFWyTszpw5Y41vLxZsoSkcARcRERGRICCbhT50lBcRbKGciClEIiIScyjYIiIiIiIiIiJyDSnYItfFuXPnrAkuDXCpY6Y5XKJEiVzGjBmtV4uIiIhIUBw+fNiyev/44w/vyN9YerMOSpMmjWW9iIhIMCnYImG1d+9eN23aNLd8+XKrXaZ53OnTp60BXPLkyV22bNlc/vz5XaVKlVyOHDm8d4mIiIj4z8KFC93s2bPdr7/+av1a2GyK6q+//rJBAO+//75tPImISDAp2CJhwzjDN954w3300Ue2iwOyWAi0sNPDyOeQKlWq2BSiChUqeEdERERE/IF1DUEW1jI//fSTHbvttttcnDhxLqyBQujnkiJFCvfDDz9YLxcREQkmBVskLBhl2K5dOzdhwgSXOnVqC6KQxUJzOBristND1sumTZvc/Pnz3dq1a23s4bBhw1zhwoW9X0VERETkxsd6pmnTpm7u3LmuRo0arnTp0i5VqlS25oku2BI/fnxXrVo1e15ERIJJwRYJi379+rmOHTu6vHnzui5duriHHnroonXJc+bMcf3793dTpkyx13366aeW/SIiIiLiBzNmzLCSaEY7jxo1yvqxiIhIzKauXHLN7dq1y3377bfWk+W1115zDRo0uGQDOBYmAwYMcHny5HELFixwq1at8p4RERERufGdOnXK1jplypRRoEVERIyCLXLNLVu2zK1cudLVrFnzinuwZMmSxbVt29YdOHDAdodERERE/CJevHjWf+Wmm27yjoiISEynYItcc1u3bnXHjh1zd999t9UkXwl2gwoWLOhuvfVWm1okIiIi4hd33nmnK1KkiE0jOnnypHdURERiMgVb5Jrbs2ePBVloDHc16NqfNm1aK0MSERER8YvMmTO7Ro0aWfN/SqMZ/czUxbNnz9pQgMiP0DG1TRQRCTY1yJVr7rnnnnMff/yxNbql0/6V2rhxo3vkkUcsy4WdIRERERE/IKuXtQ896+g/V7ZsWZuuGN1oZ5bebDC1aNHCMnpFRCSYFGyRa+7pp592Y8aMcWPHjr3ini3Ytm2be/jhh93p06fdihUrvKMiIiIiNzYmKtKrjg0jHox3vtQSO0mSJG7Dhg0uWbJk3hEREQkaBVvkmiPYMnLkSAu4VKlSxRYclxMrVqwLmS1//PGHW758ufeMiIiIyI1t3bp17q233rJGuaEmuRdbYrPOSZw4sevatatluIiISDAp2CLXXJs2bdyQIUNc8+bNrektmSqXEzduXOvVMnToUJciRQpltoiIiIiIiIhvKdgi19yzzz7rBg4c6P109ZhipGCLiIiIiIiI+JWCLXLNkZ0yfPhwlyhRIu/IlTt16pQrUKCAGzRokHdERERERERExF8UbBERERERuQq7d+92a9assdJnNokOHjxoWbmhfi2XwtI7Tpw4rnjx4i527NjeURERCRoFW0RERERErgIZvM2aNXOVK1d206dPd9OmTXNVq1b1nr08phD98ssvmkYkIhJgCraIiIiIiFwFRj23bt3a1a5d26YQLV682LVo0cLdeuutl81uOXv2rGXEjB071qYSiYhIMCnYIiIiIiJyFf766y937tw5FytWLHfLLbfYz4x0vlIEZFRCJCISbAq2iIiIiIiIiIhcQwq2iIiIiIiEwZ9//ulOnz5tmS9kwFBmJCIiMYOCLSIiIiIiV4neKzyYLMQjqv3797uJEye6uXPnusOHD7tMmTK56tWru3vvvdfFjRvXe5WIiASVgi0iIiIiIlfhyJEjbsiQIW7hwoXuqaeesqlEke3YscO1b9/eTZ482Z05c8bdfPPN1qeFhrht27Z1HTt2jDZAIyIiwXGz91VERERERK7Azp073fjx49327dtd1qxZvaPnnTx50o0ZM8aep4SoRIkSrmXLlq5SpUqW7TJo0CC3ZMkS79UiIhJUCraIiIiIiFwFMlc2bNjg8uTJ4zJnzuwdPY8AzKeffmp9Who1auQmTJjgXn/9dTd8+HDXrVs3d/ToURv7TCBGRESCS8EWEREREZGrcPDgQQum5MyZ00qEIiMQs2bNGpchQwbXunVrlyJFCpcgQQKXMmVK17RpU/tKZgvlRSIiElwKtoiIiIiIXIUTJ07YpKHkyZN7R877448/3M8//+xoiZg+fXpXuHBh75nzkiVL5u688063Z88ed+7cOe+oiIgEkYItIiIiIiJXiTKgU6dOeT+dR4nQ2rVr7fvs2bP/K+sFBFwIymhGhYhIsCnYIiIiIiJyFRIlSmTBks2bN3tHzjt06JBbtmyZS5gwocuXL5939G+UHhGg4f3RBWJERCQ4dJUXEREREbkK6dKlc5kyZXJz5851q1at8o469+OPP9qD8qJSpUp5R/9G6dDGjRtd0qRJ3S233OIdFRGRIFKwRURERETkKhQoUMDVrVvXAivNmzd3zz//vHvmmWdcx44d3dmzZ+35/Pnze6/+G/1cdu/e7XLkyOHixInjHRURkSBSsEVERERE5Crceuut7oknnnDVq1e3sqH+/fu7wYMHW9YK5UOdOnX6VzDl+PHjbtSoUdbrpUSJEi5u3LjeMyIiEkQ3Rag7l4iIiIjIVaNny7Rp02yUMyVCuXPndtWqVXN3332394q/0Ty3T58+7tixY659+/YuY8aM3jMiIhJECraIiIiIiPw/7N2710ZBJ0mSxMWLF887+k88z8jn2LFjuxQpUnhHRUQkqBRsERERERERERG5hhRsERERCSj6Q0yfPt121P/44w87xrjZ2267zaaplC5d2pUtW/aGnooyf/5898EHH7h77rnHNWvWzCVIkMB75vJ27Njhevbs6Y4cOeIdOe+mm2660E+DZqZRl0KZM2d2zz33nLvjjju8IyIiIiJXR8EWERGRgGJKyocffmjfp0qVyoIqBF32799vX5mIUr9+fde6dWt7/kZEoKVly5auQoUK7rPPPrORuldqw4YNrl69elbiQYAFfD158qQ7dOiQ/UxAhcDLX3/9dSHoctddd9l/N0OGDPaziIiIyNVSsEVERCSg2rVr59566y334IMPulatWrn48eNbkOXgwYPuu+++c8OGDbPgwyuvvGINO29EH3/8sWvSpImrXbu2Gzp0qEuWLJn3zOWdOnXKrVmzxrJXIgdbGL9LAIcsny+++MIlTZrUAi2hJVHChAld9uzZL9p7Q0RERORyNPpZREQk4Jh6QmZI8eLFrXSoVq1arlevXu6RRx6xgATTVHbv3u29OjgYz1u4cGFXsmRJG7XLg7+DYsWKWdCFYMu9995rx3iO1/Egs0WBFhEREfn/UGaLiIhIQIUyW55++mn3+uuvW6+WyD755BP32GOPuXz58rl3333XlSpVynvmfC+TGTNmuFWrVlnZEaU2WbJksWBNrly5vFf9jeXEtm3b3I8//mjlO/v27bNRuGSi5MmTx1WuXNmCHxezbt06N3PmTLd161YLgvAeSoC++eYbV7du3f8qs+Vili9fbsGVWLFiuS1btlgpEX1tyKLh90EmUNGiRe33EdXatWstG4beMQ899JBLmzat++mnn9z48eNdpkyZ7PfK38PXX3/tfv/9d8smYgxwxYoVXeLEib1f5d/4O5s3b57btGmTlTmRbVOgQAFXqVIlBX5ERET8iGCLiIiIBE/btm3ZUIl4+umnI44fP+4d/dvo0aPt+Xz58kXMnz/fOxoRsXnz5og2bdpEpE2b1p5PlChRROzYsSNuuummiLJly9r7ojp8+HBE1apVI5IkSRKRMGHCiMSJE0fEjRvX3p88efKIFi1aRGzbts179T999dVXEeXKlbPX8kiWLJm9p1WrVhGdOnWKiBcvXkTt2rUj9u/f773j/2fZsmURceLEibj11lsj9uzZY8f+/PPPiI4dO9p//4EHHog4cOCAHY+qS5cu9ppatWpF7N69246NHDnSjhUuXDji5ZdfjihatKj9Gfh743jSpEnt73PDhg32+sjOnj0bMWrUKPvzx4oV68Lvi/elSJHC3rd9+3bv1SIiIuIXKiMSERGJoci8AM1x6VECmsmSBTNo0CDL3iAzhqlGZH08/vjjbu7cua5jx46WcRIZmSFkYNBfpX///m7EiBFu9OjRbuDAgS5r1qzWcJbjhw8f9t5x3uLFi12nTp3cnDlzrFnvyJEj7b1du3Z1K1assGyW/6xXLAslnMhioVHwnXfeaf1syDSJir8vsk9oNPzoo49eaCocN25clyZNGrdz5077vZPtMmDAAPt748+fPn16+/vkcfz4cXsPyPyZPHmye/bZZ92yZcvcM88844YPH+7GjBnj3nnnHcvu4T0vvviiO336tPcuERER8YXzMRcREREJmlBmS4cOHbwjf5szZ05E/vz5IxIkSBDx7rvvekcjIsaPHx8RP378iDRp0kR888033tHzyI4hQ4Vf89577404ceKE90xExLlz5yJ27drl/fRPmzZtisiZM6dlepBVEvLXX39FNGnSxH49Mld+//1375nzpk6dGpE+fXp7vn79+mHNbAnhz0cGz4svvviPPx+GDh1qGTtkofBnChk3blxEhgwZ7PdZt27diH379nnPnDdhwoSIlClTWqYKWTwhZLrcdddd9vf9/vvve0f/tnr16og8efJYZs+3335r2TciIiLiD8psERERCajQBB6yMciOYOpQz549bfIQ/VxOnDjh+vbt6x5++GF7Hc1ylyxZYj1D6BVSpUoVOx5Cz5cWLVq4RIkSudWrV1v/khCyPVKnTm3f//bbb27RokWWrTJ79my3Z88elyRJEnf06FHrZxLC9/SE4b2NGjVyKVOm9J45jz4nNPO9nsjMoYcL/WzIVAk5c+aMZfMcOXLEerpEHQtNj5vbb7/d+rhEHU9dvnx5V6NGDetjM336dO+ocytXrrR+LzTp5e81qrx589r4brJu6AHDf0NERET8QcEWERGRgKNEhaBK7969Ldjy5ptvWpCDJqwFCxa0QAhohEughOAHJSzRISCSM2dOGyEdOdiChQsXus6dO7snnnjCNWzY0AIPPGrWrGn/PRBwiPB68zOC+dChQxakSZcunR2LjKa82bJls+//+usv+xpuNMa95557rHEuJU78OUEQ6ocffrCSIKYXRS1roiSIcikeUdEYl18T27dvt6+8/pdffrHvKU9644037P9R5AflXPPnz7fgF2VNvEdERET8QcEWERGRgAoFNRj7TM8U+q589NFH7uWXX7YJOUuXLrV+IaGgCZktx44dsx4kZK9EhywLJgLRo4XXgv8OgYg2bdpYgODgwYP265MZQ0YHwZZQMIUMkVDghP4l/Eywh8BKdEITjEJ/lnDjz0eWDX9+/r4OHDhgx8eNG2eBkgYNGlwIAEXG74/Mn4tNXApNggplp9CDhSwZkCXUrVs3yz7q3r37hUePHj3ct99+a8EoAmOhTCURERG58SnYIiIiEnBkqTRu3NhGKRNI4KaexqtkqFDuM2TIEAsCMKaYYAEZFAReLoZyIIISocACr2V0NCOVH3jgASvBYTwywQoavvIoVKiQvTZy0ISgTuzYsS3oQvAmOqHgxPUMNBAk4u+GEqj169e73bt3W4YJDYMpbbpYIIoAysVKfUINbskaCn3lzw7KiGisG/q7ivzg77Vfv37WnJi/LxEREfEHBVtEREQCjuAJ/VkiK1WqlHv66actwDJ16lQLJlAilDFjRgsY/Prrr94r/4myH0paKKMJZXiEer3waz333HOuQIEC/wiO8N+mZAi8LxRwoeSGwMWuXbtsClJUZMBs3brVvie4c73Qe4VsHAIiU6ZMsclAGzdudJUrV7Y+KtHhtfxeQ2VCkRFoIWiDUF8aJjdlyZLFvue/R98cSq8eeeSRaB8EZELBGREREbnxKdgiIiISQ1WvXt2VK1fObd682cYNEyApVqyYBQ5mzZplDVwjI/tk/PjxFhjJnDmzBVVA8IT38jzNcKOidCm6UcoEa3LkyGHBiIkTJ/4rIERpUuSGstcTvWYIBlE+xO+f7JvatWtfaAIcFVkn/NkZ5Rw1K4jeLwS0KCUqU6aMHePvq3DhwjYymr9rGuBeDP9tHterlEpERET+/2K99B/e9yIiIhIg06ZNs4yTIkWKWPlL1L4oZFQQIOFmn1IZ+qzwWgIjCxYssAauZGIQBCEgM2rUKNerVy+XMGFC6ylCYCZk06ZN1iCXzI4UKVLYe2gySxDl7bfftgAEGTaU6FBSRKZKqBSJaUlMLuL3ws/0SVmxYoU18uUrKOuh/wvZM/9f/FmHDRtm/32mMoX6qURGX5o1a9ZYKRFlU/yeyQSKOmkI69ats79rsnaYYEQwiswVetcQsOLPQX+cunXrumeeeebCf4+sHv4ueS9BJTJ5+Dviz0/TXP7++X9DIIz/V0xAup7lVCIiIvL/ECEiIiKB1Lx5c1IhIpo2bRpx7Ngx7+g/7dixI6JevXr2uvvvvz/i0KFDEStWrIioXr16RMKECSNix44dceedd0akTJnSXpM9e/aI3r17R/z555/er3De2rVrIypXrhwRN27ciFtuuSUic+bMEVmyZIlIkyZNRKtWrSLuvfdee3+fPn0izp07573rvLffftt+XZ6//fbbI3LmzBmRPHnyiGrVqkU0atTIjvNr79u3z3vH/8+SJUvs1+Sxe/du7+i/zZ49OyJTpkwXft8nT570nvmncePGRSRLliyiXLly9mflz50hQ4aIrFmzRsSKFcv+Tvi7Xbx4sfeOv/H/pW/fvhF58uSJuPnmmyMSJ05s/03+PlKnTh0RJ04ce27u3LkRf/31l/cuERERudEps0VERCSg6IXC6GL6fTB6mPKgqMiuYDQxY58Za0xPknz58rn77rvPpU2b1p6jRIasilq1arn27du7Rx999F8ZFmSzlC9f3qbm8CBjg8a8Tz75pL2HTJf/rDvs16V0KHIPFrJp+O/yHrI++LXomfLqq69aKQ+ZKCVLlrTHtWgSyyhlsm5y5cpl2SZkoUTn8OHDVjZFxknXrl2tdCo6ZLZMmjTJZcqUyUZrUyrEn5ceK/xd0py4Q4cO0Y7TJtuIPxfjpCkp4u+bv4dUqVJZphHTj8iGIbMmuv9/IiIicmO6iYiL972IiIiIeDp37uz69u3rmjVr5l577bVoS4hAQKZ58+YWEGHE9sWCMiIiIhJzqEGuiIiIiIcmt0wemjFjhhs9erT1kKlfv/5FAy1RaQ9LREREoGCLiIiI+MaxY8esGe+2bdsu+aBMiGa1UScDXQqBEjJYCK7cf//9VlrVqlUrV7BgQe8V0aOpLb8vypMoORIRERFRGZGIiIj4BqOYCYhEN0EoMgIgjGmmVwo9Ua4EgRJ6zDBymt4pTHDi58tltcycOdP6y+TOndt16dLFet2IiIhIzKZgi4iIiPjGyJEjXZ8+fbyfLo1Guy+++KIrV66cd0RERETk+lCwRURERERERETkGlLPFhERERERERGRa0jBFhERERERERGRa0jBFhERERERERGRa0jBFhERERERERGRa8a5/wPLJIiV9IkHFgAAAABJRU5ErkJggg==", + "text/plain": [ + "<IPython.core.display.Image object>" + ] + }, + "execution_count": 91, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dangeorusroadtype = A2018.groupby('Road_Type','first_road_class').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "dangeorusroadtype_df=dangeorusroadtype.toPandas()\n", + "\n", + "dangeorusroadtype_df=dangeorusroadtype_df.rename(columns={\"first_road_class\": \"road_name\"})\n", + "\n", + "result30=pd.merge(dangeorusroadtype_df, road_length_traffic, on=['road_name'])\n", + "\n", + "result30[\"Accident Probability\"] = result30[\"Total accidents\"] / result30[\"Trafficvolume\"]\n", + "result30=result30.drop(['Total accidents', 'Trafficvolume'], axis=1)\n", + "result30=result30.drop(['road_name'], axis=1)\n", + "result30_df = result30.groupby('Road_Type', sort=False)[\"Accident Probability\"].sum().reset_index(name ='Accident Probability')\n", + "result30_df=result30_df.drop(labels=[6],axis=0)\n", + "result30_df=result30_df.sort_values('Road_Type')\n", + "ax=result30_df.plot.bar('Road_Type','Accident Probability', rot=90,title=\"Accidents probabilty over road type \",figsize=(20, 10),color=\"Orange\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 171, + "metadata": {}, + "outputs": [], + "source": [ + "A20188=A2018.withColumn(\"date\",col(\"date\").cast(\"string\"))" + ] + }, + { + "cell_type": "code", + "execution_count": 172, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|04/01/2005| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+\n", + "only showing top 1 row\n", + "\n" + ] + } + ], + "source": [ + "A20188.show(1)" + ] + }, + { + "cell_type": "code", + "execution_count": 177, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "root\n", + " |-- Count_point_id: string (nullable = true)\n", + " |-- Direction_of_travel: string (nullable = true)\n", + " |-- year: integer (nullable = true)\n", + " |-- Count_date: string (nullable = true)\n", + " |-- hour: string (nullable = true)\n", + " |-- Region_id: string (nullable = true)\n", + " |-- Region_name: string (nullable = true)\n", + " |-- Region_ons_code: string (nullable = true)\n", + " |-- Local_authority_id: string (nullable = true)\n", + " |-- Local_authority_name: string (nullable = true)\n", + " |-- Local_authority_code: string (nullable = true)\n", + " |-- Road_name: string (nullable = true)\n", + " |-- Road_category: string (nullable = true)\n", + " |-- Road_type: string (nullable = true)\n", + " |-- Start_junction_road_name: string (nullable = true)\n", + " |-- End_junction_road_name: string (nullable = true)\n", + " |-- Easting: string (nullable = true)\n", + " |-- Northing: string (nullable = true)\n", + " |-- Latitude: string (nullable = true)\n", + " |-- Longitude: string (nullable = true)\n", + " |-- Link_length_km: string (nullable = true)\n", + " |-- Link_length_miles: string (nullable = true)\n", + " |-- Pedal_cycles: string (nullable = true)\n", + " |-- Two_wheeled_motor_vehicles: string (nullable = true)\n", + " |-- Cars_and_taxis: string (nullable = true)\n", + " |-- Buses_and_coaches: string (nullable = true)\n", + " |-- LGVs: string (nullable = true)\n", + " |-- HGVs_2_rigid_axle: string (nullable = true)\n", + " |-- HGVs_3_rigid_axle: string (nullable = true)\n", + " |-- HGVs_4_or_more_rigid_axle: string (nullable = true)\n", + " |-- HGVs_3_or_4_articulated_axle: string (nullable = true)\n", + " |-- HGVs_5_articulated_axle: string (nullable = true)\n", + " |-- HGVs_6_articulated_axle: string (nullable = true)\n", + " |-- All_HGVs: string (nullable = true)\n", + " |-- All_motor_vehicles: string (nullable = true)\n", + "\n" + ] + } + ], + "source": [ + "Trafficvolume.printSchema()" + ] + }, + { + "cell_type": "code", + "execution_count": 183, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+---------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location|timestamp|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+---------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|04/01/2005| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849| null|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|05/01/2005| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909| null|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|06/01/2005| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857| null|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|07/01/2005| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840| null|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|10/01/2005| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863| null|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|11/01/2005| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832| null|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|13/01/2005| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875| null|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|14/01/2005| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889| null|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|15/01/2005| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900| null|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|15/01/2005| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875| null|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|16/01/2005| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835| null|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|25/01/2005| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912| null|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|11/01/2005| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849| null|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|18/01/2005| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902| null|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|18/01/2005| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821| null|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|18/01/2005| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840| null|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|20/01/2005| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864| null|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|21/01/2005| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821| null|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|21/01/2005| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901| null|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|08/01/2005| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821| null|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+----------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+---------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "A2018_df2.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 196, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location| timestamp|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|2005-01-04 00:00:00| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-04 00:00:00|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|2005-01-05 00:00:00| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|2005-01-05 00:00:00|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|2005-01-06 00:00:00| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|2005-01-06 00:00:00|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|2005-01-07 00:00:00| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-07 00:00:00|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|2005-01-10 00:00:00| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|2005-01-10 00:00:00|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|2005-01-11 00:00:00| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|2005-01-11 00:00:00|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|2005-01-13 00:00:00| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-13 00:00:00|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|2005-01-14 00:00:00| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-01-14 00:00:00|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|2005-01-15 00:00:00| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|2005-01-15 00:00:00|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|2005-01-15 00:00:00| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-15 00:00:00|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|2005-01-16 00:00:00| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|2005-01-16 00:00:00|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|2005-01-25 00:00:00| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|2005-01-25 00:00:00|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|2005-01-11 00:00:00| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-11 00:00:00|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|2005-01-18 00:00:00| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|2005-01-18 00:00:00|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|2005-01-18 00:00:00| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-18 00:00:00|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|2005-01-18 00:00:00| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-18 00:00:00|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|2005-01-20 00:00:00| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|2005-01-20 00:00:00|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|2005-01-21 00:00:00| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-21 00:00:00|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|2005-01-21 00:00:00| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|2005-01-21 00:00:00|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|2005-01-08 00:00:00| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-08 00:00:00|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "A2018_df2 = A2018_df2.withColumn('timestamp', F.col('date').cast(\"timestamp\"))\n", + "A2018_df2.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7IAAAN6CAYAAACzO3UtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAP+lSURBVHhe7N0FnFTV34Dxg4mJgd3dHdiB3djdje3fwu7C7u5Efe3CwkTFwFZUMLBbsQC5733O3ovDMBvIzO7e5fl+PsOyd+7Mztw8vxO/0y5JBUmSJEmSCmKs7KckSZIkSYVgICtJkiRJKhQDWUmSJElSoRjISpIkSZIKxUBWkiRJklQoBrKSJEmSpEIxkJUkSZIkFYqBrFQjQ4YMCUcddVRYZpllQufOncMTTzyRPdOyTj755PiZLrroomxJ0x155JHxtddff322pOUwBTbbmMeYPh32Tz/9FJZbbrmw0UYbhXfffTdbWlu///572HrrrcOyyy4bXn/99Wxp03z99dfxtRxL/fr1y5bWueGGG+LyE088Mfz555/Z0rr9PXToUPd3jbF9jz/++LgPjjnmmGxp8eTXB46Z+o6XAQMGhG222SZ+14EDB2ZLW5e33norrLrqqmGxxRYb/lh00UXD4osvHjp16hQ/+xJLLDHC8/mjT58+2btIUttkICvVyDfffBOuuOKK8NJLL4WnnnoqPPTQQ9kzLeu1116Ln+mdd97JljTdm2++GV9LAbClffDBB2GNNdaIhTi+05hs8ODBoXfv3uHZZ58Nv/76a7a0tggQXnjhhfDiiy/GQHpUEKBSscOx9Msvv2RL63Bs5cfnP//8ky0NMdDYYostwlxzzRWee+65bKmqbdiwYeHtt9+O+4AgqqieeeaZsOCCC4YNN9wwfPbZZ9nSEf3222/Dj8NBgwZlS1sXzhUqe6igyh/vv/9+eOONN8LLL78cPzvXv/fee2+EdXj88ccf2btIUttkICvVyMMPPxx+/PHH7LcQC9/9+/fPfms5CyywQHwQEIyqCSaYIP4cf/zx48+W9Ndff4WPP/44BrSlLXdjonbt2oWxxx47TDzxxPFnc+Bv8vfyvz0q2rdvH1tyOQ4nmWSSbGmd/NjiWOO9c7Suffrpp/FBa7BqJz/P859FRGBKAMg1l2Onkokmmmj4cTjhhBNmS1sXWlb79u0bPv/88+EPejT07NkzzDLLLHGdG2+8MXzxxRcjrEPwzneTpLbMQFaqAVo1evToEf9PYWKOOeYIr776aqw9b2knnXRSbHE5+OCDsyXFNMUUU8SCKAXQySefPFuqInS7nW666cK9994bj8N55503W9qwfH/D/a3GcIwQiFPZwrFTCdfle+65Jx6HM888c7a0dRl33HHDVFNNFaaeeurhj8kmmyxMM800YZxxxonrdOzYMUw55ZQjrMPz4403XnxektqqsY9nMIykqqJLHgEjrUvnn39+bLGiCyYFjNVWW214AaQ+H374YVz/lVdeie9F7TrdxCic1fdaWh/oXsq4KLqV8RpaLXlNaYsZ6zz99NOxaygBRSW0ANBNlS5rdOns0KFDLBDeddddscsn32HFFVfM1h7Rl19+Gf8G3d7o/sbnoEBF4asc3Uoff/zxuD6tCxQ8eU3+t2l94+9OOumk2SvqAjXGZN55552x+yDbhedpheC1bC++L9s6x3N0g2XbsA7bl1YN0CI41lhNq9P75JNPYgD2/fffh9lnnz38/PPPcVuyr9jmtAzPMMMM2dojYps++uij8fPONNNMses535PvTlfBOeecc4R9y/fgM3MM8Dx/iwIrBdtytFCeffbZcVvtvPPO8bs///zz8fV832+//TYWdGkJrQ/fjb/FfmP7so3opjzttNNW3D5///13uPrqq+O22GOPPeJ34vX0POC7chxw3OTBZyk+L9uC/cHrSlv+eD3dPRkHuP7668fvS7fJ22+/PfTq1Sv2cuCY5v35bjxoueUYu//+++NnmHHGGettYfvhhx9iN3/2GfuwoW1SjgoqKqTy/cI5x3eptI34XHzH/FipD9+Nz8P+5XOXvw/HKccIlWC8J8cy26RSMM8+ue++++Jnm2222eL1h/OIYyEfL0mAU9rSXY7u3LwHwwjomrvZZptlz9Ttt/wawHFeqcWWbfLAAw+E7777LgaKObqf55UX8803X/yefCc+W2PHSyn2f96llu1BrwyWsb950M2eY4i/xXbju7K9Pvroo7g+5xLnPNcjrj+PPfZY3Db59ipXus/5yXlBay/Xzkrbkf3FNuK6me93XsuD78l5T2A6ur1aaIGlspTtutVWW4W55547Lmd/c9xxLPAZ67u2cfxzntG9miCe78I1jGOR13Is8l24vrG96fnCscHx0xjW5fuyXTlWuP5QmTAq55okNUlaKJRUZUcffTTNYskSSyyRpAWhJC3YJGmQkqSF9iQtIGZrjSwt9Cann356stRSS8XXlz7SglZy7rnnJmmwlK1dJy0YJccff3yy+OKLj/SaueaaKznvvPOyNetsvvnm8bl99903W/KvNMhKzjzzzGTeeecd4X06d+6cpAXHZMstt4y/n3rqqdkrRnTzzTcnaZCbpIWiEV6//PLLJ9dcc00yZMiQbM06aaE2SQu7cZ20AJVcfPHFSVqoGuG1a6yxRpIGrNkrkiQtqCZp4DTCOuWPww47LFs7SdLCXrLKKquMtE5auE06deqUpMFktmbjbrzxxvhatkdaSEvSQGuE95x11lnjvk8Lbtkr/nXooYfGddLAIEkL2iN9pq+++iqux2uPOeaYZP755x/h+bQgmGy77bZJWqiM65XiGEiD9yQtzMbtyPdPg/vhr00L+HHfpQXx7BX/Ynsee+yxyZJLLjnSfksDtGSvvfZK0iAgW/tfaRAQP2MaQMa/eeKJJyZpIXf4a/k8bJ9K23fAgAHJ9NNPH9djO5Y67bTT4vIdd9wxHo844YQThr9vpQfHQ1roTtLgN/5+3XXXxddVctVVV8V10kAwSYOBbGnj2Ab77bdfMssss4zwt9OALtl7772TtPCerVnntttui89z3qZBTbZ0RGlgmGy33XZxvX322SfuixzXjZtuuike/2kwMsLfXHbZZeP5xDqluH7wvVgnDSbjdSENZoa/7oADDkiGDh2arV3ZX3/9NfwzpQFStrQO+43l7NvXX389Wzoirjesw2cslQZY8fhKA7j42sMPP3z4Z+XB9XGjjTaq931x9913x3XSQHT463ikAXCy4YYbJj///HPy66+/JiuuuOIIz5c/8uODazH7j2VpgBuXlUqD8or7PA3ykq5duyZpUJut+a+ePXvGdTgW0yA5Oeigg0b4vGnwH7drpb83KtieaaAc3/P+++/PlibJ+eefH5ctvPDCyeeff54tHVEavCYrrbRSXO+UU04ZfhxxXWcZxzPndPk1ar755ku6d+8et3ElXLtOOumkZJFFFhnhdezzjTfeeJSutZLUFG06kOWm/tRTT8XCMTeT3XffPRZESwsLLYUb3A477FDxseuuu8bPSoFOxUMhYemll443cArg6N+/fwxqWUZBuhKCEfZ7fvPfYostkjPOOCM555xzkoMPPjgWDigMUGDP8RrWY30Cs2222Sa+5qyzzkoOPPDAGMhusMEG2dp1dt5557h+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/vwqhN8/D+GP1vYYGELyT/Yhq+fXX38Nn3/+efj666+zJc3n+++/j3+bcYlN8ffff8f1f/rpp2xJ60aGbD7vp59+Gvr37x8GDBgQPvvss/i9mfKlln744Yfw5ZdfxjHhtfDnn3+GgQMHhl9++SVb0rjvvvsufPHFFyN8d96HbcRxmGOMKtvoq6++qtnnrzUDWUmSJDWfZFgIT64ewj1zhXB/K3rcmz4enD8NZr/MPmh1EDAcdthhYa655gorrLBCswezO+20U5h55pljoNcUr776avysJ5xwQrakeRBUvfbaa+Gbb77JljTN6aefHuaee+6w4IILhiWWWCIstthiYeGFF47b+uSTT45BXa107do1LL300uHtt9/OllTXww8/HOaZZ55wzjnnZEsaRmXFpptuGmabbbYYoOYef/zxuE8vuOCCbEl6mP/xR9h6663DUkstFd56661saV2ly5tvvtnk46UlGchKkiSpef3zRwhD/m6Fj0Hphxv9aUFKvf/+++GZZ56JLZ0ff/xxeOCBB7JnmscCCywQlllmmTDBBBNkSxpGSx6flUdz+r//+78YiF533XXZkqYhIKNFcY011gjHHntsOOaYY8Luu+8eJp544nD88ceHXXfdNfz444/Z2tX1119/xfmSa9XyS2Caf7+mIMHaIossElZcccURsobn+7T0fZgaa6GFFgqdOnWK2yr3wgsvhJVXXjluu9bOQFaSJEnNq904daXQVvcYN/2nutmWH3nkkdCvX78YHLRv3z7ceuutVZlDs6nOOOOM0Lt37zD99NNnSxqWZ5see+yx48/mwrzDpT9HBUH6hhtuGA466KDwv//9L3Tv3j0GxrTOPvroo+Gee+7J1qwuttE444xTs/mSeV/+RlPfn3UvvPDC8MQTT4SpppoqW/rvPi19H7YZLb133XVXbPXNTT755GHccccNE044Ybak9Ro7jbZbf7idYafMO++8YcYZZ8yWSJIkqbVhTB8BSeVgKAmh30Uh/PVjXfDYWjCt5Vjp551n/xDG61C3bDSxHc4+++zwySefhKuvvjp88MEHoW/fvmH11VcPM8wwQ7bWiHjN/fffHwMMupa+8sorsUWRwKS8VZXxoARsd999d+w+ShdRWvGmnnrqGGDhtttuC3fccUdYdNFFR3o9XWJvvPHGcO+998bX8jq6Ql9++eWxy+y6666brfmv5557Lr7ffffdFwNkuqLOMcccIwRJjFulZfXFF1+MrX50Geb3hx56KG4D/s5kk00W1yWo57mbbroptlgPGjQofq6ePXuGN954I7YoUwFQH7bR66+/HrcpLbq5Dh06xG7KtIZPOeWUYaONNoqt4+edd15srWQZ247vz+fj7+Tb5/nnn4/bje3Cd6BVdNZZZx3peL799tvjGNYdd9wx7iO+B/uOz8/fLw0mwbZlnxFc0zLPumxDxtrONNNMcY7VUu+++27c1nw3ugDzWfmbtJrSGjznnHNma9ZhW95www3hwQcfjPs7b5Vlm/N9VllllfgArbNUqjz55JNhlllmCZNMMkl83SWXXBL/7m+//Rb3B/vhpZdeiutwjLGf5p9//rh+ucceeywe5zxX3/HNNuCYYfs0FKAz9vidd94Ja665ZrakgvTNCuOII45I0oMp+02SJEmtTVqYTtLCepIWlLMlZYb9kyT3zZkk16fF0Jtb0ePG9HHreEky6NPsg46+NAhI0kJ9ss466yRp4T258MILk3bt2iUHHHBAtsaI0qAmSQvuSRqAJJNOOmmSBg9JGnDF/1922WVx2+bSICRZfPHFkzS4Sjp27JjMPPPMyUQTTZTMM888SRqcZGslyaqrrkqInvTr1y9bUicNlJM0IInPTTPNNEkaSCUrrbRScthhh8Vl++yzT7ZmnTSwic+lAUr8fNNNN138e3y/3XbbLfn++++zNZOkf//+8XPMOOOMyf77758svPDCSRoIxvV57+WXXz5Jg8+47j///JPsvvvuyeSTTx6f42caGMfvs8YaayRffPFFXK8+++23X3zfNPjOlvzr7LPPTtKAPtl2223j73feeWf8G5tuummy/fbbx7+RBtXJfPPNl3z22WdJGrAmJ554YvzcfEe+68QTTxw/05577pmkwVV8nxzvkwaryVFHHRW/I/uLbcnf4Pc0WM3WrPPhhx8m6667bnxPth9/Z8IJJ0zSADp+xo8++ihbs04axMbvtsUWWyRbbbVVfA2fmfdnnx999NEjnGdDhgyJxwTP831y99xzT1x23HHHZUvq9udyyy2XpAFlkgaqcdkZZ5wRjzeOUT4j+4zjYplllkn69u2bnHzyyfF9zjzzzBGORfz555/JaqutFp9/5plnsqUjGzp0aLw+8LMhL7/8cnLIIYdkv1XWmurBJEmSpDaj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W6Pphg0bFnr16hW23HLLsPDCC4cFF1wwbLDBBuHBBx8crcBYkiRJkjTmaDSQ/eWXX8Ill1wSLr300vDhhx+GX3/9NQwcODD8+OOP2RpNd8cdd4RNN900PP/882GZZZYJK664Ynj33XfD5ptvHq666qoY6EqSJEmS1JBGA9nxxx8/bLbZZuGiiy4KTz/9dOjWrVto165dfIyKjz76KJx66qnxdbfffnu48cYbw3XXXRfuv//+MNVUU4Uzzzwz9O3bN1tbkiRJkqTKGg1kJ5poohjIbrvttmHmmWeOgW2SJNmzTffkk0+GN998M+y7776xJTZHF+NDDjkk9O/fPzz++OPZUkmSJEmSKhulZE/4L91/SehEEIulllpqpNZcgtn27duH1157Lfz+++/ZUkmSJEmSRjbKgex/wTjbTz75JLbuTjHFFNnSf7FsuummCwMGDAjff/99tnRk44wzTvY/SZIkSdKYqlkCWabZIZjt0KFDbHktxzKeI5EU65bidRdffHHYc889w0MPPRQGDx6cPSNJkiRJGhM1SyDLmFoeY401VsUkUflyui2Xj7+dcMIJw9prrx0D2UUWWcRWWUmSJEkawzVLIDveeOOFCSaYIPzxxx9hyJAh2dJ//f333/E5glbWLTXuuOOGOeaYIyy++OJhxhlnjEGvJEmSJGnM1SxR4aSTThpmmGGGOPcs3YfL/fbbb+Gbb76J60w++eTZ0pFVCoIlSZIkSWOWZglkaY2dd9554/8//PDD+LMUiaB+/vnnsMACCzQYyEqSJEmSNMqBLEFp6c9yZB6+8847w/PPPx/++eefbGkIK6+8cujYsWO46qqrwhdffJEtrWuNZdkkk0wSOnfuXHEMrSRJkiRJubGPT2X/r9cbb7wR7rjjjvjzscceC++9917MNPzTTz+F5557LnYZnmuuueK699xzT9htt93Cd999F7p06RLHuGLaaaeNGYdvueWW8NZbb8Ugl5+nnXZazEa81157hZ133nmkMbKlnnjiidiyy1hZSZIkSVLb8+WXX4Z33nknrLnmmtmSkTWpRfaRRx4J+++/f8wcfNddd8Vld999d9h7773DQQcdFM4999y4DASrf/31V0zeVIqAdr/99gunn356ePfdd+N7EfASCB911FHhyCOPjPPMSpIkSZLUkHZJ+Xw3FXz66afho48+Gj6FDg+myuFB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tdde4dtvv83WbLoePXqEG264IXTs2DGMPfbY2VJJkiRJkhrWaCBL99+TTjopDB48OJx//vnhmGOOCbvvvnsMYg8++ODwxBNPhMsuuyxbu2n69+8fTjnllNC5c+ew0korxRbfdu3aZc9KkiRJklS/RgPZfv36hSeffDKsuOKKYb311suW1tl3333DeOONFx5++OHw22+/ZUsbNmzYsHD88ceHv/76K5x44olh0kknjcskSZIkSWqKRgNZEjFhgQUWCOOOO278f45uwSz/+uuvmzxWlu7Ed955ZzjqqKPi+NghQ4bEFllJkiRJkpqiwUCWhEwff/xxHMM6wwwzZEv/xfI555wzZhweOHBgtrR+77zzTjj11FPDWmutFbbddtv4/qPSGjvOOONk/5MkSZIkjakaDGRpKaXLMAHkBBNMkC3911hjjRUmnnjiOH72999/z5ZWNnTo0HDaaaeFn376KRx33HGxSzKvawyv+/LLL2OiKab/sfVWkiRJksZsjXYtzpMw1RdA5ssbStZEy+v1118f7r333nDWWWeFRRddNC6faKKJYndlXjvhhBPGZeUIkO+4447Yktu7d+/YFVmSJEmSNOZqMJClxXWyySaLraKDBg3Klv6LAJWsxu3btw+TTDJJtnRkn3zySTjvvPPCzDPPHKaaaqrw4osvxsdTTz0VvvrqqxicvvrqqzFQ/fnnn7NX1enQoUM44IADwrXXXhvWXXfd2JIrSZIkSRpzNRrIzjXXXDFg/fzzz7Ol/2J86wcffBAzD88yyyzZ0pExfpakUe+++27YZJNNwgorrBAfq6++enj88cfjGNtDDjkkLiOYlSRJkiSpPo12LV5ooYVi998333xzpFbZTz/9NAayM800U5hjjjmypSMjGL744ovD6aefHo499tg47Q4P5qTl/Rl/u8MOO8T5aueee+7sVSNzfKwkSZIkqdFAlgC1S5cu4bnnngu33HJLtjSEv//+O45bxWabbRa7F+P999+PyZwuvPDCuA6mn3760LVr13D44YeHI488cviD+WQXX3zxOD52jz32iMsaCoglSZIkSWo0kCUhEwHmbLPNFrp16xZ23HHH+HO99dYLt912W9hiiy3CTjvtlK0dYgvtGWecEa644orhgWx9SOTEg/XIZixJkiRJUmMaDWRBluHbb789bLTRRjFBE4mXmBLn5JNPjl2GmYInR8vsdNNNF5M6Mca2IWQrJpkT644//vjZUkmSJEmS6tekQBaMZb3ssstC3759w1tvvRWzDtMyO/nkk2dr1OncuXN47bXXwj333BNbcxvC2Nhzzz03ZixeeeWVs6WSJEmSJNWvyYEsmPpmiimmiC2oZCquNHcsiaEIbut7vhTP05rL+rxOkiRJkqTGjFIgK0mSJElSSzOQlSRJkiQVioGsJEmSJKlQDGQlSZIkSYViICtJkiRJKhQDWUmSJElSoRjISpIkSZIKxUBWkiRJklQoBrKSJEmSpEJpl6Sy/7d63bp1C126dAmdOnXKlkjSGG7Y0BAemDuEXwaEMHa2rGgGp4/Zu4Sw0t11v0tqG7w+SZU9vUEIAx4IYbzs96JJT+0w+ZwhrP9BGk3Wpl20T58+oUePHqF79+7ZkpHZIitJkiRJKhQDWUmSJElSoRjISpIkSZIKxUBWkiRJklQoBrKSJEmSpEIxkJUkSZIkFYqBrCRJkiSpUAxkJUmSJEmFYiArSZIkSSoUA1lJkiRJUqEYyEqSJEmSCsVAVpIkSZJUKAaykiRJkqRCMZCVJEmSJBWKgawkSZIkqVAMZCVJkiRJhWIgK0mSJEkqFANZSZIkSVKhGMhKkiRJkgrFQFaSJEmSVCgGspIkSZKkQjGQlSRJkiQVioGsJEmSJKlQDGQlSZIkSYViICtJkiRJKpR2SSr7f6vXrVu30KVLl9CpU6dsicYow4aG8MDcIfwyIISxs2VFMzh9zN4lhJXurvtdGl2eF5JaK69PUmVPbxDCgAdCGC/7vWjSUztMPmcI63+QRpO1aRft06dP6NGjR+jevXu2ZGS2yEqSJEmSCsVAVpIkSZJUKAaykiRJkqRCMZCVJEmSJBWKgawkSZIkqVAMZCVJkiRJhWIgK0mSJEkqFANZSZIkSVKhGMhKkiRJkgrFQFaSJEmSVCgGspIkSZKkQjGQlSRJkiQVioGsJEmSJKlQDGQlSZIkSYViICtJkiRJKhQDWUmSJElSoRjISpIkSZIKxUBWkiRJklQoBrKSJEmSpEIxkJUkSZIkFYqBrCRJkiSpUAxkJUmSJEmFYiArSZIkSSoUA1lJkiRJUqEYyEqSJEmSCsVAVpIkSZJUKAaykiRJkqRCMZCVJEmSJBWKgawkSZIkqVCaHMgOGjQoXH311WHbbbcNG264YejatWt47LHHsmcb9/vvv4cnn3wynHDCCWHrrbcO6623Xthmm23CueeeG7744otsLUmSJEmSGtakQPbrr78Oe+65ZzjooINC7969w3fffRduu+22sN1224WzzjorW6thl19+eQyCzzvvvPDGG2+EH3/8Mb7XUUcdFTbeeOPQq1evbE1JkiRJkurXaCA7dOjQcOmll4ZbbrklBq4Enw8//HB46qmnwtRTTx1OPfXU8NBDD2Vr12+sscYKG220UXj66afj45FHHgkvvvhiOOaYY0KfPn3CySefHAYOHJitLUmSJElSZe2SVPb/ivr37x86deoUZpxxxnDvvfeGmWeeOXsmxIB23XXXDZtuumno0aNHDFbrM2TIkPj82GOPnS2p88svv4Qdd9wxPPDAA+Huu+8OG2ywQfbMyLp16xa6dOkSP0+zeufUdEPcE8J42e9FMyx9jN8hhJXuDmGcieuWFdGwoSE8MHd60AwIYcTDqDgGp4/Zu9TtC6kaPC8ktVZen6TKnk7jnQEPFDe2SE/tMPmcIaz/QRpN1iblEg2dxJfdu3fPloys0b/87rvvhu+//z4stdRSIwSxIKCcfvrpw3vvvRc+//zzbGll44477khBLCaeeOIw22yzhX/++Sf8+uuv2dJW5tf3Q/iqTwhfF/jx3TMhJBx1kiRJklRsDQayNNYSyLZr1y7MMccc2dJ/jTfeeGHhhReO410//vjjbOmoIUh+5plnwmSTTRZbfRvSvn37+Fma3djt00g8/VnkxziTpP+0wLaTJEmSpCprMJCllfSbb76JramTTz55tvRftLBONdVUMSMxwex/ce2114bXXnstrL/++mGxxRbLlv6L977rrrvCGWecEQPewYPp4yFJkiRJGlM12rWYsa20glbqFsxygtxhw4bFpFCjin7Pp5xySph33nnD4YcfHiaddNLsmX8xrrZDhw4xYJ5ggglapkVWkiRJktRqNBjIEjTSnZdAlYC2HF2P//rrrzDOOOPEbsajguRO++yzTwxeL7nkkrDgggtmz4yI4HX11VcPu+yyS1hyySVj4CxJkiRJGnM1GMjSCjvDDDPEIJa5Y8vR9fjLL78ME000UZyKp6mYrofAlNdfffXVYdVVV82eadjff/8dg2dJkiRJ0pir0a7FCy20UPzZr1+/+LPUH3/8Ed54443QsWPHMNdcc2VLG8aUPQSxBKU33nhj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T1+7fTFuek60T8+NIvNe0XoMSffDX+n+qNG+4LygEp7eZJNMMklt9gUmmD6EsYsajWf++SuEP7/Kfqku7xWjIv0izXSvmG666bKlVca+aAv3Cvz1TXqd+qNm1yhiuK+//jqeFzXLLzTWuOn9YuShp9XA8UQOpnnnnTecf/752dKRNRjI4sYbb4zBKi2z3bt3z5bWYWqe5ZdfPnYJvueee8LCCy+cPTMy5ok95ZRTYmRd3nL75ptvxiB45plnDrfffnvF8bilOFHamq5du8ZtPPvss2dL1BKosJl66qljdm21LLKhv/baa+G4447LlqilvPfee7FXDsM81LK4V/zvf/8Lc8wxR7ZELeXYY4+NZaC11lorW6KWQANInz59vFe0AiR2Jei45JJLsiVqKVTu0ADJkEwqP4von3/+ifmYJphggmxJBQSyDUkLkkkaySfphTr5448/sqV10sJNMs444yQrrLBC8vvvv2dLK0sD4iSNrpMDDzwwGTJkSLa0zt13300wneyzzz7J33//nS0ds+ywww7JgAEDst/UUk477bTkmmuuyX5TS+K6cMQRR2S/qSVxrd9xxx2z39SSuFf0798/+00t6dBDD00efPDB7De1lPvuu897RSuRBrLxGqWWN3jw4GTrrbdOfv7552xJ29Ro36E555wztpY+++yz4Y477siW1jVZ00JLtMz8snkyqA8//DAuZ8xsaeKmVVZZJSyxxBLhpptuCr17986WhvDDDz/EWv6JJ544rL322s0//rWVoBW6fFoiNT9qrZjbWC2PawKt42p55CdorKeMmof3itaDLnsTTTRR9ptaCvvAe0Xr4L2i9SA+Y1+ksV62pG1qtGsxSMK01VZbxaRLm2++eRwnRTcOuhN36dIlXHfddcML//fdd19cl2l5CH7JapwjKRQJozp27Bg22WSTePEh+RPrHXjggbHrcaXsyGOCjz/+OB5w5XP1qnnRH58xslNNNVW2RC2FcTZcc5hjWi2LLkqMzXToQ8vjXjHDDDOE9u3bZ0vUUj777LNYxiGngloO0zYyxM17RcvjXkE5yqEPLY8Gx/79+8fpTSvNGNNWNCmQBcHsWWedFRM7EeVz8SZB03777RemnXbabK0QHn744bDLLrvEg5j/kwQhx+t69uwZxyG+/vrrcSPzWqbW4TWlQa8kSZIkSZU0OZAFWYp//vnnMGTIkDjwlm6Y5ZmwSMRE7RjdC2h5JetUOZJEMSUPgSytskUdhCxJkiRJan6jFMhKkiRJktTSDGQlScORpI9hIIzBzHvU0AunX79+4fvvv4/5D8iToOYzdOjQ2IOJ23VpLyeW0fuJh5oH+4BxgOAcMfGWpNaG61R5eMfvXK8q9ZQtMgPZVoaEBWRrlcY0FA4ZcsDwBAIpkhMwhGHyySe3oN5MGBZCDgOSne25554x+Rz74vjjjw+nnXZa/P8888wTs9KvsMIK2atUKwMHDgzPPfdcnE85H45TWgih0oEZAXbaaadsiWqpb9++cX7rd955J2bJJUcIFTsk4CKpyrLLLuv9W20WiVkZGlh6DeL/+e95OFH6O9esxRdffIRcOqqNb775JuYfYt539lOl+8Vqq60WOnfunC1pGwxkmxmbmxsehZL5559/eObJzz//PE5NxA1yoYUWCtttt13MTKnaoqXjk08+CVNMMUV8VMI6FCgJqphuQdX15ptvxosvBXYKil9//XUMasmETibvpZdeOgZNCy+8cJhtttmyV6kWXnnllbDmmmuGgw46KBxzzDFxGYWXddZZJ2YEZR88+eSTYZlllgk33HBDrGRQbXAvIAkiiRbJJcGjvABJS/m2224bzj///GypauXyyy8P//vf/4a3aHB9YkrCTp06hccffzzssMMO4eyzzw5bb7119grV0quvvhorDahYq4Sy1vvvvx/+/vvvsOiii2ZLNTqYjpNKm1F12223hS233DL7TbXw1ltvhX333Tc888wz8frE/aIcgexRRx0Vjj322GxJ22Ag28wIYLnhUVNC4MrNkBYoatRvv/32GCxRiN99991j4YTfVTvUYDFdFNt/xx13zJaOiO6UXCAWWGCB4YV7jb4XX3wx9OjRIwZEzCdNUETgSqZz5pPmPCC5HBUNFEbyCp5NN93U1P418sADD8SC+LXXXhs222yzuOyAAw6IBRGy0FOzzjRpZ5xxRnjooYdsla0Rjvftt98+TnHH/YJW1zy5Yuktm4LJrLPOGs8N1Q6zNTDV4Nxzzx2DWSoXuG5xvhDI0pOKn8stt1y48sors1eplpZccsmwyCKLxN4hpRU8OSp5uK9TCf30009nSzU6zjvvvDjlFD11qNDh/nzjjTfGBhmuUVT0sy8oVxFQ0SrI/frwww+PDTeqDbYzZSPuyVtssUVYaqml4v2i/LygTMVzba5ih0BWzSctlCczzDBDkhYOsyVJ8vjjjyfpQZekBcckLbgk6QGZTDHFFHG5aiu9KCcTTzxxcuqpp2ZLRvbll18m8847b5LeFLMlGh2///57cvTRRydTTTVV0qFDh3i8X3zxxcljjz2WvP/++3F7f/fdd3HfvPHGG/GcOP3005O11lorSQvyycILL5ykN8/s3VRNPXr0iOfDI488ki1JkmWXXTZZZpllst+SJA1o4377v//7v2yJqu2HH36I58cGG2yQLVFL4hrFffvdd9+Nv1999dXxHHjxxRfj72nQFPfV6quvHn9X7S244ILJtttumwwbNixbMqKhQ4cmaRCVLL300tkSVRv35ZVWWineE8r17Nkz6dy5c3LyyScngwcPzpaqFj7++OOkffv2yZZbbhmP+zGNWQqaGVMYUStS2kWSrnrUrJ944olho402ijW+dGely6Vqi5rE/NEQarwqddXQqPvxxx9jbwRamtKAKbb+de3aNaSFwNhNbLrppotTd+VdWTknqNG95ZZbwoMPPhhbY2kNUfUxLpnWQK5R+Oqrr+JjiSWWiL+DVkFqehkvq9qgxw69EuwS2Tp8+OGHIQ2cwnzzzRd/5xwpbe3g/xNOOGHscaXmQd4EzpHyVqcc1yd68zhmuTb69OkTLrrootiDZ+21186W/muNNdaIrYSXXnppXFe1Q+8DWsmXX375kaZEHRMYyDYzCigcdKXJaxgLRRZQCvDghsh4TRKvqDb+7//+L5x88snh3HPPjYX2xx57LI5vOvPMM4c/unfvHrtR7rPPPuHbb7+N3co0+ghS77vvvnDWWWfFsZZNTeTEObHWWmvFwJcuTqo+rkNcf+gy+fvvvw/v9k23sdx3330XC4l0AVdtULFGVzxyJ6jl5V26G6q84R5BYKXaueuuu8L6668fg6dPP/00dvnm/+UPxmOS0IZxg3SlVPVxbfr111/juNn6zD777LERwOtYbVFZQ+MYXbrHSHUNs2oudAGYfPLJh3ctHjBgQOy2uuOOOyZpQBWXvf3227EbE10yVBtbbLFFMsEEEyQTTTRRMtZYYyVpASRJC+axW2XpIy3UJ2mglay33nrJF198kb1a1ZQWDmPXvPq6iKEp62j0/fXXX0nXrl3juZEWQuI50KlTp9jVFXRb2n///ZOOHTsmb775Zlym6uM4v/vuu2M3+gcffNCueS2MYSUzzTRT0r9///j7lVdemUw22WTJa6+9Fn9nSMS0006b7LHHHvF31caJJ57IAPE4xISf+f/LH9zTedDVcuDAgdmrVU0PPPBA3P4MC6rPVVddFdfhWqbaoXx0zjnnxHv1W2+9NcaVk0z21MzyZE8vvPBCOOKII2K21ptvvjkmemKQNmgd3GCDDUJ6gQi77rprXKbq6tmzZxgwYEBs9SaBUxqoxi6sdOnOcWpQwz7LLLPExBK2QNUGtewvvfRS7FJfX1ZoMhqTcIhzhoRQqh1qdWnx5hyhK+Vhhx0Wu3jnz5HROA1wY48FktWp+hhqcvXVV8cu+G+//XZYd911w2KLLRaT/9GrJ0fvHhLe0I1PtfPoo4/GVj56JtBVkvs1Q4Ho2TPvvPOGvffeO7YOpgX2EXovqLq4/pDVHiRppJcUU4PRq6e0tTwNZofPRGDCzNr44IMPYgI0hsvRxZhurfm2ppcbCdFIkklSKJLWmeypdhjqQPmI/UAPKjLZk5yU8mvp/YJzhCESPNemEMiqeaWF8iQtIMYWQJI6kUji22+/jc/R4nHCCSckM888c9K7d++4TLVDSxMJI6wxbDlpoBRbOz788MNsycio2eV8sRWwZVHTO6bV9raEH3/8MZ4T9Biht8j4448f/1/aW4QHz9kK2DyOOeaY2EOHHlXsm3bt2iVLLLFE7J1AopVjjz02W1PN4bLLLkvuvffe7De1hBtuuCH2TCCUWGqppWLPBR60DLJs0kknjYnRVFsfffRR7EVFLwS2O9cmehKWP3iO61hbY4tsC2EuLpI8UWPIQPk8kRBT8VB7RY38JptsYqICtXm0iJPCv3fv3sPHiZdjDkdaAqnlpUZRtUfvBK5TjHGaeuqpw8wzzzx8jD+JJVQ73AcYn8zPtAASt3ulWzXPkxDKFtnaY/vTSk7SuS+++CLeo2ltYlw54zL32muv+Ls0JmEu5csuuyykwVQcM8t5Qk8dxsfuscce8dxQbdEKS74Xtj29EfiZP0qToTFNGL0P29r9wkBWYzQK61yA+Vlf9kNQeKfba32BlkYNiYRee+21mCWX7jBPPPFE7M5KpuLSrjDsEy6+zKnMBPjMPVua8Vu1QTdJkmoxFyAFdgokxx13XNxvDHmYaqqp4hAJbprSmIR7wbvvvhuHCZEYjW56dl9tfs8++2wswFPRU5/8vs38vqodurYyTI4M94QUlJMYCtHYbBBSNRjINhMK5+WBUv576S4oXVa+vqrv+++/D2uuuWYsoJfXpvM7gRY/aZWi4E7roUYfmbpXWmmlWAhh29OyNOmkk8btXRrIsu2ZdJ1g6sADDwynnnqqhcYaY4qjXXbZJe6XFVdcMQazO+20UwxgKRjuueeeccwyY/kZPy5JzY2eCG+88UbFchX3EXqNcN9m7CZBr6S2yUC2GZx22mnh6aefHh4ocaHl//ws7zKWL6eFkAHbPFQ7zGlKgErCgvLWJYLcvn37xv8vu+yyYfvtt49JPTT6SMd/5JFHxhrb559/PibeYmqdySeffISEWyDAJdnQxhtvHLu4qnYGDhwYtzPJOi688MKw0EILxYLgqquuGruP4brrrouJuUjSZWKb2nvqqafCvffeGz777LNYkcBwE1o7SA4466yzZmuplrgPkNiJ4T6V5vYloOL5TTfddHhiNNUWPXi4XuXlKvB/urcyb+krr7wSh22xz3bfffdsDdUS943yRht+5z7fUMu5qoeea/fff3+cnoqy1JRTThnLr0xblQ9hbHMIZFVbJBNiUzMYm2QRDIDn98Yep5xySvYOqhXSlpNo65tvvok/Sx+ffPJJ8uijjyZpQT5OjzRo0KDsVRpdbHe2519//RWTpJA0hWmn/vjjj7i89PH3339nr1KtPfLII3H6iksuuSRbksTpwfbcc8/styR5+OGHk/TmmKQF92yJaoFz46STTkqmmWaake4NaUExWXzxxZOePXtma6uWDj300GT66aevNyEdyVaYMu+QQw7JlqjW0gAp3kf4WfrgvOHeTRLBlVdeOU55qNp56qmnkq233jpZZpllYsKnRRddND64py+99NLJIosskjz++OPZ2qoVpu8844wzYiK68vsFMceGG26YvPPOO9nabYuZCZoBg7BJmvLee+/FsTU9evSIKfsZcP3QQw/FMZo8z5jB9EYYpxc5+uijQ9euXbN3UK1Qg8t4P1r6+Fn6oNsk3Y7ZF0yXRBdLVQfbndpBun8xvUsaHA0fa8by0gcp5NU8aM2gW14+yT3p+tP7RPx/jtp2at5pHVTtMJULU7zQAku37jfffDP069cvdpNkWgvuF/RqoDeDaottP8ccc8SEZ5Vwr5hrrrliy6yaB9ehvAdb6YN7Cvvj8MMPj8NSSNCl6uO+QOKzzTffPPbOIREjLeH0tmLoEC2DLMsTo6l22BfEFQx94//cNxj6Q5n1+uuvjy2y9913XyzLMra/rTGQbQYERWRw4+JKkHrnnXeGeeaZJ85Ft84668QbJM/TXYxuyBTsGafWv3//7B3UkuheOWzYsJiQSNVHsDrZZJPF7t2My2zowX5Q7VCRQPBKEpX6kNCDggldvlUbnAt05SY44l5ApSbXIX5fYYUVwjnnnBML6G+99VbMcq/aYr5x7uOl3VhL5RWirKfWgRkhZphhhlgJrer75JNP4lziDAdi6Nyxxx4bGwQIXmmYYfgJZduzzz47rL766tmrVAvcrxkKxLzvjzzySAxY2ebkuGDoHDEHlZ40GBDgtjUGss2M4JTJ1RlbxgWgHOMIOAAZu/n4449nS9WSGGdALRaFS1UftblMbr/bbrvFsUz5g0y5FOAPOOCAODaZ35kQX7VDSywZJ6ndpeKAceM88lZxzgEq4Bibmbfaqvpo8f7www9jrx0qPctxn1h33XVjlu+33347W6paobLt66+/rjeQpSWQ583S2npwz87HCar66EnI2PH9998/LLPMMrEnD+cB5VquS2eddVbo0qVLnDrvyy+/zF6lWqDnAfuD8eD0bGM/lKJXD/l2uI5R+dnWGMg2M7rjfffdd9lvlXFBoIsfGfdUW7TwUWlAYidqtUof3377bSwkUtPF8xbca4OaXbLg0g0mf9B9knmWb7755tjyRPICpt6hgK/amXvuuWNWYrq1UkChBpdtTvcwanKpVKDGl0oFattVG1yXeDQUGNGFkoDWgnrtLbHEErEAyLFfCZXTdCumV5WaB93s6V5Pt+/SB8EV04cdddRRsYsrQZaqj/IpPXjy+0DeW4oK0ByNMlTIsV9UO9wD2P70bKsPU4Wxv5gqqa0xa3EzY/zA0ksvHcfIUkhnMvVyp59+eujWrVu49NJL4yTrqh26gu26666xsF5a206NFt0n6SJDK3rnzp3DlVdeGbuAq7qoNac2sXQsLNufSh+CXFoAyU7J+A9qeCnAq3aoaDvjjDNi99VKt4eDDz44Xp86duyYLVG1UUhkeipq0qnEqVRAIXgiSy77gzFRqh0qNMmAy3WJY5+AtUOHDrHCmcCJezZTiBHoVspqrOojyz0BEhX/OfYPhfq8BXC11VaLLYJWulUf16Udd9wxZrHfcMMN43zwp5xySly+5JJLxnUYjrXeeuuFG264IWZZV20QV1Bhs/LKK8e4orxFFuyXzTbbLHYHp5K6LTGQbWbUhjAO9oQTTogHHQURglouxow9oybxxhtvjOOh6HLJmFrVDoV29gO1iOXdxmjtYDJ1ph9h6p0FF1wwe0bNie7EdD3mQn3cccfZfa8ZcFvgxsf4MlpjKRzS5ZgxN4zrdx/UFuOUzz///DjOjOmQKDASPLHduWZxn6DgOGjQoLifDJ5qjwo1eiRwPeK+TOUC3VcpRDI+lqSOTpfXfNgXVDSXTpvHdYvfGR/LNEgEUfakqg16SBHAHn/88XEIENPoca2iTHvJJZfEewbXL3q09ezZMw6TUG0QV1ChSe819sV2220XuxgTVzDkge1PV2+GBj3wwANh/vnnz17ZNhjItgBaARl4nc/LOO2008aLL8s50KjNuuCCC2KmMdUWF1u6KNEto7wWi8CWFhHGe6hlUdN7xRVXxAL8bLPNli1VtdF9khYMeink3SRpHeQ2YXKn5kWQRKGEzKCMO2NcMgUT9gcZ8AlqyWa8yy67ZK9QrVF4Z6YBfjIujWCWHlYETN6vmxet4fTa4b6dP8BPulCa7b62qNDZaKON4v2YVlkQyOY5YLhnUBFKbzZaZO3BU1tU6pDYiW1OUkASnRFXcB/Jx8VSwdAW7xcGsi2EgJUDjoRO77//frwg0+JBRkq6wxg8Sf+imytjnpjknppG1cYdd9wRW7/JhLvBBhtkS9VSKIT83//9X0y+xXg/hkDQ+sd9gl4i9BapLwGRaoccCgw9IViacsops6XSmIPQga7d9AqhModKtg8++CDep+lNCCp4Tj311Ng6rtpjmNY111wTbrvttthAA3onEFOQTJNKBXoatjUGsi2MFkG6BbAbuBA4/q/lMMaJbnuMx6SigVTydCGrlF1a1VWpRRx0saQwv/POO8fWWG6ctEypNqhNJ0Ci9ZvxyGodaH0iiOU8oSAyySST2L1bShFI0eJE4ifuFbSSk5yLoUBkaVXz4jpFAk3u3ewLe/I0r3z6vDyu4H7BPqB3YVtlICulaO0gYQfzbRHQ5sjieuCBB8bCfVu+ELQkMhSTFKI82ROFdrrbky2XAJYpeEhUYOGkdhhPw9RHVBaQ8IlMh5LqKp1J/MeDLPb8Xlr5xvWK7pP2ZGg+BK+HH3547NnG/YPGAHq30VpOayD5SMg3ouZBEFU6ZllqDgayLYSbHrWIJHiiFpGbYt5FjF3C83THsEtG7THebPPNN4/BLNt75plnjmNsKKzQ7Zt9xJhmEg057qb6Tj755Jh1tdK2pTaRWl26UlIosct9bTH+kuzcTGJPi+yWW24ZW//KuyNxvSITqLXt1cN1hsRajG9im+dDThrqOszzec8R1Q6tTCRzorKTcwTlPUi4b9MSyPAH1d6AAQNipQFdKElCR/dWek/RGsUYZpIPLb744nGYRKXZIVQd3Atef/31+GCWAcwyyywxAR3bn8oFVR9jlIkd2NZUHnz22WfxGlSpZ1suv1+0tV6GBrItgIOPguJ55503/KZYCTWN3DhVO5zY++67b0xZfsQRR8TkKowpyNFayJiPd999N45TY4yBqosbYO/evWPlQTm6T84zzzzxhqjaI5HN1ltvHbuy5tgH7Jv8VsFPui0xnnb99dePyzT6mF6KpGYUvJl/ka6RDHVoaEwTQyBIzEUSD9UOlTtMhce1iH1DYZCKt9LiE+cElaA77bRTtkS1xDRIlKE4Z5hOpPQ8oVcVZSwqSbl/H3300dkzqiYqDciuTu8dWsFLsT8OPfTQcNBBB8Vx/aoushRzryCHAgljuS6V9xIpx3nB/nD6HY0WAidqdglSafGg6x4D4+nOR9IICpK01NJCuN9++4Wllloqe6VqgYIiWaJJmkJ20ErovkQWProYO1+j2rI+ffrEyjNq0WkJpGcIj9LbBP/ncdhhh4VOnTplSzW6mHaNQgn3BjJGEzhRodBQiyxd+Ujksc8++2RLVAtsY3rscH+2Uq11oJcO58YzzzyTLRkRZS0ySdPdm/l9VV1U3DDUhwo4eiJQnqXlm0CK3iUEWdxP6MlGI4Fj+quLKTzpUs/sJ1QUUAHdWCDL8+QbofKzLTGQbWac4Ex0T1cw5v977rnnYtBKVxiysdKdjAOUAJfaRrqYqXZI7EShkdotangrYdzgqquuGuebzadMUu0QOFHTSzBFt2I1H24HFABLg9fyWwSFRx7sn4Zumho1bHdqzLn201WMFg4C1fpu0fm2Zz801Gqr0UeFDYVF5mBU60CFAvNh3nTTTdmSEXHubLbZZrGymnKWqoteamuuuWaYd9554zRg9FYo9eGHH8aWvzfeeCNWJDhMrrrIH/L777+HaaaZJt6PGQrHfbshPN+hQ4c2l+/FvP3NjG7FX375ZZwcmoOJg5GCCj/BRYGaeGp+CXRVWxQAeTCpfX3IishFwkqF2uKGRy8EKgzWXnvteI7wkwqd0q6uqh1ujIzTJJCiOzEPAqvSB89xDeO8UPUQkHKNYftS4CCwpftq+fbPH+wbgllq2VVbJD8jMHJbtx6M8yO/BeOXK+H6RMOA0yPVBknPGKe5xx57jBTEgrH+lGWpSGCOU1UXxz8NYtw3uGcQ0DKFZ0MP5pZti0lLDWSbGQUUuljkLU0UVAikSsfKcnCynDm5VFsUHOlafPfdd8daQworpah4IJDiZsl6qo377rsv9ky46KKLYu05SSOo8WU6GLqw0h2GAEu1xRRHG264YewSVh/GNDMR/lNPPZUtUbVRsUklzuWXX54tGRnr7LjjjrFrn2qL6w+VN+RMUOvA+cEwLLriE1Bx76Z8xU/uFYzP5D5Cq6Gqj67FTBfZUOIgyrmsw7qqHRKf0dOTWTfqw/WL+zZDG9saA9lmRhDL9CG08IFaEmpISguOdGXlUSmLq6qLfcHYV5KmbLzxxjFLK4ErBUgSRHBxoNsMqfwp4Kv6uAiTsIPJvE866aRY00sQSy3uCy+8EDNTUtFAt25aqVQ7eStG6RRU5XiOdajkUW1QGO/bt28sfDSEFinOF9UWSZzoyrrbbrvFaxWVOOROIENx/uAeznVLzYPKBXrvXHjhhXGMJt2IaR3cdNNNY6XzVVddFXv1MHWeqo+kmASor776arZkZFR6cr+wVby2KL+Spbuh+wVlJ65TbfJ+kahZ/fDDD0mnTp2S9ddfP0lP8OTXX39N0otx0qFDh+Smm25KevXqlayzzjrJuOOOm9x7773Zq1Rrt912WzLffPMlk0wySTL++OPH7T/BBBMkU001VbLddtsln332Wbamqu2aa65Jxh577CQteGRLRpRepJONNtoomWWWWZKBAwdmS1ULnAecA0888US2ZETDhg1Lbr755mScccZJ7rzzzmypqu2XX35JpplmmuTkk0/OloyMa9Lss8+e7LTTTtkS1crSSy/NQOVGH2mwm71CzeHzzz9P0uA13hvSYCmZbLLJ4s9ZZ5012W+//ZKvvvoqW1PV9sUXXwwvu1599dXJJ598kvz444/x8emnnybXX3990rFjx2TFFVe0/FRjlIvYD9ddd122ZGT9+vVLpp566uSII47IlrQdJntqZtS009pHbe6pp54a0/jTHeB///tfnAcK9Hffe++9Y0pzxkKpedBK/thjj8V56Ui0Qi0iST7IaKzaoWskted0a6001gbUutNCTlK0+eabL1uqauBYp9cB1yZqbMk2uc0228TtXNoljIQS1K6TZZ2aX84Vu9tXFy193Ad+/vnncOyxx8Ykc7QwMTYzv1UzLpb/M2UV5w3zK5MVVLVz/PHHx14I3I/pvsr2Ly86cW6Q48LM9s2PHBdvv/12HKLF3NYLLbRQHA+o2mI4FhlwuR8wJpbkW1yf6CnC0DimhUmD3LDuuutmr1A1vfTSSzExJsc/CUvppVDftmaY1gUXXBAuvfTSOHa5LTGQbSEUTPLsn6AAQ4InLsRMJL3FFluMMJ+p1FZRSOQCS5A699xzZ0tHxLgO0vhz4TaQrS66E88+++wxKQfyQCn/WYrx/LPNNlusaNtzzz2taKsy5uV98MEHs98axr5guAOBbH3njSTVEuPGmcf6zTffHD5kjimPmAebrvh071ZtUPFPw0tTMUXSWWedFeaYY45sSdtgICtlOBVefvnlOFaT8QSkKadmd5ZZZsnWUC0wfya1urRkVGpZIsBi7DK1vlT4MK5c1UOlGtOK0KLEnIzU2LIfmJaq9PbA/xm3TwZXniPQVXXRyk0CG64/Rx55ZJy/lLH7pdgP9NqhsMg8mczdKI2pSHr2xBNPhI8++iiOFSTvBa2DnDvcw1Ub3JfpwbP00kvH3mvMs/ztt9/G5+hpmLfOqnaYeoryKsnO6LVGa+xyyy2XPfsvGszIaty5c+d4/25rDGRbGNNd5IET89RZKGkZdNM755xz4oWZuX7ZH2Q05oZIpjemhfGmWBvc/EjUQWKI7bbbLmajpFsYARZT8txxxx2xoEJXe7rP0BKl2mDuPyoW9tlnn3jjU8s56KCDYpK51VdfPVui1oLuxXS7Ly2oU5SiwEiWVjUP7gunn356THRTOg0PweyKK64Y54YnYaOq7+GHH47JtRgqZ9fhlkWvKhoD9t1333jcj2kMZFsIfdoJnGgBYY5MbozMC0jgRLc9U8Y3H7qrbrXVVjFVP926aeUguzQp/BkDwv7p2rVrOPvss+NyVR/7gJsi3ZPoUs84J84JsnczhpMuSmx/lqt28tuBNekti/1AC3k+R6D7o+UxbvmKK64ITz75ZCw4MqacB/uGyjUq3ujqd8MNN2SvUC2RZ4Qp28jCSkVo3gJLC23Pnj3DvffeG1sFb7/99tjNVdVFLoVtt9029OjRI1a4qeVw7WEWAWZAGRMr0gxkWwB92nfZZZdYi0hgRH91gliCW7oI0GXszDPPjAO3VVu0iJPYhi59TLvDmDPmPqNmnRp39gnJiBi3RksVN07VxsCBA+N8shQUaRWnEE/yFPbJKqus4njMZsS+uO6664aP22cKC+bz5f+0kDPXtZVttcV8ykw/xfWJ7V2O84QpX+jFYGKb2iI4osWDVigKjTwIXulqT3dWcC+n615Txzhr9FCGuuWWW8KVV14Ze02VVnJSqOc6RaMAD3IwqLpIrkUDAOVUkpWqZXEvICEdeRbK5/alwu3pp5+Ow7MoT7W5BgECWTWfP//8M9lnn33idCMHHHBA8vHHHyc///xznG6BqXlIWT7ttNMm888/f5JeKLJXqVZIz5+e9MmOO+6YLRnZm2++mUw00UTJQQcdlC1RLTHFS1pQTNKLb7ZEzSm9ISZLLLFEnIaH6RO4TaSFwfgc+yQt0CcrrbRS8vXXX8dlqj7uExtvvHGcuoL/V5IGsnF6sGuvvTZbolo599xz47Rsxx57bNK7d+9k5plnjvfv7777Lvm///u/ZMkll0y6dOnidC/NaLHFFks6d+4c7xeV/P3333GqwxVWWCFbomoaMmRIctxxxyULLrhgct9998VzYdCgQXG6vNIHy7ifq3Z++umnZM0114zTerJfynGOML3n9NNPn/Ts2TNb2nbUpcxVs2E8YHrjC1tvvXVsASRbKN1hqCGhS+UOO+wQLrroopi6nGxwqi1qqqhVr2/aFzBWkAnxS6ciUW3QnZjMh9Qc8qA7n5rPjz/+GE4++eSYOIXpwRijzLnBfgE9FUj0RG38xx9/HJep+hjvxzYmQ3d9wxm4d9CVrG/fvtkS1QpTV5D0j945/KQ7MeMw6T1FMi6mQWJ8Od1Z1Tzoxca9ub5u99zXed4xy7XBFDtco+g9RSvfOuusE4cA5a3g+WP33XeP+S9UO/QYYV8ssMACFXOIcI7Qu40yLPf0tsZAtpkxtoauSIzDrM/CCy8c59+ie59qi4ROTF3BRaA+jJVlnCwZjFU7ZIw+/PDDY9eYFVZYIXYnpsKHbHzsA9UeGXMZF37IIYfExBEknysvKJL1kHGb+VQLqj66rjLsgeyf9aEgTyUolQ+qLQqK3CcoJDJmPx96kuPewBChu+++O1uiWmNMbB5IVULOCyoXWE/VR0Uzw+Oo0GHoA7/TfZXxyaUPEnIxZE61wzWJ61FDyWK5V1DebYv3CwPZZkYBkFZAxprVh4y5PG9NYu3REk4LFGNhaQknuVApkhCRZIisfCQ2UG0wnolaXeY4I0DigkwPBeaW3X///cOOO+4YBgwYkK2tWsnnkl1iiSXiT65VSVkaBVo6uGmSjEi1wX2CMeLl16NS7BsKiAS0qq3S8fnclykU/vDDD9mSup4KnCdWKtQOlTtUKFPBQ2MA4zOZ6eGAAw6IAVPeg4dKT8Yyk/WbnlRM3abq4x5BYrPrr78+5g+5+eabKz54jil6VDtUsHE/aKgHG89TIcd9pa0xkG1mDMKm5pZMenQfLkcQe+2118YaFrqVqfqoNafF6dBDD40P5tCkVpcbIgETLVHcBHfaaaeY5IaEEgRX1Daq+qhVpyWWAiLd7Tk3brvttvggI+Kee+4Za3Xp6koBRrWT3+Qa6kZPYZ3CpAFU7RA40U2MhE4k8KiEISrsi0UWWSRbolqhOzEBEsEUFWz0mnr88cdjLxKQQZdkK3Q1Vm306tUrVibnj+OOOy4WzKkEJaglKVr+HL+TVZf7NoGWqo9jfY011og9p/LHqquuOtKDpIBUOKh2aJDhGkXS0vp6SlG5Q/mJmVHanDhSVs2GQe+XX355TKCy0EILxeQR6YU4SS+6yUUXXZRstNFGyVhjjZVsuOGGSVpIyV6latp6663j9h/VB69T9Z1zzjlx+954443ZkhGlQVWyxRZbJOnFOunfv3+2VLXwyiuvJGlBPTnwwAOzJUkyzzzzJHvttVf8P9evPfbYIyak69u3b1ym6iM5BwlUSApIIiESOvXr1y8ZOHBgkgZPMcnKZJNNliy11FIm3WoG3LOnmWaa5Pnnn4+/33XXXcm4444bz43NNtss/uT3W265JT6v6rv55puTCSaYICagm3LKKePPGWaYIZl99tmTGWecMZl66qnjMn7ONNNMcTnXsnXXXTd7B6ltIsHTBRdcEMtRm2yySdKrV6+YZGvw4MHJRx99lJx++unxXCB54Lfffpu9qu1w+p0WQKsrrUsnnnhiTKJCKy1dkxg/S0vI2muvHc4///w4JkfVR5Ka+sbVNGS66aaLremqrqOPPjpOodC7d++YwKaSSy65JLba0tWYlirVBt2F0yA23HTTTeGoo46KPRRWX331WLPONeuyyy4Lxx9/fJzzlynCHP5QO7T+pQWQmGCIFlq629OFjNZwhkJwLSLJEC0hqi2mc6H1lXsyLR8k46Ln1CmnnBK7tNI6Re8eevK0xa57rQH74LPPPhul7cs5xLhA9pnUltHtnmFY9EAgyRkP4gqGKX766adhpplmiteslVdeOXtF22Eg28zY3DwIWN95553YZZKuYwS3BEorrrhifJTPAyW1VRdffHEssDOHLBlxKznppJPiBZquM7PNNlu2VLXAWOS99torJvKgEMg4TboR06WSMTjLLbdcuOKKK2LSJ9UW9wWGNFCxQPdVAigKKFQuMH/snHPOma2pWuKeXZ70jEpoglj2CZmluX9XyhgqSc2BxjCGZhGwEl8wRJEK0PXWWy9mj26rjQAGss2MlkBaNMjMusEGG8RlFFbYDST44CGNSUhYw7RTiy++eBy7POWUU2bP1BUg33333Th+eaWVVgrdunWzxaMZMM6G1j5uitT00rLBVC9bbLFFHLNMVnU1H+4RVH7m9wkqFuqbdkTVR28EAtcjjjjCYFVSq8ZY2NK4gh49bTm2MJBtZiS26dSpU2yB2m+//bKlag3orkfrE90rOS1KC4r8Ts2WLSCjj1pCEqOQRY9tzOOpp56K3ek5NwiWZphhhnghfvPNN2NAxYWYCiDmqqtvXk1VH8c9XZMoxJOp1eBJY6Ill1wytriSYMuKtNaFis5+/frFe3eepC4vtPM7U8OYuVhquwxkmxnd9jp37hwnij7ssMOypWpJBEy33nprzJjb0MTdzGlKBmONHioMmBbhv8gn/ZbGBLSEU+lDTx4qgCpVsDGunAog1c7GG28cWzkeffTRbIlaGhWhl19+ecxeXF+mVlrPOTeee+65bInUtlH5Ty837hflaKRZcMEFwzzzzJMtaRsMZJsZB9Kxxx4bk9YwvUhDExir9jj8Sd9Pyn4mtWdA/COPPBLHFNAqyJhMans322yz2P2VLuEaPXRVJVEQF9rSQnn+//JLEsvzZXQ9NpV/7VG58+qrr8YbIsEU8n3A/qClgyRDXr9q59tvv41zXDMXY0Pzk9JL4aGHHsp+Uy3cf//9MZkT4/lXW221bKla0oMPPhg233zzOJ/p8ssvH8ftk1+E69Irr7wS7r333rDMMsvEBgOmgFHt5cMf7DXV/KjsPOecc8Jdd93V4Jz7//vf/+J8/W2JgWwz40Sn9e+0006LhcBNNtkkdlctP/Ep5JMh0cQ2tcXgeAqCFBq5MZK8g7HLJB4iuxutId27dw9TTz11PPm9QKutI6kQx/wLL7wQb44EtZXQzZKWKlUf25wKT4agLLXUUrECbbLJJotZKMtv2cw3TvIn1c5LL70Us3gPHDgw9sxhHtnyrvZU+JCkkW7Iqj2GoJCQjkYBhp6QKHCfffaJ2e0pP1HpQGMBQ1OopFZtkE2aXApk9c5bxslzwXWLfUSSQNUWCeeY/YFAdv7554+VbcwtW36/4P/MQNDWKuMMZJtZ//7940FEDTstUyB1f+m4G26OFGS4IFN7otqhoE6hhAnUL7zwwtgaS+srXYg33HDDuA43SpYx1QLTkUhtFd2+d9lll/D444/H1o2ll146FhJLW8XBmFl6MRBEqfooHFL4ZlwmhXErNFsWlZsU1KnwBEEsCbfygiLnB4HsoosuavfjZkKFAWUn7tkffvhhHLLFteuEE06Iz9P7jcpo7u9M76bqY3wyCRgfeOCBeE8oxTnBVJJUxrEPVDtMS0VFDt2G6ZnQ1roON8ZAtpkROHHiM3aD4JWbH4/S3cAFgBoWgqsuXbpkS1ULX3zxRcyWy/xb1LjTlZjuSoy9yRNE0L2SmyStHiQkUu1wM2TsU304bzg/VBsUCumhwFyyZGilZr1Slta88K7aoGWDmvWdd945nHHGGdlStRSCI+Yfn2iiieI1iorm0oI75wLL6F1FUjrVHpVsjA+nooeulGussUbYaKONwtlnn52tEeLvTBnGFFaqrh9++CGWm6j0p8zE3OL0XMufo/KA3oeUo2gkcEhQ7XzwwQcxkOXaMybm3jGQbWZsbmoKK6F2lwc3SILb8cYbzwyJNUYNO+NraH3lBki3SrpLbr/99nF8GqjtZe5MupRdcMEFcZmqiy73jFW+8cYbwyeffBLPER5kn+Q8ILiloEhXsjnmmCN7laqN8TUc+/fcc4/jyloQLbJUnDHGj0KgWh73Za5T9Rl//PHj/VvNgzwW7A96j/z0009h0003jZVuBE9UwLFshRVWiEO4qKBWdT377LOxmyrzkzIUhenZSv3+++/hyCOPDBdddFHcR6yr2qDMxP1it912ixXQYxqvus2Mmlu6JFV6cCMkcOUnNb8GsbVHt0mSOr3xxhtxXM1cc80Vu0teeuml4eGHHw7vv/9+vBDTQmK23Npgu5900kmxW9hbb70Vu8nQxZUbIwWVTz/9NPZkoDufBcXaYn5Yas7rywKq5sH4JgolZOmmIk0ti2sQlZ6V7tv547vvvovrqXnQjfKdd96J45YZm0xBnoCVseXkuzj44INj11eCWVUf5wPlWSoUyoNYUIblOSqj6dWm2mEICvl2qOinEnRMM/bx9oNpdsx3RlIhTv682x5jZu+8887YKsVzBFcEWaotKguYVoFAifE0jLmhBZAglq4xJIwg0QdjpBivPMkkk2SvVLVQs0st4korrRRuuOGGWCDk2CeNPN3F6GbPTfGaa65xTGaNkZiD2l2SnDEGzUQdLYMeCLRo9OzZM7aScz7QRZJ7AwX3/EHOBXrvuJ9qi7wW3AforVOpMo3WWqbUo/V8r732ypaqlrgnUOE277zzxtkGqISj+3ePHj3CTTfdFCtF6VVCJan37eqjspkKA84JEpNWwv4g4zdJn8a0cZvNKe/FSQzBdYoeCdwvKEtRiZA/uGdw/apU8VBkdi1uZhROGH9G8ESrHzXvHIAsI2jKUbBnXA5BlWqLVj8qEsgKSs06SN1PVlb2E+NwGKvGDVPVR6Y9xnUQ0C677LJxbDgFdJKrgBZbkm3RU4Fg1kJJbVGju+uuu8abHmPMqO0tld8yGDc+yyyzxP+ruhhjNuuss8as6o3ZZptt4hQ9qh3yKDCkgW6rlcaMY7vttovBE7171DKo6Ln77rtjyzjBLd2NnSKsNgiM6EVF0ERZloqFUgwN2m+//eK+YByzlW21wxhxyk50p6e8BMqylJlKQzzKs/RYIMNxW2Ig28yoxWK8JdMpcPKjd+/ecYwmXWUolBBAvf766/GCzMEptWVcVK+99tqYkINkKZwDzN1Lq2CeUIgkW0x/9MQTT9Rb+6vqYA5GKtLY1g2h9ZzxtKo+KjwpcNAbIW8BpNa90u2aewRzXKt2GKvMdYdjvhIKj8xfyv7hfi61dVyjLrnkkpg3hN5U9FqbccYZ43Mk0aS1tlevXuGAAw6IPas4R+hpQmugw7Sqi16eJN4CFW3cKyolzWQ5jQLke2lLDGSbGWMuGbNBhtyDDjooLjvxxBPjYPmnnnoqduejawDjPU499dRYoyW1ZRznVOowbQWZWpkLkBvgk08+GaaZZpq4znnnnReOOeaYeG6wjmqD8cnc6Eh6ttNOO8XpRKjVrYTCCa2GUltEBm+G+lCRQPIzek8RrFbqWkzrFMNR6FZsci6NCajo5HinFZyWPs4LuneD84FAilZB7hF5kjR6H9LFmCETqh7CuPqSyJYikG2LSWQNZJsZyQmoQWdura5du8ZljB+g4EgLFEkLaI1ibAdzluZzoql6aHGiC1hpAZ2WPx6cDvkpkS8DLSPM6+hk99VHpmIqbOjOzTjl6667Lo43I8ClsodxHrTSMmaW7sZ2Z62dhx56KCbooNKAVlnH6WtMRYs44yubiilImCrJOX9rg/IR94bSaxLBEw/u2RTScyzj3k2ARUs6laOqLu7FlE/zXC95iytKZxsgiGX/sD+YeYDAlgSaUrUYyDYzMlAutdRSsaB+2mmnxZqrtdZaK9ZScZGmBotMe0wkTVpzCpSqLsZjXnbZZfHiy8U1v+lRo8XpkNdWcWPMp0HiebKIOqdj9RGgMtcc420OPfTQmHiLihzGyXJeUBjhvCHZFlMiOW68dhjWQEssLVCMgVXL4DpEwTAvANaH5yk0muG++sjKSmsTtt1229htkso1tnc5KkXpPeI4wNq5/vrrY66K/FjPA9i8tS+/n5d2q2QZ3V4bGyahUUdQ+ttvv8X90FTsL/aJeS6qi+1KWbUx+f2i0jWsyAxkmxlJhUhAQGZQ5i198cUXY7dixghSgARjBWkV4fk999wzLlP1kEXvmWeeiYUPLsJcAGiJorWcFlcSe7Rv3z4WYtgX7DP2BxN+U+mg6mL7v/rqq3F/LLzwwnGfMM7s8MMPj0Euv5Na/pRTThne1Vi1QW8FktZQoUDCJ7UMEm5RmcO1pzRI5XbN+UBhkOVkbWW8E5Wiqh2SzJHUhuRnahkMe+D6lAesBKuMWSZI5b7MUAemaCPhDcNU8uWMHXQKHrVljEmmkoeyVHnFAr9zr+An9xMaZFi3LTGQbQGMpeFgohBCzQg1hldffXWccoeLM92OyeRKsieeU+1w+JOunzHLtH7ThbW0ZpebJwEVN8d8onU1D1qk2O7sD7rcl1+gVX2cD926dYuZVwmO6JZn9+LmRyDLlC9MoVDeIst5QXIPfpKZlYRbVPJIYxLKUQw9YQZJunWXtjJRjmIKHspSzAZh75LqyHuJUOlM+YjW8IZ6jID16UXV1loBWxMaxlZdddV43JfvD3oa0rsE3C+YIYU5ltsSA9kWQosTySToikS3ynyQPGMxqWX89ddfY4uIXZVqi+1MBmkK7FdddVW2dES01ObzyDrWRm0Z3bkp+FEIpOBBTwS6VJZWInDLoBDDNElOSVUbbGOCWbZzecGEWnUSoV1++eWx1Zas31Y2NA+SNdL6kQ9DKd03/M4Ubrb+NQ96tlFeIjtupWCKoIsWWa5f5GHQ6DvuuONi5RqVnEz5QhJGKpobQishQ+no6aba4Fjn3l16v+An1ySGLxJrMGyIIRIEsvRcaEsMZDVGo1BCd2JSxJPcphJaP2gdIWNl6Vy/+m+4sX300Uex9rCprax5oZG5HB0jWzv0AqEbN13r2eaMg+LmWMldd90V11XLuO+++2LNOgEt1yfVDi1PbGeyqxPM1oehD9wvVHtLLLFEmGuuueIcpfWhAppePc8991y2RKODshKBEUN+6Oa98cYbN3o/Jsi65ZZb4hSTajn08qSRjPOlrVVAG8i2AAry1CSS2Km0NouuMiS1mW+++WLBxK6UtUehg+lcaJXlJK/k7bffjvMIMkaWi4FGD91c1l133eEp+7kE0fqXJ9UieMq7yHB+8OBmyDLGNzvlS+1QscPYstKM3pVQsKe7Xj5voJofBUr2AfcK5nJU7dBDgVkEpptuutClS5cw9dRTV+wqSc8qx5Y3D4ZdkRiQILVS7gSGBdE6zmwDtNpq9LGtuRevuOKKsccI0+E1JZAlADa/Rcv64IMP4rSejBknB0ZbYiDbzAhgyXzLRYBxTXmXMLpqkNzphx9+iDdJxmzmExyrdtgfdLd4/PHH4xhZkmsxX2COCzXTMDz//PMxqzRzbGr0cIwzri8PZCkQErw+++yzsfWP6XWmn376uIzWj0GDBsWAiQoHkq4wllwa01EhtPTSS8cCfX2VcKoOuqgyRR69EMxb0TowXy9lJLrXM+RnueWWi9lwGS5EwEXlDj9pSScjvjQmoxccU39S0cbY8bbEQLaZ0eLBwbT88ssPH4dGNw1aqLgIk2yISdgpvDOvJrWJqi26yDCXLwPmF1lkkRgoUcFAwEUtFvuMGyUVEBNNNFH2Kv1XBKskOsvHc3AOUIlAJmlqCmn95lygBZZ9QLckxncw9QVJPeypoDEd5wYFdboWU+nJtFSqHSoMSPRHrym1Dr///ntM9nTllVfGXCJUdtI6SG+Rzz//PI7lZH5y7tv0fpPGVIR5559/fjxf6FXIz7bEQLaZ9evXLwaxhxxySMyGi7POOitm3qPvOgEtN0sCKw44p99pHmRppZaKgImuMLnZZ5897LvvvrEWq7SlVtVDazfp4EkkQet4OQomTE1FCy6t4mQwltoyKjIphNNzp3T4CRU/9CKhoE5vBa5PN998c1h00UWzNVQLeWIhhjZU6lKslsF5wpzX3Bdef/31eL6QyIa5+rlnMEbWyufqobKf+/GoIMSgccC5Y2uHhgF6eNI4UF7Rn8/Dz1SfJDUl8VlbayAzkG1mZMAlkCVo2muvveIyuln26tUrXog7duwYDzrGPhE8EeCqeZCJkgvCp59+GgstdPGeeeaZYyZK1Q6tSWSMZmwmyZwqueSSS8IJJ5wQ5/U1U67aOhLUMK6Mn+UFk7ywQhZQMhbb1bX2HnjggXDSSSfFVg16jKh1oXWWACs/N0hWZybv6qNnApX+jWUqLsUQIaY4ZGy5aoOMxeybPLdIqbznG+UmylptMTGggWwzo6sqtYWHHXZYLITQ+kdBhACWk52LLzXta6+9dqxRNJBVW8cY5HPPPTdOSbXgggtmS0dEbSMFSSp7SIYmtWUUSPr27RsTA5YWTLhdU4gkcQqJh2wdbB5ULjO/MvdvunPTojHuuONmz9Zhn0088cSx1UNqixhiRfl0VLpq02rO/ZsGHNUGFTk0BORBa477Bdcput0TyDaWxLGoDGSb2XfffReTE1AAYYxTnz59YlB75plnxsQFHIR0ASCQpfaEbq1qHiSJIBNoadfi/PSgVpGMlBQeVV2MgSUjKD0UjjzyyJG2McErXY+5WJMQKp9zWZKaA60d3KsbQxdvrldqPnR3pas9ParKC/Lct6eaaqq4/yS1TQayzYxaWwrutLYSzHKhpaaEcbFMK8KFmNYp5jRlnsB11lkne6VqhVYPEmyRXIuu3wRM5TdEbpJMv0P3VlUXlQcEsYx1opJnvfXWi+OcODcooFx//fWxu/dll10Wu9uPSrcmSRpd9BoZMGBAvGdTZMofpfh9ttlmiz1HVHvcHxgbSyZ7KhkoW1Wy2GKLxYzTktomA9kWQIsf3YhpeSURwZZbbhnHO+XPXXHFFWHgwIHhwAMPtPWpxrj5MfidIJUbY6dOnWIGRMbZlJ4aBLuM8dh7772zJaomuiuRXZKCSTnGKXMukPjMcU9qq5jqi+lCNtlkkzDTTDPFCk8SdTTWfZgKNxKpMGSF5E/SmODWW2+N+UXozk1SJ7rbl1dycg+ngcD7dvOg4ply7W+//RYrdZjHt7wLvqrj5ZdfjmNjqfynq/ejjz4ay7PlORXKcb8gYeYSSywRz522wEC2FeIiwMlPwgLVFin6mX+OFle6ei+88MIxWCoPZLlAUOlgBsTaYSwNhXnGoTFHJlMpMLaD8WjUqqv26F7PPuAGSaIhjnvOB7p7MzWV45Nrh0z2zCVO7xB64hDMsg+agnsFPXvIu0AgXNqbRGqL1lhjjTiOnAqfFVdc0fJSM6DC+c4774xdtQmgSj300ENxijySQVEBRyPM+uuvH6fW4z6u6mI41u233x4TYJIVmvwiNLg0JZClHLvAAgvE4Ys03hSdgWwL44Sn9ZWWWLLk8lDzYY5YCudMmH7eeedlS6UxCwEsxz9BFOP4qUzjmsTtgRZBgllqcanoYdow5sJWdTH+m9aMjTfeOLYikcmb7OkNBaX5c1999VVcn6SBJP2gYKPqo4KNDMZvv/12PB922GGHMMsss8R7OOfN/PPP32YTqrQ2VKxR2cP+UPPo3r17fNBziqkicx999FHsWUgX7nnmmSfuG8aKkySNafXomt9YgKVRc9NNN4VXX3019lZjKNZpp50Wh8Q1hPsF93TGld91112xMoLeoUWfWtJAtoUw3oZ5YhmXyZhMUGCk5YnJiqltbKxLmUYfBUBaZAlkqTlUy6IFsPRizP9LL1EUEm1tqi7mXtxtt93iGGW6qNIdjModCupcg/LKNlpqGUNOTfull14aNtxww+wd1NKoiadrPtcwxgvSbUzVxRyyJGZkTD/3bFqZaA2kRYPKA1rUaeFgjL9qj14LdKlk7nc1jy222CK89dZb4ZVXXhmhdxrJSqngXGWVVcLVV18dE2xxz6BLN92NH3zwQafNqzLKSjzyrtv8v6nogUicwbA6esBRGVdkVpG0gPfeey9eEC6++OI49xm1inPOOWe8MDzzzDNh8803jwkMrGOoPeaIZV4tLsyMkVXLIFh6/PHHw1FHHRVbObbaaqv42GabbcK2224bf2633Xax4kHVRUseieVIpEUhhVZZandJOHfooYfG2nQCV6ZHovaWGybzYJOAS60DYwOZe5xzh9p5VRetS127do2VPpwPbGd6MeRogeK5Rx55JFuiWuO+QJD07rvvZktUa1TiEJCW5qqgsplKTjDzBuP0qRClMpT7No023iuqj0pmhl9Rsc+De0BTH4yNXWuttWLZl/coOltkmxk1IQcccECsCWFOLv6fjx8gqKUQSWGe8R40/dc3r6aqg8P/ySefjHMDMp6DC++UU04ZLxKlpwaFd05+LtCqLlo3mGeO4InjnmRbXGxLsS/omsS+MqFNdVGLTkUClWhNGWdG9mimBaNLH9OESW0dLUuMDbz77rtjjwUSMtICReBKiyyVoBtttFFcl7GCqj3Ga9KtktwKtIbTHZ9Cefl9m3s2iYc0+ugxSJn0hhtuGN4ziuFZjMtnbCz7hP2QIwERSTLpikzXY6kWDGSbGTVTyyyzTCwAXnvttdnSEdE6summm4bzzz8/1gKrdkimQrdiLsLUHDJGOZ84Ou/iygWbSgZayvfbb7+4TNVD93qyT9IrgWl45p577pEmXOcyxX6g5cOkHtXFNiWhFmNumoLKBLoV04XMwonGBMsvv3y87jz22GOxQo3KnG7dug0PZAmYqATl/s44Z9XeqquuGntSEciCIJagtbRIS8PByiuvbOVClZAZnSEnPXv2zJaEWAHKfYDZBajcpFtxji73lJs4X+iFKNWCXYubGRddWj8amqCbLhmMQ/vyyy+zJaoVCiAUPugqQ20jgSxJO+iyRE1j/mBfkOFY1ffmm2/Gc4L5k5kGiRZCCoelDyp/+GkQW30UTBgnQ6GvKRgaQcUO3fKlMQGVmlSu5UFSef0/wS33h7yVSrVHBRxdIzfbbLNY8U/yIVrLyWCcP3ie9VQd9Iai1fXjjz/OltRNA/P111+HlVZaaaRhDT/88EMcv1/0ZEJq3QxkmxldJrkJNjStAoVExt9YaK89CuM333xzuO2222J3b37SvZtuZPkj/52EOKo+bnTTTz+9mVZbCN3CGANId2HGyNaHaxJdys4666yw5JJLxlZcaUzA8J9+/foNr8zMA9Y8Eytj93neYQ/Nh3H69CKh2+r1118f/8+9vPxB1lxVB70OqOinF9vll18eK5/Jn0BrOGMuy8dbUklN7zZn41At2bW4mZG+n5pDxtSQ8ZC5nEoRxDL25sorr4yBFYVMqS0jgRDHPIUOMkireTHVzp577hluvfXWMNdcc8UHlQqlWYtJ8kHKfgJexjBTcCSzujQm4Bq18847x8dFF10UkzEyLvOpp56KLX6MoeWc4J7OmECpLaLcShJAZtygMicPH8j1Qo6L0iFBDNUi7wiV1Mx3yn1DqgUD2WZGFyVueNRoUXtLoEo3Y1Jo08WV8bGMOcgHyJemOJfaIpI90drNpYgb5HTTTWcXvWb2448/xooEMqnTzRjsAx75WHFq27feeuuYpI6xUqod5o+lxYMkNXkSIbUcKpg57rknc+zzO1NRUZlDKy1ZW3faaad4/pS3Sqk2uC41pfjKNcw5TKuH+zVjX3v16hUDW+YUJ2At7z7MfYRKH/LBOCWVaslAtoVQe0WmVi4E+QTqjNfkd7ponHfeeWGOOeaIy1U7jFlmW1MwKb/Z8TstUtwIabVizI0X5Op7/vnnY6GdShy6IJGcg1pctnt+eeIn+4NkW2SVVm18//33w7tJ8n8Ki1SmMc8cFW8dO3YcKRGXqo/ue4suumhMgkYXSrU87gFnn312TFzDfSO/PjEEaPfdd4/JnxwL2HyoWGC8fukQLPYH+yWfZoThEJxHDIdQdVFWZXvXV3HDkCHWYf+wT1RdxAts41GppOF+znlBubYtMZBtZmzuPKnKRx99FLPpffjhh/GEJ8EThXjmA3R8bPOgy+QSSywRCyblFwSCW7pVctIzlpZ5Ns8444zsWVULBXUmVOciO3jw4Ng7ofxCy3Mso+WD7MZSW0YOBZKbkR3aQnjrwf2bBDa0xlLRQ5Zcxopz77aw3rxoDWc/lN+3KdznSYaoeKNMRY4LqS1heMNzzz03vCEMBKmUnzj2CXS5XnF+sIz/UxlHDx/uK22JgWwzo7WDCdU32GCDNncwFRFd+O65554YQJXfEGkVefbZZ+PFgn3FOJCFF144e1bVwtRHZD7MJ1nnklR+WeJ3CopchG31UFtHxebRRx8dXnjhhTg9lePLpBHREEA319L7Nv+nFbZ3796xoE9rLOUtpnST2hKmKiQRKcErZSOCVRpk8oR0NL5Q+c/5wP2EdahwoxxLTpK2xEC2mb399tth8cUXjy1QTOat1o2WwKOOOireGEmGw/hNqS367LPPwrvvvhsrdZgTkEJgJVTwcD5wHSObq6qP2zLj0A466KCYEHCHHXYIM80000g9dah5J8idZpppsiWS8PTTT8cu3927d3ecudqcvn37xrw6dO0mYGWKSOIK7hEc7/POO298jsazxx9/PA7hYpoqknVxf29LDGSbGZnc1lxzzZjcpq3VirRV1PwyHx3Tkxx66KHZUqntYIgDXbzpgQDG5zOBPcc845VLPfnkkzEZHeOaSf6k6qMWnW3MnI0URECX+rzXQo6adubRPPHEE7MlkkAl9Oqrrx6zr991113ZUqltOuaYY8IjjzwSp6GaZ555sqV1qPCkhw8JuphictZZZ82eaRuaPkpYVUGhkEzFdBcbOHBgtlStGclt6L7Rv3//bImqiYoCEj09+uijFR89e/aMF2j+T1cyVRetsEwfQhBLULTHHnvEQiAJ6WgJJPFTKeo+8/E3qh2uOxRIyPpJgZx7R4cOHUZ40M3efApSZXQ1ziuCpLaKltl86q/yIBaUX5kphVbbtlipY4tsM6PbHjUidAGgdp2mfrqOlWcCpaadA5LpF9SyqMWiFZ2u4Ow3VRddv2gNZIxHJRRG8kQqTE1lNu/q+t///hcuueSScMEFF8RA9v/buxN4mevvj+Pn/yNrlpCQJWvIWgpFEpIWJLtEtEskpJQUKe1ahPbSQqFESJaEIlJJKZF937eodP/3dfqOxnUtv193Zq657+fjMV3znblixv3O93zO+ZzDuYhFG0YnMOye8WCvvvqqlS1b1p+vjGzksZBAIzq+8m8/dOPjOvwjm5V2Gg6RdRKRf7AwRy+Siy66yPtgiMQrKnf4nKYy50hbFvlMv/DCC61NmzZx17RUgWyULV261E+sdKUku8TFOyvrSbu0coFCLTtD1yVy6CA9fvz4g5vhQ/g1XYtp7//GG2/4r7mYZ16apKyPPvrIu0qGZ5ZCrz8n6C+//NLLKinv7tevn5166qnBsyQlnH/++X7+YZEg/GeARmgEt4wVockZPwd8ZWGH5mcKZEUkVp566ilbvnz5IeNfOH/xWc5+f/bIkjh48cUXrUWLFsEzROIP/94rV67sgSqJsvBOxiEcb926tY8Qo/dCPFEgG2WssnNhyIUj6X5K9MLL9EId+AhyW7ZsqSYFEcb7QVObpN0PwXvCe8MHJfuZyVzxnknK4jXm4iO515+FBgJdZi737dvXmjVrdtjz5N9hfEjFihV9b01SZATJ1rLKS0Z29OjR3uyJclfmaSqQjTzGvFD+zZg25iyzoEM1D4uhvD+aqxx57CHnHMVCZtJFZ4mNGjVq2HfffZfs5wE/F3RtpafFrbfeqvdM4hrXSfxbp4qKayQSYDQH5GeDx+huTBKA7SlvvfWWN2qMJwpko4yL9vCsR1KcgEPBEm/N0Z4r/x5ztShtJfuX9AOR94Ef/Jo1a1q5cuWCoxILtJonO8sJWRnZlMW8UuYtUplwJJQY8+FIwHvVVVf5/lkCXBbbJHJ4T1hEozKEzwIu3kPd01lZp2TytddeU7l9hFG2x4IBe/mPtAVCootOrMyLDV9c5pqJz3HOZ3xma2yVpBVUJ9CckV4iVHSy2EmV29atW/1xOhUPGDDAS4vjjQLZKOEfF6vqNHoqUqRIcPRwPIfGNrVr1/ZSARExL3F94IEHfKZvmTJlgqOSEmjoNGfOHC/hPtpey2HDhvmqL5kpbpQqscdfIoMSbj4vaOjEV0olWegcN26cnX766b4HkIodAtrrrrsu+C6JhHr16vnecQJZEZHUiG73L7/8sk2ePNkDWALarFmzetVVu3bt7Nxzzw2eGV9UoxcFGzdu9Jp0LgSPtZpLZpASAIZ4M9xYYoMLdUk96La3Y8cOVShEAItm7N1nD/jR0M34ySef9P03fEBSXSKRQTkYewBp5DRixAh/3atXr+7HQ1gQJfPE4qdEFk2D6K6uzvWpF/sE6bC+atWq4IhI2sKiJ7EGWyFYCKVqgeaMlBzHaxCLdH3ZeCYRNXLkSC+JHDRokJfxHU2+fPl8PwflY2zcjrd5T6kZWXNWs958801vPsRJgLm/vCfst5HIoDyM15k9f/yaG6uJ7A2kXIZRVZSxUhpz0003+QqjpBzKVDnnFCxY8JhVIOyt4X3gA5N9sklnzErKYGWdxczLLrvMy+rBzwEX62TQef0JajlP8Wv1UogsFgy++OILr5YiM8tiDgs5NEQL3eizwAKoxiFFDxUKVIY8/vjj3tSJEST0VKBagcW2UKd1kbSEhBgJNMrsTz755OBo/FJpcRTcfvvtNmbMGC/fO54LP57H3EDq2Tt37hwclUjhIoSxOs8//7w3skmKfWlkyek2LSmPIPXZZ589rFqBUxPvDdlCgle65nLBrsYdsccHJXvT9F5EBos47PGjHCw0KoFFHC7QKRujtJj5mLVq1bILLrjgmNl0+XdoGMTCJg23WDhgTzJ70MIrRAiqSpcu7YuhEnkEqiz2UK3A+YiFOLZGsBBKBQ+fGewvv++++4LvEIlvq1ev9uspYggq2Ph84NqVxTd6KXCMhdF4W2xTaXEUrF+/3rN6ybXETg7jeMgAJhdUScoLdXSjmQeruuzDZL8gFy5cwHCfD0yyIZLy+LngRMu/+/AbPwNcMLIvk6Y3zC5V4JQ68J7pvYgcFnVoVEPgFBIKmkJN6ei4TjBLhlwii8CIbCvNzlhEIGPOa79mzZqDN6pH9JkdPVQoEMQydYBff/LJJ/6Vz20qFUqWLOmNHCdMmBB8h0j8oqyeRk40Yvzpp5+8o/c333zjCz7g3MRj33//vd+PJ8rIRgEzzMgqcaI9ni56dGclI9uhQwcfcCyRQ9fiSy65xPbu3esBbalSpYJH/kb5HnubGb1DxpZ9gpKyeO3ZDx4KjLhg58apiYt2VtbVKVTSEi4+evbs6ZlW5vXS7KlTp06+qDZlyhTPPN1www2enaW0kpV3iRwuAvksONriDaXGZDrUVT06+JmYP3++B64ErUlxIc9nOzeqeUTiFddQ3bp186wrwSojePh84DgN6kgMsDWCvf5UesbbdawyslHABxurt5RJHg/2CrJHUPMBI49AlgYeDRo0OCyIBRcmjBuhJHzRokXBUUlJlOgxH5N/79xY7OFCna9kZRXESlpD2fYtt9zi5ZJ0JKYcbMGCBf7ZQK8F5pkyD5A5vowHk8jiM5y5jHwOHOnG4wpio2fFihU+Fim5IBZ0amVPP5lykXhGOT3VCHwe0OyJzw2uXcMbMnJtxbYIKkTjjQLZKKhSpYrXptMo4niwgpIhQwY/EUtksa+JH3aCqSOhjJILS3UyjiyyUCwW8O+fEu/XX3/dO+6pC6WkRVygs8JOoMrIHTJMZAYZRUXpWNeuXX0kVdL51xJZNKYjE0iGg6/cl+gjOx7exTspqnp4XD8fEu9oNMctPGbg2jZ8Dz8/B1xjkaWNN/oJjwJKW0qUKGH333+/t8Q+EkopKRNj3wcdiwmAJbIIYOlIOWPGDM/OJoeN8+yR0l60yKHDXv/+/b1xDQ2dKH1p37691alTx2eVstqocS+S1pxzzjnehZVO6pSE8RlCY7oPPvjA58cynkeig3PUI488Ypdffrl/Np9//vn+lfu8N+xZlug588wzvZcFDdCSQ9k9VQyaOy7xjqo1FnZImB0J27fI3FJmHG+0RzZKmAXIhTmpfcrEuEBh7AWZV0qO6TbGCZn9UJRTsl9TJWORxwpV6ALxmmuu8RslxpwYKO8miKVhBM8jU0gnUUlZ/Pu/55577Omnn/YVReaaUgZDBpxsB687+JmoX7++/1pEJFpY5KRrNGPxGIlHAMtYC7Ig8+bN8/MUvTDop8BnvETeZ599Zg0bNvQtKOwfP+uss/w94b369ttvvacFnyF8fhxr7KHIiYwAle1xXLey8MnPBFviOE7yjGwsiQKuZRlRxeJbXCGQleh4/fXXEwoXLszCQUL69OkTihYtmlC6dOmEIkWK+DFulSpVSpgwYULwHRINmzZtSkj8offXP2vWrAnnnXdeQo0aNRLOPPNMP5YtW7aEN954I3i2pLQpU6Yk5MiRI6FRo0YJixYtCo7+I/FCxH9u6tSpk7B9+/bgqEjac+DAgUNuf/75Z8Jff/0VPCqRkhigJiReDCa0bds2Yc6cOQm///67H+fr3LlzE9q3b5+QLl26hBdeeMGPS3Twvpx66qn+OZ05c+aEvHnzJmTKlMnvn3766QnDhw8PnikSv/gsePnll/3f/dVXX53wySefJNSuXduvZWfOnJnw5JNP+nUs17nxeA2ljGyUff311969mFJWOhmzh4NVRObPUU586aWXesmMRBcrV5R1M+aF/WfMpaPkmPIxOsCRJZTIYE4m3bmnTZvmzTuSc/fdd9uQIUPsq6++8jJ9ibzED0cvl0yuSR2PMYaEjtISOYxPoONq6LOCj+vwfU/sg6JKoXv37sERiQSaa5F15XM7uSaMiReHXkFFkxWNe4kuyovJOrGHnGwspZOVK1e2evXqWYUKFXzciCqpJN7x+dC3b1+/nqJ5JqXE4Nc0PKOKhC748fizoEA2RmjawUmXC0IaCVFOTKdWiS4u0ik9Ijii3Hvz5s2+z4D3ha5vnAT4KpFDWTEX61wkFitWLDh6KEr2mCc7e/ZsLyGTyKGknrI89mHyYZj0I4L7BFAvvPCC7/+XyKB08vrrr7dffvnF73MeonQs/P3g/aHklUUeiRwW2Fi4GTNmTHDkcE2bNj3YCEqij+spzks0Z+RnhQD3vvvu819TbikS70jA0CBz1KhRPleW4JaFHRY7mzdvHrd9XhTISprGIHsuUpi5xWqWRB9NawhmJ02aZBdddFFw9FB0aKXhzdy5c6148eLBUUlp7Pkj+02QStBUtGhRX2ALzfUNYQGIpnSaXxoZvL6NGzf2KgU6E7P/kvcjPBsLFtxo+HQ888nlf0dFzu+//+6ZP96HpHgfLr74Yv8ZYUFOIoemW7NmzfIFntNOO80z4ZynQqjaIStFZpwOrTQPZFFOJF5REcL1EeOmaJhJAMtnOQs79OGJxwZPhyCQFUmr1q5dm1CwYMGEPn36BEck2tjDwd6mxCA24euvv07YsWOH7z3bv39/QuJFi+9zypkzZ0Lihb0/JpHDe5ExY0bfj8x+5d27dyckXgwedkv8kPT9mRIZmzdvTsidO3dCq1attAc2Fbj77rt9DyZ7MpPuMeOc9Morr/jjPXv2DI5KJMyePTuhSpUqrKgdvBUoUMD7KHCu4n3i/MXxUqVKJTzzzDMJ27ZtC75bJD4tXrzY+4w89thjwZG0RRlZSdMSL8rtlltu8VVeRryweiXRR9aJfbK8/nTUozMoHSfpGs2NDt/vv/++71mWyKEkiT3hdIhm7JHEBlsc2Opw7bXXWr9+/YKjEitk/+gCyn5LvlKqR6UC21CoJOHnpmzZsp75Y/6vpDy2PPDzQB8LuhAzVodSSjKwVCWwL/aVV17xfcodO3b0z3UytiLxbtmyZV6ZcMcdd6TJfgkKZCXNowSpZ8+evt+PfQR8ELLPJhzjd2jKxU0ig1JVxltw0bhz506fi3bqqadaxYoVrVu3bla3bt3gmRIp7CXr0KGDvfXWW9r/GkOUFrdp08ZLVY+2L1Oih/F4LLjNnDnTA6gQPiso5+vTp49K7SOIubCUCbPA9uyzz3pfEfz444923XXX+YInnxXsF69WrZo/JpIW0CuBEVT03hk9enSa6+uiQFbSNPYWsHpLg44VK1ZYvnz5fI5s5syZD9kXSHawSZMmfrKQlMXJl+64dNNbtWqVzwDctm2bB7IsKrD6nnRhQSKDZjUs5jCTjgy5xM6iRYvszjvv9FmZBLVxv8/pBEBW8NNPP7UlS5Z4NU+WLFm8USCLbMl1M5aU8/rrr/tn9cSJEw9b1Bw8eLB/Nr/00kv+HJG0JLTgyWIaizg0nmPfeHIJGc5T8dZYVoGspGkEUTTy4AecH3oaehC0Jv2xIENy4403qiFUBNAhlwwgreE1eir2hg8f7u9Jy5YtveFQgQIFfKB6+M8Ev2ahgeOSMrgQIesUaujE60vQRNlYnTp1rFChQn4sHO9D9erVrW3btsERkfhEppVGdJRyJx3TxrYTfgaYQMDYHZG0hKalfF4zOpJrWgJVOhQnDWS5tuU69uabbw6OxAcFspKmEcBSykp3t/COoEm7tHICYBQPGVtJWXQsfvHFF73bJ/ueJHa++OIL69Wrl5fp8W++fPnyngkM/9ng54Jb//79ffa1pAwuLoYOHRrcO34sNqj8WOIdWVfG6UyZMsUqVaoUHP0b/S0IZNkaofJuSWtWrlzpJfeM8iR4ZesD17Zc14YjIXPbbbfZrbfeGhyJDwpkRSSmRowY4XuUycrWqFEjOCqxMG7cOP9AZNGGjwba+DNaJCla+7MX54orrgiOyL+1evVqW79+/SEZWd6DpBcj4XgOo3fidT6gSAgZWXolPPfccz5mJLRPmfJuzltshXj00Ud9cY3zFjh3sRCn2eMSzwhaaVgawmdI6HMk/PMj9POQPXv24Eh8UCArkgRlGuxPY2+m9qVFHo2dWE2nYzEXIpSyJjczE8kdk5TDBeCWLVuOWTLMhyN7bdJaUwkRiQ2qdiiLpH8FnxWhC3TOVZy3CGw5H5GRCj3GBT6Lo5988onfF5H4o0BWJAkGS3ft2tU//BiBIZFFOesLL7zgGT72drDHif2ABLOh0xNfCWIpiVFTFYl3u3btsoEDB/pF+KWXXhocPRRZcbJUdPZmLIlIPOPzmK7RBKsEqqFFTT4bqEygrJLAlaxT6DEacp177rne5VgkLaCyZ+nSpbZ27VrfCsdnCNdS3OfnJB5HUimQFUmCpkMETOzZ5ENQIuuhhx7y/ZacbMMvQsJx4cLK+4IFCzSnUeIeZWLsF2c/ExfvyWHWLPNM6ZpLeb6IiKRNXDvRK+Hee+/1pk9g6w8jDbNmzeql99988433YWDrUDxRICuSBG3+uYCcNm2aValSJTgqkcLJleZC7HUKSXpa4j4BLo1t4m1/R6y99957XprH2B0CKDIfyS0mhITeG0ZgFClSxH8tKYu5gMWLF7cuXbp4M7Tk8Bw6FleoUMH3l4uISNrDQj+NzuhczNidyy+/3Bug8flMR2+2yPH1hhtu8IrDeOttoUBWJImXX37Z9+JQ8pq0zb9IvKEkj9Vc2vZPnTrVWrRoETxydG+88YbGvqQwOqizmEBpcevWrb3xFuei0J6/EO5TndC9e3fvdvzEE08Ej0ikMWuZkUhUkLCIkDNnTu/wTcVI0vFIIiKRxtx95o3zGU7Aykz+Zs2a2bp162z8+PEeyDKfn/nwzCbnFk8UyIokwexG5mjSeEhlrBLvyMjSlp8ANpSRPR7KyKa8zp07+0o6uAg5+eSTvStxeCBLtpyFB5rS5cmTx0aOHKkxSFHAHrOnn37aPx94b4oVK+YddCtXrmzTp0+3t99+23srlC1bNvgOEZHIY08snbz5/GCbFho1amRbt271jt4EsiyS0m+BrG3oOfFCgaxIEpRZ7tixw5sKka0SEYkGMqufffaZN61hQYH9r8zyJXAN4SOb81KohKxmzZrH7DIt/w4XhO3bt/fyPZqnsPCzatUqX3SoVq2ad7nnfSDT0bt37+C7REQijz2xVA/ef//9PqIKSQPZxYsX+4zl66+/3vuSxBN9+okkQVdEOrspiBWRaLrlllu8ZJtMX8GCBT1L/sorr/i+/ddee+3gjWMDBgzwCxMFsZHHaz558mTr16+fN1ShSzTlxKG95KVKlfJM7Ndff+33RUSihZFU9Bgh6xoSOjeFtjtQwbN9+3b/XIk3yshKmkNzoZ9//tkvAhn3MnHixEMuSpJDRoQy40qVKgVHROIX/95ZzWU2Y9L9mSGUtYY36JKURVWI5linDpdcconvP5s1a5b/mx82bJjddddd/tnBvHEy6OxppuT4888/D75LRCTyaPxHLwW2OLAQetFFF1nTpk197+yECRN8DBWNntgnyx5aypDjiQJZSXPoSMweWC5CGK/DXieaqxytUQeB7u23326DBg0KjojEpw0bNvh8Uj4QaWpzJOzNpKGERAZzYpkJyJgdLlQIoFh4o1qE2bESPZTt5c+f3z744ANf8GTuNd2kQ4Esiz005uL9+uqrr4LvEhGJDs47lBMTtN50000ewP7+++/ekJFqEhbYGMETj1sfFMhKmsO+JvafMdqiUKFC9sgjj/i+2KMFslxU1qlTxzvDicQrFnRoGEEpKxUIZ5xxhndnTYqPDebVnX/++cERSSlcfHz88cf+HhAocW4KYbtDvXr1vLT1yiuv9PmAEnlkZCnLmz17tr8HSQNZ3iP2yhLscgEpIhJtNKILzYvlszyEZA0Bba9evXzrXLxRICsiMcVJd8WKFXbxxRdbtmzZgqOHoisf+8+4iGfchUQGjYbobMiizcMPP+yNhiR6WE0fOHCgX4yAOdbsacqYMaMHuHTOnTt3ri8ksBD3wAMPqPw4CtgbSxd79iZThUC1Ah2KZ86c6Xtj6VhM6R7NVnr27Bl8l4hIdLElhYCWaya2BtH1ngVnuqvHKwWyIhJT7DV75513fIYpXVqTw2zfO+64w/eoKbiKnFGjRnmDIRrakPGT6GK8C//OufCg8RPZvsKFC3sgy0UJgeycOXPsxRdf9J+XPn36eDArkbVy5Uq74oorbP369X6+ogMoY6vuu+8+r+ShqidfvnyeSS9QoEDwXSIiEmlqdygSZsuWLZ4dZOj98uXLD95Y3eIxSXmhJltH677KHjTW3I7WkEv+PQImxk4drcxeIoMGdIMHD/b9mGT+rrnmGi/v5j0BXxm5wxzAV1991WrXru0LPDTwkMhiMWHo0KH++nfv3t1eeuklz3xQXs/CA8Er752CWBGR6FJGVtI8gqQRI0b4xSMr7nSgTIouruwxYAVeUtbdd9/tGdkpU6ZY8eLFg6OHYjYaWSjKi7m4l8igRX+rVq2862GovFWig064NKIj00fTjmOheUf9+vU9K8veJ4k8ZsdSTjxv3jzfM8t+MxoG8vPCfnIRkWjjupVmpIRz7OHnejU0bYDFfxamQ19PP/10/9xgake8LFgrkJU0jX/+NFXhJMDmeJo/0RWUH/DwHw26hjIQv0ePHsER+TeYd9amTRvPwnJxSLa7TJkyPg8t6Slp586dnhHnYnH48OGeMZSUw75MPvj4oOO1Z4A6pZKME+nQoYNfrCfNhPMhSRddzVpOOTQPYl7pjBkzjlhiH47u0jVq1PDMLEGwRA/7lbnx7z8em6eIyImD66OKFSt6U9KQUPAanpjhXMVxqnvYQsQs8njoOaJAVtI0VtVr1qzpMzO5GOTCMLlVKn5MMmTIcLDMT/6dH374wS/AuRBk1tlvv/3mASqvcWglMYSTcYUKFbz5EA0LkgZV8u/Q3Om77747GLCyuBAarE6wyvsSHrDys0DwS8MbVnYlZVB1QEd1KhOOJ7vHXFOan7Fn/M033wyOSiRQys3iQrly5XwEkohIasE1E5M4aDbHAlvHjh39WonrKaqsqPKhkuS6666zSpUq2TPPPOONHZ944glP4hxtW9eJQIGspGk0TyldurRnnmi0ItHBXN6NGzda9uzZvTRy/Pjxno0qVaqUN7UJIbCik/GRuhnLv3fVVVf5/szQhxlfWcwhSxvK1IbjI4MbH4Z0N5aU8dBDD3lnXEqGWbg5FvbyM/KFPbNPPfVUcFQioXr16vbll1/64huVJNxnpIWysSISa1xPsUWLLQ9vvfWWlw+H4/P6scce8y10zH/nuuuyyy7zoHfatGne2fhEpmZPkuaRccqTJ09wT6KB2aScbAlQKWHt27evrxTyPnA8dKN5ioLYyKJcm4t0ZmTSEZfB6gRTdIj+4osv/Hj4jeewV5lxSZJyKA1j4eD9998PjhwdnaUpuz/nnHOCIxIpzFZu3LixLVu2zK6//npfQGD8Du8BjQFFRGKFrCvVPFRIJQ1iwWJ0w4YNvQKR55166ql24YUX+mJoeDnyiUqBrKRplIlRWswFu8QGzVIIZiljBVlySo9/+umnQ4Z6S2RkzZr1YNabEmLK7CmhP/nkkw8eD7/xGOXg+/btC34HSQkXXHCBn4vIytIhl9Xy5FBGxuIDY3fI3FJeLJHF+YmglYwG+8p4r+gY3aRJE58rS0nf5MmTvZOxiEg0UcVGw6ejbX3jMbYEsSUFBLOhyqsTXbq+pEJE0igygzR4mjBhggdPrGZRdsEPeKiEkhsXj6xqJS2zlJRDFnDgwIE+xoI9f6NHj/Z9H4w/ouSYwEoii0ZDzMlkL2D+/PmDo4dauHChZ6MKFizo5ZWSMmh0xngXzkXvvvuuLVmyxC9ONm/e7CvuzC7l5+G5557z/eLsf3r22We9kkGig3/zLDYwU5ZZv0WKFPEFN8r1CGTZLtGgQYPg2SIikUeAysIaJcZ0vOezIamPPvrIF0BZfGNrBNu5uOa98cYb/Zr3RKY9spKmkVlif+zcuXM9E1i2bFnvWkxmKvxHg0CWvYSMx5CURznlnXfeaStXrvT9GsxtZJXxxx9/9MfZz/H8889rxEWEsb+GMVMETHXr1g2OHoo9NWQBGVd17bXXBkclpdCUg/1OfAVbH9iLSYY2tJpOIw/21Cpoir0FCxb4AhzZWhZ26CAqIhItfDawAE3fCkqIqSChWodEzbp163xxlM9rAlZKi88880z/7GBaxKRJk074BnYKZCVNY4QFe9NYyaL0gnJJ2pUn/bFg/A5dRenyJimLTBOt4NmvQaaJhiqUu1LyQpnrkCFDfIZs9+7drV+/fmqwEkF0N6Tj4dixY33cUXIYz9O0aVPPmlNWKSmPRTUqFKZOnWqLFi3yfUyU3jNDmQZb7G8iGyixwecDnb7JnLPgwALc6tWrrXnz5j4TW0QkmghY6UBMUiBHjhyeEKBxIxMh+Dyh38gLL7zggS4ZXAJbjnE/fCrBiUiBrKRpBEuU74VKh4+E4JaTg0YvpDyC1JtvvtlHXCSX4eNETJaQJkM0G6IUXFIO/7YJYPlZ4KKcucpUHrDAE75Pk58P3gsu1MlCkbWlvFIih9ebiw7OT1yUUH4c2ksu0cXPAhkMSvKoXCCQ5f1hywPlfNdcc42X5GvOtYjEAj1FWGgmmGUSAQmavHnzemNGkgXM6gefJ3zek7GNBwpkRSSm7rvvPt/fwf5MZjUmh7Jiyi3prkv5t6Qcsn2UIVG2SlBLVQIBEx9yfOAlReUCCwsPPvig9i1LmkB2nPFgNHxiYYFFTeb3tmrVyvfLJp21LCISKyy6hSoL6ffCZ3Y893dRICsiMUX31UGDBnnnaPZuJOfxxx/35zEahrm/knJYtaXBFtklXl+abJEZP+uss/zDMBwfiAS9NLxRibekFWRaaTrHIhrZDWb3qsmWiEjsKZCVNIfGTnSaZK8ZK+mssnMxf7QVK35MCLLOO++84IikFJqkkOG75557rHfv3oeVu7B3lswHoy3YM0gzLokMyrdZVGCcyJEWFUTSGkYi0cWbjp/s3xcRSS2oqpoyZcrBLShHQtVIzpw5PRnAHtp4oUBW0hwa1YwaNcr3BdaqVcv3EBwPGtswZkFSFnuUyQAyvuL666/3BYY8efJ4NpAglv1olPbRke+WW25RCZ+IiIhIIvbDHu/CM52LaeTItRbbIuKh5FiBrKQ5BEXff/+9XX755Z7do/sqGdljobyMkkpJeTQPoiv09OnT/T6rhQSyO3fu9Ps9evSwe++994Sfd5YahcqHQwsENIHgY+FoHw08xvOPtvorcqLi3zf7zJjHyIUePyPHagjI9/DzoIU2EYkmqtWefPLJg/PHGVdIYyeq25htTWNGJnSwJYLzE8kB+luQmGGrxIlOgayIpAqMr2BGKfs0aSXPSZhVRjrjMm6E/ZmS8vhw2759u1cosMDDosGxAlQu6gcMGODvi0i8+fTTT61v37523XXX+Tgquqrzs3G0nwt+Jrh4pAu7iEg0EcSyLahz584+Az5UaUjzRka4EejS+Il+I2yv47xWtWpVn0Jwom+XUCAraQ4XHMdaXU8qtNquDFTkkf3g5Mv7o/1okXf22Wfb5s2bbeHChb5H9sorrzzm686eHMrzKU0SiTf822YLykMPPeR79y+55BKv5KGb95FwzuLCkMU4EZFoIevauHFjq1y5sk94SA7nL0aEEdBeffXV1q5dO/v444/t22+/9XmyJzIFspLmDBs2zLNPzGOkpJigFkcLbHfv3u0Nh2699dbgiEQLp6jQaUoLCSmPIJafgVNPPfXgrExWbo+G8mMapSlLLvGIoJRxVMwNpwSPjt779+/325HwM0QpsubIikg00byUyjUmOzADPjkrV670njCtW7f2Bbr+/ft7dvabb76xM844I3jWiUmBrKQ5N954o5d/MT6EPbJctHOBEtormBwe4/sop5SUx0UgDQu+/vprP+HyfoQvLHCa4n6nTp10oSgiUbVq1Sr/WqhQIf8qIpJa/PLLLz4WjwZONMVMDuMN2QpErxGmEhDIPvfcc15mXLhw4eBZJyYFspLmsAeQlSgCoquuuspXstiLSVtyVt7JSiX9sSBzy0VMsWLFgiOSUni933jjDbvrrrts69atntXgFo5Al2wsgW7JkiWDo5LSaAixePFi/3desGDBo1YpiKQV1atX97LiiRMnHnZuEhGJJXpccC3LPv4nnnjCJz+QpOGaadeuXZ6xJXBlMsQHH3xg9evX994Y9CMhwD3eyR2plQJZSXPmz5/vXdvYD8hqFBfszAdkg3y1atW8nEyi57PPPrPmzZt7CR9fixYt6mXf4UKBbMOGDdW5OILefvtta9OmjZ177rl+8X7OOedYiRIlfKFHmXBJq8hkMBKMLSnHKrsXEYk2Jj4wj5+mmTVq1LCKFSt6w0waZ06aNMmDXZIFDz74oD+fUYac0yhHpjrxRKZAVtIsSlj54WeQNJve2SvIHgIC2tq1a9sFF1wQPFMi6eGHH/aGKnTda9GiRXBUYoGVW0qTWOyZN2+e74VlFFKVKlWsUqVKPoKKEqby5ctrv7KkGd27d/cmTnxeZMuWLTgqIpJ6cH4aMmSITZ061ff4gwoSGjo2a9bMOnTo4JWHbN0iwCUpwOf7iU6BrKR5/Ahw0T579mwvu+BkQBkx2VkygHR6k8i577777JVXXvGueirdTh1WrFjh+27Yt0z50cyZM30+HTPoSpcubcWLF7c+ffr4B6RIvFuzZo1fBPJvn3nXRYoUCR4REUk99u7d652IScywEE2lG1VVJ3pDp6NRICsShj2a7BEcOHCgjR071s466yzv6qYh95FDEMv+Dcr2KGWV1IX94TS7ISP17LPP+ockmD/HPhuReNevXz/fx8/iDrNiaY6SI0cOLzMOXULR6ZjH1BBQRCR6FMiKJOLHgE3xs2bN8hJXBuIzhqRevXqepdW+qMjhdWZfJosG7NdgBVFiiwZcO3fu9BLjGTNmeJMtSpGYVwdKjblgp9RYJN5RnRNawCFgBY3QwpuhsY+fnwsqGEREYoFrWT6/OR8lxTFKjdk7G08UyEqaxgZ4VtkJXj/88EO/z8b3iy66yK699lofcK/mQpG1bNkye/nll+2ll17ygd5XXHGF5c+f3y8SQ6cnvnKfbnsKdCOHrsUjR470Mu+FCxd6F28+/BiYTndvFnbYK8vPBA251NVY0gL2ju/Zs+fggibno6SXTtzPmjWrN0YTEYk2qglfe+013yZHiTHnLM5LBK+cu1iIZr//HXfcEXxHfFAgK2kOP+A0eiL7Onz4cO9cTPc2xro0btzYmjZtavny5QueLZFGFpZb6FREE6GkjYQIpjgR016+VKlSwVFJaaNGjfJ//6DzIc236OhNICsiIiKpD5UgrVu39iZPjApbv369nX766b4tjp4XoAcJe/yZxx9PFMhKmsOeTBoM7dixw/c0MVrh6quv9ozTkfBjouxTZNA1ety4cd4NlNc5dAsXev1ZSWTRQSKDUUgMVSczSzdDfiYIaCkhpsENewP1cyAiIpI6kHlt3769b4l7/vnnPVnDtRLj9LjGZdzkiBEjvMqQjGy89XxRICtpzg033OBlrJSvMjiajm7sKeCWXBAFMoI1a9b07JRIvKItPyXF7InltmjRIr/t3r3bM+Es+tCQi67F7AdUmbfEo+XLl/sIi/9mviKfH1TyXHrppcEREZHII+PK5zLXp8OGDbMxY8b4TNmJEyf6QjSee+45b9ZIcBtvTTUVyEqac9ttt/mq1X+L8Qvs5RRJK0JdvBm9Q/duSo/pYMwiEB+I7CUXiTfsM7vuuuuCe8ePRVF+VkREooXPaBrS9e3b17p27eqf05y/Ro8ebXXr1vXncF6ix8XNN99svXr18mPxQoGspDnss6R5R8aMGYMjx0amiiYe6tL675G5oHSVWb3/K/Y4U+YqkUczLroXU7Y0fvx4n6kJjd+ReMWF4ccff+xl9NwoxSO7wb//Cy64wCsTaHhGp3sao3Fr0KCBl/c1b948+F1ERCKPhqVUDFJO3LNnT5s0aZJnZJ944gn/iqVLl/pzOEfF24gwBbIiElWMcWnUqJFddtllvjr43zTWYgTGo48+6uXfZAQl5a1du/bgxfmCBQv8/aJxBB2MWcypXbu2753lwl37lSUtYPGTcxX/5rkwZBGOAJfz0OrVq30P2kcffeTle3ReFxGJFj6j2SbHAtuQIUM8aG3YsKEv9jOfny1A9Ibp2LGjPf3009alS5fgO+ODAlkRiSoaEYTKX3LkyOEnX7pFs+eS+3Qn5iKRfckHDhzwwGrmzJleJkMgy2N33XWXde7cOfgdJaVMnjzZG0KQNSdwpfshJUuUJJGJogtizpw5ffSOSFpBEMu5h6oERuwkxc8KJXylS5fW9hMRiSpmW996661eqcZ1EoEr3YmfeeYZryLMnTu3T+egtwWLbuXLlw++Mz4okBWRqPvjjz98/BHZVcpW6bpH4Ep29rTTTvMAirI9yli3bdvmZeB0NWbGLCdoTshJR/TIv0f5ZI8ePXw19+KLL/aZsVy4/zdNb0TiTfXq1X1fOBeJR9KsWTO/kJwzZ05wREQkOn788Uf7+eefrVatWr7YzMxY9sIyEYJrK66r+vXrF5cNSxXIikhMzZs3z8tfuADk5Et2gxPvSSed5AEts88oZ2VE0r/ZVyvHxusOLRKI/IOqkS1btvjiGxeJSbHoRsUCi208R0QkNaCjMVMHzjjjjGSrSeKBAlkRSTUIZGkERXMtLgoLFCjgX0VEYoXmKL1797Ybb7zRbrrpJitZsqQvsrHoxn60F1980QYPHmwPPvigzygXEYkWAtUvvvjCtzYcabGfKjiekzdvXn9ePFEgKyIiInIEmzZtsuuvv97Gjh1rBQsW9Owr+/l37txps2fP9pJimtfRUIUSPhGRaKGsmHMSC27s508Omdn69ev7tiG2dMUT1Y+JiIiIHMGpp57qs8eZ00inbhrVDRs2zLdEUGpMFvaFF15QECsiUUcDTBo0HisvyXNC24fiiQJZERERkaMgE3v//fd78Dp16lTv8D1t2jR7//33vaRYc61FJBYyZMjg0x7oK3IkVJUwRo/51/FGpcUiIiIiIiIniLvvvtvH6jCmkC0O7H0tUqTIIZnZULaWjsY7duzw8WBXXXVV8Gh8UCArIiKOD7zt27f7qq1G7oiIiKROl156qX322Wf+a2bJkpFlVGF4+TCBLGEes2XvvPNO69Kliz8nniiQFRERx8y59u3b+6pto0aNgqMiIiKSmqxatcr+/PNPW7x4sV1zzTXWtWtXu/baaz2oDcei9CmnnOITIAhs440CWRERcez3I5DlK6u9IiIiknpRMvz666/7vP3y5csHR9MONXsSkVRryZIl9sMPP8Rlp73UiP01uXLl8pVeERERSd0YBXb77bcnG8Ru3rzZFi5c6F/jlQJZEYmpjRs32tChQ70DaMjevXvtiSeesJYtW9rVV19tPXr08K57ElmVKlWym266yUaOHGmzZs0KjoqIiEhqRHnxhAkT7NVXX7Vdu3YFR82mT59u1113nTd3otJqxowZwSPxRaXFIhJTH3zwgQergwcP9iAK7NW88sorLX/+/L7ayB6QJ5980jp37mzp06f350jK++mnn+yRRx7xOZm5c+e2Cy+80GdoJm0O8dtvv9n1119vZcuWDY6IiIhItG3ZssXq1q3rTRrHjx/vjZ3IwF5xxRU2Z84cO/vss+3rr7+2WrVq2bvvvmv58uULvjM+KJAVkZgiQO3Xr599+umnds4553ijgg4dOtgXX3xhr732mp90O3Xq5BlZZjfmzZs3+E5JaQSwTZs2De4dHVnbZs2aBfdE4t/OnTtt0qRJvt2Bi0b+/TNflvmMdPsuUaKEFtpEJKqWL19u559/vmddBwwY4Mf4fL7hhhusW7du3gCKhEHv3r3tlVde8Uq3eKLSYhGJqW3btnk3PVYRQWkMZa3Vq1f3FcQzzzzT6tevb2vXrvWLRYmcCy64wMaOHesZcVZ2ufHrjz766JAbz6lZs2bwXSLxb8qUKZ71uOWWW6x///5eQcI5Cd9//70vvoVvjxARiYb9+/f7LTzT+uWXX9p//vMfD26LFi3qFW4svtF3JN4okBWRmKIdPKWqnHRBdoPgtkKFCn4fnIBp+PTHH38ERyQS+CDkA+/yyy+3yy67zG/8mhKl8BvPibfyJJEjWbRokW974CKQpipkNOgUGmpCV65cOVu9erV9/PHHfl9EJFq4huLaiDnwIWzHKlasmOXMmdPvc32VNWtW7z8SbxTIikhMUZq3detWmz9/vpfuMfqFuWfVqlULnvH3HpDQsG+JHj702GvDLR4/AEWOx7Bhw/wcNWLECOvTp4/VqFHDLxxDMxnZT85+8Z9//tnvi4hECwEqASvbsUgCUNH23XffeY+LLFmy+HNIFvAZTlIg3iiQFZGY4mRLRuPWW2/1MhjK9mgjX7VqVX+cjnwEuZyoQ+XHEllkxdmfzHvCnllu/JquiDwmkpbQKIUKkTp16vj9pK1FCGhpSkewKyISTSyktWjRwkaPHm1t2rTx6hEW/xs3buwJALDIxoJ04cKF/X48USArIjFVunRpb/bEhSLzzi699FLr27evZc6c2R9fs2aN7d6920tcTznlFD8mkfPrr7/6fj/a9r/11lu2YsUKv/Hr0HGeI5JWkH1lH38oA5s0kE2XLp1Xk6h3pohEGxVsbHlo166dLV261O8//PDDdt555/njJAO4tqLvCCP24o26FotIqkBXYpqnnHHGGZ7dCGEVkbEwRYoU8TJkiRwuxrt27eqZ12uuucYaNWp0cAV35cqV3uTpzTff9GD26aefjssyJZGkmjRpYj/++KM3UOHcNGTIELv77ru9gzEXi5y7uEik6zrlxyIi0caeffbzU7lGg6cQFuIIZFlwYwtEKEsbL5SRFZFUgXmlFStWPCSIRZ48ebybroLYyGOsCHuUO3bs6PsCKSnmQp0bv+YY82Pfe+89f65IWkCJHlUJZDlAtQjZ2dD+s4EDB3rlCAGviEgs0NCJbVnhQSwIXJkly/VVvAWxUEZWRFIFTkW//PKLXxDSfS9Uxgce4z4BbejiUVLemDFjrFWrVv61QYMGwdFDTZw40TO1b7/9tl199dXBUZH4RZMUFnDItjIKjMoF9u3zc8C2BzKzzZs3t5dfftnL+kREJDoUyIpIzM2YMcP3yVIWc+DAgeDoPyiZYbWRbnwlSpQIjkpKGzVqlLVt29a/HimQ5aKdzNPrr7/uWVqRtIDmKQMGDLChQ4f6zEbK9Dgv8ZUgl27GVJWIiEj0KJAVkZhasGCBNxEiiKURQcmSJb2dfPipKRTI0tH4tNNOC45KSqN9P51Z6Xr4yCOPHDbuiEw5ewNfeOEFmzx5smfIRdIKmqawj5/9ZgS27EWjXI995PFYsiciktopkBWRmHryySftzjvvtKeeeso6depk6dOn9zLi5E5N4eXGkvKYQcd78M4771jnzp3t2muvPdjQiXJKGj0988wzXn78/PPPq4u0pAlLlizxRZ2jja5YtWqV7du3zxfiREQkOhTIikhM3Xvvvfbiiy96efGZZ54ZHJVYYWYmnYs///xzvx8ql6QzK2rUqGGDBg3y5hEiacFFF11kxYoV8/MUpcRJUTHCnGUaoHEeExGJNsK5tLjYr67FIhJTjNWhgRNlqxJ7BKjMjGXPMnthWVzgdtVVV9mDDz7ojymIlbRkx44dtmvXrmSrRMDFI4/zPBGRaGKRuUePHjZ+/PjgSNqijKyIxBRdiplZWq5cOXv88ccP25cpscP8uVAmlsys9gFKWlS1alUvGR4+fHhw5HBkbSktZtasiEi0UAly1lln+ULzfffdFxxNOxTIikjM/fTTT75PloZOzCzNmzev/zp0euIr95s1a3bYnFkRkZT26aef+oipbNmy2bvvvuvnHUbvJC3d49zEYtyECROsXbt2NmTIkOAREZHIY8Y15yZ6Wtxzzz3B0bRDgayIxBwlMbfccos3TAFdi8OFAln2b6qZiohEGqN2evfuHdw7trp163oDtFKlSgVHREQij8qpnj172rfffuuzrtPaGDAFsiISU5TisZK4evVqn0vKfswMGTIcsh+NX5MJueGGG9QpV0QijkW1ZcuWeXOnjh07WoECBbxsj/J6mjuB8xJd1jkn5cuXz3Lnzu3HRUSihfMQ891ZeMucObPPtWarVnIJgTx58njFWzxRICsiMfXYY4/5aiL7zwhkCWI1ZkdEUgtGg5HlYC+/iEhqsnTpUqtcubI3nAvhOooqtnA01GQxrm/fvsGR+KBAVkRiihPryy+/7GMrSpQoERwVERERkaNZv369j/8iAUAFyYEDBw5WjYRjFnyHDh2sTZs2wZH4oEBWRGLqzTff9Fmy77//vp177rnBURGR1IWMxi+//OJjdrhYDPfnn39azpw5rVKlSsERERGJNAWyIhJTlMN0797dy2DouFeoUKHgERGR1GHu3Lnekfjzzz+3PXv22N69e23//v2WKVMmL+Mj20EQ+8UXXwTfISIikaZAVkRiaubMmfb000/bxIkTfZ8HWdns2bMfsk+WMhlKZjp16qSGKlFCs5uVK1d6FiopuiTyXqW17oiSNi1ZssT373///fc+L5ZglW0QVapUsSlTpvjPSa1ataxBgwZ21113Bd8lIhJdGzZssKlTp/rnN1UiNKLjPBXP1W4KZEUkpu6++2575JFHgntHx+DvMmXKBPckEphJ9+ijj/rF+pYtW/zDMCmOvfbaa37hLhLvevXqZYMGDfJtEIz/atSokc+07tevn/3444/2zDPP+M/Niy++aMWLFw++S0Qket577z1vnrlo0SKvGAkpVqyYNW7c2M9j8bj4rEBWRGLq559/tp9++unguB2+hm7hyNAyq/Hkk08OjkhK27Rpk5d5v/HGG1awYEFfyQ1lx8PfD7K0d955pz8uEu/IwnJhSHnxunXrrHr16ta6dWufNQuardSrV8+aNGliDzzwgB8TEYkWxu+0bNnStzhQPXL++ef7lodff/3V+4/wlYZQVL8xQiyeKJAVkZhau3atl8FQqsqJV2Lns88+s9q1a/tF+sCBAy1Hjhxe0p0UHxsZM2ZM9jGReFO1alU7/fTTbfTo0V5GXKdOHbviiit8LE8IGdqNGzf6z5CISLRs377dmjdv7hVrTICoUaPGwRmyVE9xjUXl2/jx423EiBFWv359fyxeHDpkSEQkyoYNG2YNGzb0fWgSW2RkwUU5F+5kvxmwnvSWJUsWBbGSZrDPbPfu3f5rLhApz1u+fLnfD9m6desh5XwiItHAuWf+/Pm+AE2QGgpikT59eitcuLB169bNe4189dVXwSPxQ4GsiMQU3YrJxHLCldgiQM2TJ49nW0Xkb+x7XbZsmW3bts2D2vPOO89L+dgnvnjxYnvnnXdszpw5duaZZwbfISISHWz1IfNapEiR4Mjh+FxnPBhTIuKNAlkRiSnK9sjucUEosVWxYkW/0UFaRP5GUzMqFNjPz8Jbq1atLFeuXHbdddf5vn0yIdmyZbObbrop+A4RkehgBBiLzzR5OpLVq1d7xVU8Tn1I1zdR8GsRkagrWrSo7+EYO3asrxhyoiUzKNHH60555MiRI72pDZlyRu3s2LHDs1Gh2+bNmw/OzxSJd5TmkYUtUKCAB6w0QmNmLE3Q+Bmg+VOPHj3ibu+ZiKR+nIMWLFhg48aN8+aMdCkOv4Zi9nWfPn18Ly3jweJtVr+aPYlITBHAPvvss/bpp5962R5Nn/gavgeTvR1kQmiuwsWkRMaMGTO8azFNI/bs2eMfeOwH5LUP/6g4cOCAPfnkk94YSiSt4rxEloPzlRZ1RCRW6KhOb4tQMzoSBFxDsX929uzZtmbNGiNvec8996hrsYhISrr//vvtwQcf9ItB9nns27fPA6XwUxO/JphiZmOpUqWCo5LSpk+fbl26dPHMONmm0N6bpHiPmKupQFbSAmYqs/+VcmIRkdSI8xSL/cyTDXfWWWdZp06drE2bNp6xjTcKZEUkpihTpYz1aKuEnKYIrCiZUeYjcvbv3+/vR3g2nNcd4R8VZKK4qKe8WCTesQ+WZk/MZ2R/bLly5eIuqyEiJz62AZF93bJli28LYoTeaaed5tsh4pUCWREREZEjYAbjiy++6JUIVIbQEK19+/ZWr149v0hUl28RkdhQICsiIofZuHGjZ8pp7gRKv/Pnz2958+b1+yJpBRUIVCp8+OGH9v7779v333/vPx/Ma2zSpIm1bNnSypYt6/v3CXRFRCQ6FMiKSKrAhSFNhvhK51xOTaGLQvbM4uqrr/ZSGYkc9sROmDDBnn76aZs6dWpw9G8XX3yxde3a1ceRaO6vpFXffvutjRgxwpujsW+fhirVqlXzLK1G8IiIRI8CWRGJuXnz5nl7eAKooyHQLVOmTHBPIoFGEczH5KOBZk6hLtGMSKIZFF599VXvkCiS1nHOevzxx33Rp2TJkj5rVkREokOBrIjEFIO6aaBClqNjx44+84wyPrrnLl++3N59910v4evcubN16NBBGdkIWrVqlTVq1Mgz4g899JBnXkPz6H777Te/aO/du7c3eWJsUrzNoxM5Xrt27fLglbEXU6ZMsTlz5ljNmjU9SysiItGhzRwiElPTpk3zOWf9+/f31vF0BGUv5h133OEjXl577TVvqJInTx4FsRFGxnvhwoV2++23exl3+FD1zJkz+35AFhjYI7ho0aLgEZG0g8CVkWEs+LAAN2DAAN/68PDDD9tjjz0WPEtERKJBgayIxBRjLci41q9f3++T+QufXUpW8Pzzz/fyPcpbJXJ27tzpHVhLly4dHDkc8zR5Dm3+RdICmp4NGTLErrjiCh/Bw9zr+fPnW7t27bxKYdSoUdarVy+rWrVq8B0iIpFDRdRbb73lndTTOgWyIhJTZDNy5sx5cHYpZasEssw0DSlVqpSXICt4iiwysLzuvNZHwmICzwnP1orEs+uvv966d+9ukyZN8lnW7BFfsGCBV5BceumlVrhw4eCZIiKR98477/jiGgv/aZ0CWRGJqdy5c3tgtHv3br/PheKmTZvsm2++8fuggQorj6FgVyKjRIkSVqRIEXvhhRd8z3L4ai+//u6772zw4MF+4U5jG5G0IFu2bN4A7auvvrJx48Z5d2LOUyy6iYhEG9dMBLFqc6RAVkRijFLVPXv2eOCEunXr+giee++91xunvPTSS/b6669bhQoVLFeuXP4ciQzeC/bHUjZZp04d69atmweu3Pg1x9gjyHOOVn4sEk/efvtte/bZZ61SpUp28sknB0dFRGKDRX2NwPubuhaLSEwRtNI8hYtEZjD+/vvvds899/iFI79GwYIFvYzm8ssv9/sSOazyPvfcc95ki0x4aL8yH5qUeJONuu2227z5k4iIiEQX4+/Yu8+Uh//7v/8LjqZNCmRFJFVgr+x//vMfPylTxjpixAjP0mbIkMEbQTHTVKLnp59+slmzZtmGDRv8Pp2jL7jgAs/aisQzSuhHjhzp5xyqEIYOHWorV67089OR/PXXX77gdssttwRHREQio0WLFj7y66677vIqkeMJ5VikPu+886xy5crBkfigQFZEREQkwFYGKg9o8MRIHUaCHc+4KSoWWAASEYmkNm3a+JaH/9add97pEyDiiQJZERERkQCduSnZI3NBcErmgwZ0R8vIUoJP4zqqFkREIqlly5Y2ffp0a926tWdkw0cWHglVI1SY1KtXLzgSHxTIioikYX369LFdu3bZQw895DN9Wa091v5XSpS6du3q+5pFREQketgju2LFCp9jzQLa8YRyPIetW/G2p1aBrIhIGla+fHnPNi1evNi+/PJLa9SokXdEPNKHHR8Z7Gd+7733rGHDhsFRkfhF1oNs7CuvvOJ79kVEYolAlnnvEydOtBw5cgRH0yYFsiIiaRgNnegOXbNmTdu+fbt9/fXXftF+pI8GAlxKlCi7PPXUU4OjIvGrSpUqljdvXhs7dqxGXohIzBHIrlq1yj7++OM0P5ZQgayIiIjIEbRr185+/fVXmzp1qgJZEYm5Sy+91EuLZ86c6aXFadmROxeIiEiasmTJEh81smbNmuDI4WiEM2zYMJ8xK5IWdOnSxasQ3njjDdu/f39wVEQkNho0aOBZ2YwZMwZH0i5lZEUk1fnjjz9s+fLlli1bNsuXL19wVCJt+PDh1rZtW5s0aZJdcsklwdFDkZWqW7euvfrqq56pEol348ePt0ceecTny1599dU+jidr1qyHdDGmPL9AgQJ21VVXBUdERCTSFMiKSKpD1o8giVbxvXr1Co5KpNHAqWPHjvbRRx9ZrVq1gqOH+uyzz+zKK6/0rCwjAETiXZkyZbwZ2rGUKFHCqxpERCQ6FMiKSFRxyjnazLOTTjrJfvjhBzv77LOtRYsW9vrrr3uGFuxPi7fW8akB43eyZMnipZO33367D1qvX7++7du3L3jG302eeB8GDRpkDz74oDeZoLxJJN6NGTPGNm7ceEgTNEqNw3Gc5mdNmzYNjoiISKQpkBWRqGLUS+PGjX0WKWNckl4QcrFIAEVzlezZs1vhwoV9XxrHyRSeccYZwTMlJezdu9eDVjoWc1u3bp0VLFjQX3ven3B8XNDyv2zZsh7sFitWLHhEREREJLoUyIpIVBEIFSpUyH/NPjOaFbC/LPxUxK8JZplnSoYWBLKMhilZsqTfl5RBIHvxxRfb+vXrfXGBzFP+/Pnt5JNPPuw9yZw5s1WqVMmb35xzzjnKjktcY2GH8VQ//vijn4cqVqxo1apVs0yZMgXPEBGRWFIgKyJRtXXrVm+IQuOUTp062Y033ugZQLKuoQzgsmXLrHbt2taoUSN75pln/Bgofw1vsCIpg0UDMuPjxo3zPcnsf73ggguCRw/FBb1GkEi8I3ilzP7TTz8NjvyN7Q5PP/20mtCJiKQC6fomCn4tIhJxZPUoLWa/Jftfv/zyS8+yFi1a1DJkyOA3AiuCqQoVKliTJk0OHlcGMDIITAlQTzvtNF9AqF69umfKOZb0poUEiXd79uyxHj162IcffmhVqlTxmY10KmaxjWZnoHO3zkciIrGlKxIRibpTTjnFHnroIXvxxRdt586ddtlll9n999/v5a0I7ZtNun9WIitPnjxe9v3LL794uXdSHFu0aJHvX1Yxj8QrtjBQndCwYUMfvfPyyy97I7SxY8f64tqUKVNs5cqVwbNFRCRWFMiKSMzQ9ZaOoJQXP/bYY9aqVSubNm2aZ/7YHyvRRaOnzp0722uvvZZsoMoxLujvvPNO27BhQ3BUJL7wc0Anb0ZR5c2bNzhqVqpUKbv55pt9nz+LOSIiElsKZEUkpthrNnDgQA9oKekjmO3Zs6ft2LFDZaxRRiZ28uTJdvrpp3tpcVIcYz8zz/n555+DoyLxhQZoNDvLlStXcOQfVCzQFI2biIjElq4SRSRVYATM6NGjrV27djZq1Cjfj6Y9aNHFaCRe86N1huYxsuU8VyQesaUhvGN6uFCjMy2yiYjEns7EIpJqkO1j7yx70IYOHWrXXntt8IhEA6XDSWfHJkWgy15Z7V+WeEWQSsM59srOnz/fZs+e7bcFCxbYwoUL/WeEr+GPff755/btt98Gv4OIiESDxu+IiIibMWOGXXLJJdanTx+75557gqOHeuSRR+zee+/18mI6HIvEm+HDh1vbtm0PdksPLdoQ4FIpQsd1srWU2oce+/PPP+3cc8+1mTNn+n0REYk8BbIiIuJoctO6dWtbvHixvfTSS1azZk3Lnj27P0bzG7JON9xwgxUvXtzeeecd30srEm8YscNiTqZMmTxQDW1x4HKJYJYglmA2/DH2zJYvX94GDx7s90VEJPIUyIqIyEGMG6Gkm7FITZs2tYoVK/rF+jfffON7l2mCQ1djRpOIiIiIxIoCWREROcQHH3xgzzzzjM2ZM8c7uCJLlix23nnn+XieJk2a+DERERGRWFEgKyIih6Er8Zdffmnr16/3jCzzNKtVq3bIXE0RERGRWFEgKyIiIiIiIicUjd8RERERERGRE4oysiKSajDCgtuRMO4i1CVUIoMZsaNHj/YRJMuWLfNxI+H4yOA2ZMgQq1+/fnBUREREJLoUyIpIzO3Zs8cmTJjgHXNXrVrlwVQ4TlOMvSC4KlSoUHBUUhojRfr3728PP/ywz8+kwVNyCwe8H3Quvuyyy4IjIiIiItGlQFZEYmr37t121113+fzFHDly2CmnnGLp0qULHv0b8xoJZCdPnmxFixYNjkpKmzt3rgenBQoUsAEDBtiFF17owWxyeI+UHRcREZFYUSArIjH1/vvvW7t27axSpUp2++23W9myZS1z5sye9Qvh1wRNRYoU8UyhRMaYMWN8tM7bb79trVq1Co6KiIiIpD5q9iQiMbVo0SLfF/vEE09YixYtrHz58laiRAkrWbLkwVupUqX8q4LYyGKxIFeuXJY7d+7giIiIiEjqpEBWRGKKbGv+/PkVPKUCLBjwXrC4ICIiIpKaKZAVkZiqUKGCZwLXrVsXHJFYKVOmjHXv3t1GjRrlNxEREZHUSntkRSSm6FjcpUsX27Rpkz322GOeFZTY+Oqrr7zx1pdffmnp06f3/cp58uSxk0466ZA9y7xn/fr1s2rVqgVHRERERKJLgayIxNSkSZPs+eeftylTpljOnDnt3HPP9fJWuhSHTk985X6fPn3stNNO82OS8j766CPfp8y8XubHMgaJgDa8OzHvxYEDB7xJV6NGjYKjIiIiItGlQFZEYmrgwIH2+OOP+6/37dvngVPS8TuhQJZMYfHixYOjktJ27drlc3x5rUOS+4jgGPN8s2XLFhwRERERiS4FsiISU0uWLPHmQpkyZfL7nJKSnpa4T1awVq1aljVr1uCoiIiIiKRVCmRFRERERETkhKJAVkRE3IoVK2zs2LEHs+NHQgn4lVdeaWeccUZwRERERCS6FMiKSKqxcOFC+/XXXz1Q4tQUajL0119/+b7NBg0aaF9mBL333nvWvHnz4N7RvfPOO9ayZcvgnoiIiEh0KZAVkZj7+eef7eGHH7ZZs2bZjh077M8///SOuQSyocZPnKrmzZtnJUqU8PuS8lhEmDhxov86vFMxCwk0gRo9erTt3r3bbr31VrvuuuusQIECwTNEREREokuBrIjE1NatW+2mm27ycS6XX365B7U7d+60a6+91gPXadOm2VlnneWlrD179rRTTjkl+E6JJkbu/PDDD9arVy+rVKmS9e/f/5BgV0RERCSa/pmxICISA9OnT7cxY8bYgw8+6OWqZ599to92GTBggGcA33jjDc/Oli5d2ufMSmyQGS9fvrw1btzYhg8fbnPnzg0eEREREYk+BbIiElNk+WguRIAU2v9Kpo95sgSubdu2tTp16thLL71kmzZt8scldooVK2ZbtmyxlStXBkdEREREok+BrIjE1P79+71cOHPmzH7/pJNO8jJW9smGVKxY0UuOCaAktr777jvbs2ePZciQITgiIiIiEn0KZEUkpsi6ErT+9ttvfp8GQtu2bbOlS5f6fWzYsMGbQGlPZmSR8abZ05QpUw67jRs3zp566il77LHHfOwOpd4iIiIisaJmTyISUx988IG1a9fOXnvtNbvqqqvsk08+8aZPLVq0sOuvv96Dq969e1vGjBk9oMqbN2/wnZLSmCHbqFEjL+tOKpQhZ/8ywSxjerSwICIiIrGiQFZEYmrNmjXWrVs3q1mzpnXq1MlLjdu3b28jRozwoJWuxgRRr776ql1zzTXJBlmSMigbHjZsmM/sDcfHBKXfZMurV69uVQcOu5YAAB5uSURBVKtWDR4RERERiQ0FsiISc2vXrvVgiUCJLB9ZWDoYz54927JmzWoNGjTw8TtkZSVyeA/Yn5xcpjU0z1dEREQkNVAgKyKpFk2FCKDoaiwiIiIiEqJAVkQkDaOJ1l9//XWw6Rb3k5YWJ4esLZ2LyZiLiIiIRJsCWRFJFX799VcfsbNu3Trbt2/fIeWtnKa437JlS8uRI0dwVFLCZZdd5l2iJ02aZN9884116NDB98MmV14cwvvBmCS6F9P0iSZdKvsWERGRaFIgKyIxRTZw1KhR3pl4yZIlwdHk/fTTT1aqVKngnqQEuhTTUOvjjz/2QLZz587HzMgS5PK+bdy40UcjDR482G688cbgUREREZHIUyArIjE1d+5ca9Kkif3xxx/+tUiRIpYlS5bg0b9xmiJ4atu2rZ1yyinBUUkJBKM0eMqXL593jN68efNxBbJ8DwsPdJjOnz+/ffnll8GjIiIiIpGnQFZEYmrgwIHWq1cve+mll6xjx47BUTlR3HLLLfbtt9/arFmzjlqOLCIiIpKSjt3RQ0Qkgnbt2uXzYmvXrh0ckRPJHXfcYU899ZSCWBEREYkqBbIiElOFChXyUmK65cqJhz3LVatWDe6JiIiIRIcCWRGJqcaNG1vRokVt7Nixvk9WRERERORYtEdWRKLq999/t/nz53uzIMpRGdsyZcoUe+655+yiiy7ywJbGQ+FCzZ7OPvtsHw0jIiIiImmbAlkRiao1a9b4/NE///wzOHL8Fi9ebGeeeWZwT0RERETSKgWyIhJV27dvt/vuu8/27dtn6dKl82NkWxn5wumI+aRJcYzHH3jgATvttNOCoyIiIiKSVimQFRERt3DhQvvwww+tdevWVqxYseDooZYvX25vvfWWXXnllVahQoXgqIiIiEh0qdmTiMTUokWLbOLEibZ79+7gyOFWrFhhH330ke3cuTM4IpHwzTffeLZ8yZIlwZHDLVu2zO699177+uuvgyMiIiIi0adAVkRiavTo0Xb33Xfbxo0bgyOHmzlzpnXp0sX310rk0EgrW7ZslilTpuDI4SgDP/nkk4/6HBEREZFIUyArIjG1a9cu27BhgwdIR7J3715bu3bt/9QgSo6O3SXr16/3Ob6bNm3y/ci8H1u3bvWFg9Bt3bp1BzPje/bssVy5cgW/g4iIiEj0KZAVkagjeKLZ0/79+z1wOumkkzxY5T7HQzfuc3zp0qX+nAwZMgS/g6QUXt+6det6N+h77rnHfvvtN7v55putXLlyds455xy8Va5c2apWrWpDhgyxOnXqWOnSpYPfQURERCT61OxJRKKOhkFdu3b1wPS7776zVatWWY0aNSx79uyHdC0mS0uWcNasWXbhhRfayJEjLU+ePMGjkhIIXJs2beql3du2bfNFA4La3Llz+4JDCL+mnLhixYp20003WZkyZYJHRERERKJPgayIRN2PP/5o9evX9yzr5s2bvVSVsToZM2a0AwcOBM/6O5BNnz69FShQwEfv1K5dO3hEImH8+PG+X3nYsGFWrVq14KiIiIhI6qNAVkSijnJWRr2Q4Rs4cKBNmjTJS1YZ+ZJ0HyyNhUqVKuVBr0QWGVm6EpOR5XUXERERSa0UyIpITFE2/MMPP1ibNm0sS5YswVERERERkSNTICsiIoegizHdiX/55RfPnlPuTZl3qLM0+5hvvPFGq1Spkt8XERERiTYFsiIictCcOXOsR48eNnv27EP2Kyf19ttvW6tWrYJ7IiIiItGl8TsiIuKYH/vQQw/Z3Llz7dFHH/Wsa968eW3ChAkeuNJZumjRojZ8+HC77LLLgu8SERERiT4FsiIi4n7++WcPWsnIduvWzYPWdOnS+egjsq8jRoywc88916ZMmWL/+Y8+PkRERCR2dCUiIiKOWbLsg61atarf//33330/7M6dO/0+Y5AaN27swe68efP8mIiIiEgsKJAVERFHEEvnaGb3InPmzH5sx44dfh/M+929e7fP/xURERGJFQWyIpKq7NmzxzZt2uTdciW6TjnlFC8l5vVHyZIlfa7vxIkT/T4WLFjggaxGJYmIiEgsqWuxiKQKBEijR4+2H3/80ctZO3ToYFdccYWtXbvWxo0b53szK1euHDxbImHp0qVWv359q1u3rg0ePNi2bdtmtWrV8uzrrbfe6kHtK6+8Yjly5PDxPMWKFQu+U0RERCS6FMiKSMyNHz/e7rzzTvvpp58sa9asnpV96qmnrGvXrp4dvOSSS6xChQo2dOhQy5QpU/BdktL++OMPe/fdd+23336zdu3aWcaMGe3DDz+0Ll262IoVK/w5+fLl8yCXvbKhubIiIiIi0aZAVkRiiuC1RYsWtmXLFnv22Wd9X2bLli3twQcftM6dO/tzOnXqZFOnTvVuuTQcksgi80pX4lBn4u+//947GjNXtlSpUr6ooCBWREREYkl7ZEUkpj777DNbtGiRPfbYY57lq1Spkh8PX2MrUaKEd85lb6ZEHs2ewsfrlCtXzpo0aWLNmjWzihUrKogVERGRmFMgKyIxtWrVKsuZM6edffbZfj+5YJVyYsqNKX0VEREREVEgKyIxlSFDBg9Qjxakrl+/3jO0PFdERERERIGsiMQUI1727dtns2bN8vs0e0JoliljeD7//HMvL2Y8jIiIiIiIAlkRiakLL7zQqlatavfff7+99957tnjxYj++fft2bzLUq1cvmzZtmrVv316BrIiIiIg4dS0WkZgj43r99dd7Z1y64i5ZssQztTQVoqtx69at7bnnnlMgKyIiIiJOgayIpApkX9944w2bPn26Z2MZAVO0aFG76qqrrFWrVpY7d+7gmSIiIiKS1imQFZGYYvTOwoULrVGjRt6dePXq1d65mPEvZGDz5s0bPFMijRLuxx9/3Pr163ewi3RS3377rd17773WtWtXq1OnTnBUREREJLq0R1ZEYmr06NG+D/bXX3/1UuJChQpZmTJl7Mwzz1QQG2Vr1qyxjz/+2DZv3hwcOdzWrVtt/PjxvuAgIiIiEisKZEUk5hi9ky5duuCexEr27Nn9liNHjuDI4fbv3+9jkDJnzhwcEREREYk+BbIiElN0LSYoomRVou/AgQP21Vdf2ezZs/09YG/y3Llz/X5yN/Yx8xxly0VERCSWtEdWRGLqt99+sy5duvg+2TvvvNMqVarkGcHwDC2nKcqOkx6Xf2/Xrl2ehf1v3HDDDda/f38FsyIiIhIzCmRFJKZGjBhhL7zwgs2YMcMD1sqVK9tpp51m6dOn9/sIBbJDhw61008/3Y9JyqBUeMCAAR7Q/vDDDzZp0iRr0qSJnXHGGcEz/sZ7cNJJJ1mxYsWscePG/h6JiIiIxIoCWRGJqSeffNIee+wxy5UrlwdLBFaUu4b766+/vIvx1KlTPZCSyJg3b5716dPHZ/bqdRYREZHUTIGsiMTUhg0bvFsuDYSOhNMUGdmSJUtaxowZg6OS0vbs2WNbtmyxfPnyHfX9EBEREYk1BbIiInKYVatW2cyZM2358uV+v0iRIlajRg0rXLiw3xcRERGJJQWyIpJq7N2713bv3m07duzw/Zg0d8qWLZvvl5XooCPxoEGDvOSb9yEc78cdd9xhXbt21XsiIiIiMaVAVkRijuDp008/tWeffdb3we7bt8+PU+Lapk0bu+WWW6x48eJ+TCKHvcnPP/+8d5HOkyeP1a9f38qVK+ePLVq0yBtBbdq0yZ5++mm77bbb1EFaREREYkaBrIjEFKegV1555WBgxD5YxsEQVG3cuNGWLFliVapUsTfffNNKly4dfJdEwuLFi61Ro0aWNWtWe/nll72DdDjmzHbo0MF27txpH330kd4PERERiZn/BF9FRGLi+++/9/EvjHthvA5jeD777DPfnzl+/Hi76667fCwMpa50NJbIWbZsmS1dutTn+SYNYlGxYkV/7Ndff7VffvklOCoiIiISfQpkRSSmCFppLPTII494GTF7YkPIznK8efPmNnbsWFu/fn3wiEQCXYuzZMniJd1Hkj9/fn8OzxURERGJFQWyIhJTBKd58+a1s846KzhyuPPOO89+++03bwQlkUMzJxpuHS3bymM8h+eKiIiIxIoCWRGJqUyZMnmASnB0JFu3bvWv6pQbWaVKlbIKFSp4qfeHH34YHP0H+2J5jOeceeaZwVERERGR6FMgKyIxRVfc33//3Rs+JZdxpVvue++950FWrly5gqMSCcyIZbzOhg0b7Nprr7WaNWvaNddcY23btrULL7zQv65bt86fw1xZERERkVhR12IRiSn2WtIJ9/3337caNWpYs2bNrGjRovbHH3/YF198YW+//bYHVnTRJaj6v//7v+A7JRIYhUTmtV+/ft7FGLzmfFSQhb3vvvusYcOGyo6LiIhITCmQFZGYo1Nujx49fIYsWVlG7xA8ESzlzp3bunbtat26dbOTTjop+A6JNPYk//zzz7Z8+XK/TwaWQDZz5sx+X0RERCSWFMiKSKpAefHEiRNt1qxZPj+WoJXM7BVXXGHly5cPniUiIiIiokBWRCRNYzZvKAOeVNJjoY8LvmbMmNHSpUvn90VERESiTYGsiEgaRkn3ypUr7T//OXbvPwJbnvfXX395qXeVKlWCR0RERESiS4GsiEQVzZ1o3EQmkKDoeE5BBE48l6ZQ6lycsugaTWfo5DKy4Dg3Sr15HygBx7vvvmstWrTwX4uIiIhEmwJZEYmqtWvXetMgAtpQaSoBErejIZiiiy5jeCTlLFy40BtsJVcmzLHQYsO8efNs0KBB9sMPP/hj48ePt8suu8x/LSIiIhJtCmRFJKoIZAsWLOjB0UUXXeS3HDlyWIYMGTyYZfxL0tMS9wlk27dvb6ecckpwVKJh8+bN9swzz/gYJJpwnX322T5Htk6dOnbyyScHzxIRERGJLgWyIhJVu3btsttvv90+/fRTH/GSN29ea9q0qTVv3tzOOOMMBUepxJo1a+zVV1+1Z5991nbs2GHFihWznj17WpMmTSx79uzBs0RERERiQ4GsiEQdmdfVq1fbyJEjbdy4cbZs2TLbtm2bXXDBBXbNNdfY+eef70Ht8TQgkpTF+8J78vDDD9uqVausZMmSdsMNN1jHjh2VDRcREZFUQ4GsiMQUQe2MGTNs1KhRNnv2bPv+++8tZ86cHtDWq1fPzj33XMudO3fwbImUdevW2ZQpU+yJJ56wb775xvcxN2vWzG6++WY7/fTTg2eJiIiIpA4KZEUk1WAP5vTp073s+J133rG9e/faG2+8YW3atAmeISlt+/bt/nrTSXrixIlWpEgRa9mypV133XUezIqIiIikRqrbE5FUg/2y7MXkKx1zydayp1Yip3fv3p79njp1qrVt29YD2n79+vn7QDdjbrwHoRv3d+7c6U25RERERGJFGVkRibmlS5famDFjPJhizMvWrVutYcOGPt7l0ksv9S7HEhmFChXyfbFZsmSxKlWq+D5YAtYjfTRwnAWG/v37W82aNYOjIiIiItGlQFZEYoKy4UmTJvne2Pnz53vDp8KFC1urVq08gKWsVc2FIo/xR999952PP6KL9B9//OGjjo6G9+7DDz/0xQYRERGRWFAgKyJRRbD0yCOPeGfc9evXe3avdu3a1q5dOzvnnHMsT548wTMlGhizs3///v+qQ/SBAwcsf/78nsUVERERiQUFsiISVXTHLVq0qAdPtWrVsquuuspH7WTKlMmDKfZeJt1/yWmKLCEBr+bMioiIiIgCWRGJKjKA/+ue18WLF6uTroiIiIgokBWR6NqxY4d3xd23b59nWY/nFET5Mdna++67z0477bTgqIiIiIikVQpkRURERERE5ISiObIiIiIiIiJyQlEgKyIiIiIiIicUlRaLiMQRTumMx2H/cbp06YKjJ47Qn5890f/NSKBo4c/Gn5F926GPz9BrnZpf7yP9uwj9fTjGYyIiIicKZWRFROLIl19+aWeddZbdfvvttnPnzuBo6kEAuH37dtu6dav/OqkJEyZ4Z+oHH3zQ/vjjj+Bo6nHbbbdZqVKlrHTp0la2bFkrV66cValSxerWrWudOnWyTz/91Pbu3Rs8+39HcMnrtG3bNg82/60pU6ZYhQoV7J577jn4ujLmqnfv3v73mDdvnh8TERE5USiQFRGJIwRRP//8s61atSpFAqCURnDWsmVLu/DCC32m8IlmxYoV9uuvv1rFihXt8ssvt0suucTOPvtsDzzHjRvnx/j7LVq0KPiO/w2vU6tWrezSSy+1X375JTiasvgzr1271pYsWZIiwbeIiEg0KZAVEYkjlONmyJDBMmbMmCpLRXPkyGF79uzxQC179uzB0X/Ur1/fg0AyhSeddFJwNPUI/Znuuusue+aZZ+z555+31157zaZPn26ffPKJtW7d2j766CNr166drVy50p/7v8iZM6e/TmTVs2XLFhz939WuXdu+/vprH30V/rryb4X7qbGMW0RE5GjS9U0U/FpERE5wy5cvt+HDh3t5bqNGjSxTpkw2e/ZsLznOlSvXYUERQePUqVM9mMmTJ48f27hxo5f4EmwWKlTIvvnmG5s8ebJ/pdS1QIEClj59en9uUmvWrLGZM2f6beHChZ7xI1giMFu9erW9/fbbXuZKgEaw/cMPP3iARXaQ35fn8+eh7JWZwUmDcf4Mn332mc2ZM8f/ruztzJ07d/DoPz788EP//1NmTRaVIHPu3Ln+5+N1yJIlS/DM/867775rP/30k3Xs2NFfm3C8fg0bNvTHeb0onW7QoEHw6D/IgM6YMcO++OILW7x4sZf65s+fP3jU/DV+5ZVX/HXatWuXB5lk2XmdwOuELVu2+OvB78Pfjd+LzOrpp59+2Ou2fv16mzZtms9vzpcvnz/On2/8+PH27bffeuBdpEiR4NkiIiIngMSLBxERiROJQWBCYuCY0LRp04TEYNGPXX311QmJgWrCxx9/7PfDPfDAA3QsSnj88ceDIwkJiQFPwsknn5xQv379hD59+iQkBoMJicGiPy9z5swJ3bt3T9i8eXPw7L8dOHAgYeTIkQkXXnhhQmJwmZAYKCYkBs3+Z6lbt27C1q1bExID0ISCBQsmJAZmfuPxHDlyJGTPnj3hoYce8t8nMVD0/8/NN9+c8Pvvv/sxJAbVCf37909IDLYOfm9iMJZQoUKFhJdeesn//+H4//D78Gc6//zzExKDYn8+xxKDzYSlS5cGz/zv8L38HrNmzQqOHG7evHn+ehcvXtz/3CH8fYYMGZJQrly5hPTp0/trxJ8pMTD1v9uOHTv8eYkBqR/jMf6uvBc5c+b0rwMGDPDn8Po3atTI35fQY/y5uN+zZ8+ExGDYnxcyZswYf1/atm178HXla2JA7n/WxMDaj4mIiJwoVEskIhLnEoMcO+WUU5It1U0MTL3El8xtCNnWU0891bN9ZOw6d+5so0aNsg8++MAbGyUGvV4+G44M6A033ODZz0GDBvl+UZ4/ePBgq1atmu3evdv3kr766queJeX3f/PNN23ixIl+Swyw/Pche8ufNzxjmhhw2Ysvvmj33nuvnXHGGfb+++9bYlDuJb08xp/vrbfeCp79N7KjZB0TAz/fx0qWmizzNddcY2PHjrWHH37Y9u/fHzw7ZZUvX94KFy7smdXwvbJDhw61W2+99eDfnb/D6NGj7ZxzzvG/G1lYsrNkRl9//fWDv8+wYcP8zx7+Ov3222+eeaUpFllifi9e73r16tmjjz5qTzzxhD8vhPeefwNZs2YNjoiIiJzggoBWRETiQHIZ2Xbt2iXkzZs3YfLkyX4/XGLQ4xnR5557LjiSkPD5558fzHwmzeImBrb+/ObNmx/8/Tds2JCQGHT5/yMxgPVjSYWygIkBWEKtWrUSEgPShC1btvixcImBnWcXu3XrdvB7yFCSaSxZsmTC/Pnz/VjIJ5984pnIGjVqJKxfvz44mpBQsWJFP54YIAZH/sb/s2zZsgmJAZ3/uf9bx5ORTQxGPTNN1njUqFF+7IcffkgoUaJEQmLQmrB8+XI/FkK2unr16p6FXbJkiR/bt29fwkUXXeTZ2xUrVvixcPw//vzzz+DeP3bt2uXvBa9V+OvL+5IY3B+S6earMrIiInKiUkZWREQOQ8fjc889184///zgyN8SgzHPEtK5l/2boKsu+1ETAy/v2pucUDaYBkb83uzP5NdHQ0YV7DllPyjZRrK64RIDQKtTp479+OOP9t133wVHzTOb7MFl72c49scWLVrU/9+MAIqU0KzWxM9Z/8qeYV6nxo0b+95f/v9kqbmRJSVrzf5gMtpgr+vRXiey5vw/GJvz1FNPWa9evaxHjx7Wv39//16+h/dIREQkXimQFRFJw0LBYlIEYJS4hgKyEIJDyn4pyw0FaYz6QUo3C/pP0EmXAA8FCxb0r+EoRaZUmTJemlSF8Gfjz0r5bVKULvP3pjw3UjZv3uyvHV2aQbMl0OmYRlxlypTx+a3cWByg5Bo0wToeBOE0nKLLM6XElCpTYkyJ9YYNG/zvf7y/l4iIyIlIgayISJwLBZzJIet3JKFA8liSZh9TWujPkdzvzzGylgSmyQXlx/t3SEkEknRUJuAvXbq0H+PPCDLILVq0sKZNmx5yY38xGVWC2mPh92LPMHuEyeS+9957Nn/+fO8AzY09wbyvkXo/REREUgMFsiIicY5GTpTaJleiunTpUs+uJhfwHSsQCj1OqTH4vUIB27EcKfAMF/q9QplYym6T/plo9rRgwQIfwRM+wiYkFsEcASZl15RBh/7s/Nn4+1J+TQb1ySefPOTGMW40eELoz53c60TpMM20GP9D06oaNWr4SB1GK3EjiD7aAoWIiEg8UCArIhKnQsEQWUFKb5k3Go65o3TDPVIgeyyh358sYtWqVW369OmeHUyKmbAEnCBLyf5OZtTSMfloQr8/pbiUCNO1N+nfgVmrs2bN8gCwQoUKwdHIC++qHELwOGLECO/qzNzc7t27B4+YB7AlS5a0l19+2ee2JodyYea8giw3rw/lz0mD8VBwy/tGUBuOOb10m0bSAFhERCSeKJAVEYlToQCoQYMGljdvXh/jMnDgQB9fw4ic9u3bewDLntGkmVS+N2kAFZL0MRoo0WSIhk6333673X///R7Qjhw50h566CE/FtpHS3DGCJ0dO3Z4wMfIGALUJUuW+ONI+vuz97ZPnz62cuVKu+2222zIkCE+7ofv5/dmrAwjeMjKhiT9PcId7bHjNXnyZB95wxgi/p5kVRnt07JlS2/e9PTTT1utWrWCZ5uVKlXKevfubcuWLbM2bdr46/LOO+/434My4U6dOlm3bt1s3bp1/nwCZTK6PJ99tYwMYhQSDaPIsNM0in23lCMztocxPn379vXXiews+4OT/h2T+3unxGshIiISE4kfYCIiEiemTJniY3MSA6qD43HAGJgKFSoQsSQkBkIJhQsX9tE0PXv29HE9Tz31VPDMhITp06cn5MiRw0fNhP8eSAysfCRM8eLFDxsLM2nSpIQrrrjCfz9ujNFhBM3VV1+dkBigBc9KSJg3b17CJZdc4n+W0PP69evnjyUGhX48MbA7OCYGe/fuTRg6dKj/v9OlS+d/B77WrFkzYcyYMcGz/sHfj9eBcT9JhUbofPXVV8GR49egQQP/3vTp0yckBps+xodxRLxeZcqUSUgMLBO++OKL4NmH+uuvvxISA/eEevXq+Z+fsTd8b65cuXw0T2IQmrB9+/bg2X+PHeL/x/8rMTD1/19iAOy/z7Zt2/y9Swzi/c+TM2fOhLPOOith0KBBCU2aNPHfl9FEIfx/+X+2b9/+kPE7iUG1f/+0adP8mIiIyIni//hP4oeYiIjEATJ3jRo18gwlY1lCjZhANo99ppT5krWrXLmyZwApMaY8mD2XoOyXUTZkOumqG/57UPrKY2RwK1Wq5NnBcHTr5f9DKTPfx+9BBvbUU08NnvG3NWvW+PPYS8rHEBlLSojpPPz999/73lJKcZOWx5Kh5O9ASS37QRMD6mQ7E8+ePdtLb8mKJi2bZlQQ2UwaJfF7/DcoC+bPyJ5jXgP+fHROTgwcfawOf9dj2bRpk+8n5nUGfwbeD/Yah8YUhfDnJFtNBhu8TqHXhVJm/i6hbs1krnkNGVfE91FuTbYcvC+LFi3yzDyl5nw/rztji/g3cM4553g5tIiIyIlCgayISBxgHyrBTs+ePb3U9KWXXvLxLCIiIiLxSIGsiMgJjowce0Vp8kO2sm7dujZ48OCDGVY5MrLTx5onS+aVzPOxmlOJiIhI9CiQFRE5wa1evdpatWrlAVedOnV8JqmC2ONDsyUaYFF+fKQuvwS6zZo1s7vuuis4IiIiIrGmQFZERNIsOg8///zzwb0ju+SSS6xLly7BPREREYk1BbIiIiIiIiJyQtEcWRERERERETmhKJAVERERERGRE4jZ/wNG9oTJKfLuCgAAAABJRU5ErkJggg==", + "text/plain": [ + "<IPython.core.display.Image object>" + ] + }, + "execution_count": 92, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dangeorusroadtype = A2018.groupby('Road_Type','first_road_class').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "dangeorusroadtype_df=dangeorusroadtype.toPandas()\n", + "\n", + "dangeorusroadtype_df=dangeorusroadtype_df.rename(columns={\"first_road_class\": \"road_name\"})\n", + "\n", + "result30=pd.merge(dangeorusroadtype_df, road_length_traffic, on=['road_name'])\n", + "\n", + "result30[\"Accident Probability\"] = result30[\"Total accidents\"] / result30[\"Trafficvolume\"]\n", + "result30=result30.drop(['Total accidents', 'Trafficvolume'], axis=1)\n", + "result30=result30.drop(['road_name'], axis=1)\n", + "result30_df = result30.groupby('Road_Type', sort=False)[\"Accident Probability\"].sum().reset_index(name ='Accident Probability')\n", + "result30_df=result30_df.drop(labels=[6],axis=0)\n", + "result30_df=result30_df.sort_values('Road_Type')\n", + "ax=result30_df.plot.bar('Road_Type','Accident Probability', rot=90,title=\"Accidents probabilty over road type \",figsize=(20, 10),color=\"Orange\")" + ] + }, + { + "cell_type": "code", + "execution_count": 197, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location| timestamp|month|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|2005-01-04 00:00:00| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-04 00:00:00| 1|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|2005-01-05 00:00:00| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|2005-01-05 00:00:00| 1|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|2005-01-06 00:00:00| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|2005-01-06 00:00:00| 1|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|2005-01-07 00:00:00| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-07 00:00:00| 1|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|2005-01-10 00:00:00| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|2005-01-10 00:00:00| 1|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|2005-01-11 00:00:00| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|2005-01-11 00:00:00| 1|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|2005-01-13 00:00:00| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-13 00:00:00| 1|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|2005-01-14 00:00:00| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-01-14 00:00:00| 1|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|2005-01-15 00:00:00| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|2005-01-15 00:00:00| 1|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|2005-01-15 00:00:00| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-15 00:00:00| 1|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|2005-01-16 00:00:00| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|2005-01-16 00:00:00| 1|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|2005-01-25 00:00:00| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|2005-01-25 00:00:00| 1|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|2005-01-11 00:00:00| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-11 00:00:00| 1|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|2005-01-18 00:00:00| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|2005-01-18 00:00:00| 1|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|2005-01-18 00:00:00| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-18 00:00:00| 1|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|2005-01-18 00:00:00| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-18 00:00:00| 1|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|2005-01-20 00:00:00| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|2005-01-20 00:00:00| 1|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|2005-01-21 00:00:00| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-21 00:00:00| 1|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|2005-01-21 00:00:00| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|2005-01-21 00:00:00| 1|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|2005-01-08 00:00:00| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-08 00:00:00| 1|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "from pyspark.sql.functions import *\n", + "\n", + "#Accident_Information_df\n", + "TimeAccident_dfmonth = A2018_df2.withColumn('month',month(A2018_df2.timestamp))\n", + "TimeAccident_dfmonth.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 193, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark.sql import functions as F\n", + "A2018_df2=A20188.withColumn(\"date\", to_date(\"date\", \"dd/MM/yyyy\"))\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 198, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location| timestamp|month|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|2005-01-04 00:00:00| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-04 00:00:00| 1|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|2005-01-05 00:00:00| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|2005-01-05 00:00:00| 1|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|2005-01-06 00:00:00| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|2005-01-06 00:00:00| 1|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|2005-01-07 00:00:00| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-07 00:00:00| 1|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|2005-01-10 00:00:00| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|2005-01-10 00:00:00| 1|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|2005-01-11 00:00:00| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|2005-01-11 00:00:00| 1|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|2005-01-13 00:00:00| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-13 00:00:00| 1|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|2005-01-14 00:00:00| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-01-14 00:00:00| 1|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|2005-01-15 00:00:00| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|2005-01-15 00:00:00| 1|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|2005-01-15 00:00:00| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-15 00:00:00| 1|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|2005-01-16 00:00:00| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|2005-01-16 00:00:00| 1|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|2005-01-25 00:00:00| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|2005-01-25 00:00:00| 1|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|2005-01-11 00:00:00| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-11 00:00:00| 1|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|2005-01-18 00:00:00| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|2005-01-18 00:00:00| 1|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|2005-01-18 00:00:00| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-18 00:00:00| 1|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|2005-01-18 00:00:00| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-18 00:00:00| 1|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|2005-01-20 00:00:00| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|2005-01-20 00:00:00| 1|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|2005-01-21 00:00:00| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-21 00:00:00| 1|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|2005-01-21 00:00:00| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|2005-01-21 00:00:00| 1|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|2005-01-08 00:00:00| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-08 00:00:00| 1|\n", + "| 200501BS00023| 2005| 01BS00023| 525940| 178680| -0.18727|51.492992| 1| 3| 1| 1|2005-01-24 00:00:00| 2|21:45| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 2| 2| E01002839|2005-01-24 00:00:00| 1|\n", + "| 200501BS00024| 2005| 01BS00024| 524700| 180880|-0.204346|51.513039| 1| 3| 2| 1|2005-01-24 00:00:00| 2|17:05| 12| E09000020| E09000020| 4| 415| 6| 30| 3| 4| 5| 0| 0| 0| 4| 1| 1| 0| 0| 1| 2| 2| E01002882|2005-01-24 00:00:00| 1|\n", + "| 200501BS00025| 2005| 01BS00025| 526930| 177490|-0.173445|51.482076| 1| 3| 2| 1|2005-01-24 00:00:00| 2|21:30| 12| E09000020| E09000020| 3| 3220| 3| 30| 6| 2| 3| 3220| 0| 0| 4| 1| 4| 0| 0| 1| 1| 2| E01002840|2005-01-24 00:00:00| 1|\n", + "| 200501BS00028| 2005| 01BS00028| 527290| 178710|-0.167824| 51.49296| 1| 3| 2| 1|2005-01-18 00:00:00| 3|17:25| 12| E09000020| E09000020| 5| 0| 6| 30| 6| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 2| 2| E01002858|2005-01-18 00:00:00| 1|\n", + "| 200501BS00029| 2005| 01BS00029| 527380| 179280|-0.166322|51.498062| 1| 3| 2| 1|2005-01-29 00:00:00| 7|07:34| 12| E09000020| E09000020| 3| 4| 3| 30| 3| 2| 4| 319| 0| 5| 1| 1| 2| 0| 0| 1| 1| 2| E01002819|2005-01-29 00:00:00| 1|\n", + "| 200501BS00031| 2005| 01BS00031| 523930| 180330|-0.215629|51.508265| 1| 3| 1| 1|2005-01-19 00:00:00| 4|16:35| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 1| 4| 2| 2| 0| 0| 1| 1| 2| E01001944|2005-01-19 00:00:00| 1|\n", + "| 200501BS00032| 2005| 01BS00032| 524470| 180980|-0.207623|51.513988| 1| 3| 2| 1|2005-01-30 00:00:00| 1|20:00| 12| E09000020| E09000020| 4| 450| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002874|2005-01-30 00:00:00| 1|\n", + "| 200501BS00033| 2005| 01BS00033| 525570| 178190|-0.192771|51.488671| 1| 3| 2| 2|2005-01-29 00:00:00| 7|13:15| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 3218| 0| 5| 1| 2| 2| 0| 0| 1| 2| 2| E01002849|2005-01-29 00:00:00| 1|\n", + "| 200501BS70001| 2005| 01BS70001| 526240| 178900|-0.182872|51.494902| 1| 3| 2| 1|2005-02-01 00:00:00| 3|18:20| 12| E09000020| E09000020| 3| 4| 3| 30| 6| 2| 5| 0| 0| 5| 4| 2| 2| 0| 0| 1| 1| 2| E01002835|2005-02-01 00:00:00| 2|\n", + "| 200501BS70002| 2005| 01BS70002| 527780| 179160|-0.160606|51.496893| 1| 3| 2| 1|2005-02-02 00:00:00| 4|07:25| 12| E09000020| E09000020| 4| 319| 6| 30| 3| 4| 6| 0| 0| 1| 4| 1| 1| 0| 0| 1| 1| 2| E01002863|2005-02-02 00:00:00| 2|\n", + "| 200501BS70003| 2005| 01BS70003| 523910| 181390|-0.215545|51.517796| 1| 2| 2| 2|2005-02-01 00:00:00| 3|17:30| 12| E09000020| E09000020| 4| 412| 2| 30| 2| 4| 6| 0| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002878|2005-02-01 00:00:00| 2|\n", + "| 200501BS70004| 2005| 01BS70004| 524870| 181880|-0.201543|51.521988| 1| 3| 2| 1|2005-02-03 00:00:00| 5|12:30| 1| E09000033| E09000033| 3| 4207| 6| 30| 3| 4| 5| 0| 0| 1| 1| 9| 1| 0| 0| 1| 2| 2| E01002854|2005-02-03 00:00:00| 2|\n", + "| 200501BS70005| 2005| 01BS70005| 527250| 179170|-0.168234|51.497103| 1| 3| 2| 1|2005-02-12 00:00:00| 7|09:55| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 4| 1| 1| 2| 0| 0| 1| 1| 2| E01002819|2005-02-12 00:00:00| 2|\n", + "| 200501BS70006| 2005| 01BS70006| 524170| 181640|-0.211712|51.519986| 1| 3| 2| 2|2005-02-03 00:00:00| 5|13:00| 12| E09000020| E09000020| 4| 450| 6| 30| 6| 4| 5| 0| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002909|2005-02-03 00:00:00| 2|\n", + "| 200501BS70007| 2005| 01BS70007| 523740| 182030|-0.217769|51.523585| 1| 3| 4| 1|2005-02-01 00:00:00| 3|13:02| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002906|2005-02-01 00:00:00| 2|\n", + "| 200501BS70008| 2005| 01BS70008| 523770| 181070|-0.217674|51.514951| 1| 3| 2| 2|2005-02-03 00:00:00| 5|22:55| 12| E09000020| E09000020| 6| 0| 6| 30| 6| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002880|2005-02-03 00:00:00| 2|\n", + "| 200501BS70009| 2005| 01BS70009| 525840| 177020|-0.189301|51.478096| 1| 3| 2| 1|2005-02-03 00:00:00| 5|17:30| 11| E09000013| E09000013| 3| 308| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01001921|2005-02-03 00:00:00| 2|\n", + "| 200501BS70010| 2005| 01BS70010| 526940| 177460|-0.173312|51.481804| 1| 3| 2| 1|2005-02-06 00:00:00| 1|15:00| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-02-06 00:00:00| 2|\n", + "| 200501BS70011| 2005| 01BS70011| 525040| 178620|-0.200249|51.492652| 1| 3| 2| 1|2005-02-05 00:00:00| 7|21:25| 12| E09000020| E09000020| 3| 4| 3| 30| 6| 2| 3| 3220| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002848|2005-02-05 00:00:00| 2|\n", + "| 200501BS70012| 2005| 01BS70012| 525460| 179520|-0.193882|51.500648| 1| 3| 2| 1|2005-02-03 00:00:00| 5|12:41| 12| E09000020| E09000020| 3| 315| 6| 30| 0| -1| -1| -1| 0| 4| 1| 1| 1| 0| 0| 1| 1| 2| E01002816|2005-02-03 00:00:00| 2|\n", + "| 200501BS70013| 2005| 01BS70013| 525410| 180490|-0.194258|51.509377| 1| 3| 1| 1|2005-02-04 00:00:00| 6|23:35| 12| E09000020| E09000020| 3| 402| 6| 30| 6| 2| 3| 4204| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002827|2005-02-04 00:00:00| 2|\n", + "| 200501BS70014| 2005| 01BS70014| 527570| 177720| -0.16415|51.483999| 1| 3| 2| 1|2005-02-07 00:00:00| 2|09:15| 12| E09000020| E09000020| 4| 302| 6| 30| 3| 4| 6| 0| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002900|2005-02-07 00:00:00| 2|\n", + "| 200501BS70016| 2005| 01BS70016| 525200| 180460|-0.197293|51.509154| 1| 3| 1| 1|2005-02-12 00:00:00| 7|13:25| 12| E09000020| E09000020| 3| 4206| 6| 30| 0| -1| -1| -1| 0| 5| 1| 1| 1| 0| 0| 1| 1| 2| E01002884|2005-02-12 00:00:00| 2|\n", + "| 200501BS70017| 2005| 01BS70017| 526710| 178230|-0.176346|51.488776| 1| 3| 2| 1|2005-02-08 00:00:00| 3|20:00| 12| E09000020| E09000020| 3| 308| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002910|2005-02-08 00:00:00| 2|\n", + "| 200501BS70018| 2005| 01BS70018| 525860| 179700|-0.188058|51.502177| 1| 3| 2| 1|2005-02-16 00:00:00| 4|08:20| 12| E09000020| E09000020| 3| 315| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-02-16 00:00:00| 2|\n", + "| 200501BS70019| 2005| 01BS70019| 526360| 177790|-0.181542| 51.4849| 1| 3| 2| 1|2005-02-07 00:00:00| 2|11:30| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002912|2005-02-07 00:00:00| 2|\n", + "| 200501BS70020| 2005| 01BS70020| 527020| 179020|-0.171599|51.495806| 1| 3| 2| 1|2005-02-10 00:00:00| 5|18:10| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 3| 3218| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002821|2005-02-10 00:00:00| 2|\n", + "| 200501BS70021| 2005| 01BS70021| 526290| 177800|-0.182546|51.485005| 1| 3| 1| 1|2005-02-12 00:00:00| 7|11:33| 12| E09000020| E09000020| 3| 308| 6| 30| 0| -1| -1| -1| 0| 4| 1| 1| 2| 4| 2| 1| 1| 2| E01002912|2005-02-12 00:00:00| 2|\n", + "| 200501BS70023| 2005| 01BS70023| 526020| 177850|-0.186415|51.485515| 1| 3| 2| 2|2005-02-13 00:00:00| 1|20:05| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002896|2005-02-13 00:00:00| 2|\n", + "| 200501BS70025| 2005| 01BS70025| 527270| 178660| -0.16813|51.492515| 1| 3| 2| 1|2005-02-01 00:00:00| 3|16:44| 12| E09000020| E09000020| 6| 0| 6| 30| 6| 4| 6| 0| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002862|2005-02-01 00:00:00| 2|\n", + "| 200501BS70027| 2005| 01BS70027| 525190| 180500|-0.197423|51.509515| 1| 3| 2| 1|2005-02-17 00:00:00| 5|18:00| 12| E09000020| E09000020| 3| 4206| 6| 30| 9| 4| 4| 415| 0| 1| 4| 2| 2| 0| 0| 1| 2| 2| E01002884|2005-02-17 00:00:00| 2|\n", + "| 200501BS70028| 2005| 01BS70028| 527960| 178790|-0.158149|51.493527| 1| 3| 1| 1|2005-02-04 00:00:00| 6|10:15| 12| E09000020| E09000020| 3| 3216| 6| 30| 0| -1| -1| -1| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002859|2005-02-04 00:00:00| 2|\n", + "| 200501BS70029| 2005| 01BS70029| 524100| 181830|-0.212653|51.521709| 1| 2| 1| 1|2005-02-15 00:00:00| 3|18:15| 12| E09000020| E09000020| 4| 450| 6| 30| 0| -1| -1| -1| 0| 1| 4| 1| 1| 0| 0| 1| 1| 2| E01002905|2005-02-15 00:00:00| 2|\n", + "| 200501BS70030| 2005| 01BS70030| 526360| 177420|-0.181674|51.481575| 1| 3| 2| 1|2005-02-16 00:00:00| 4|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 3217| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002913|2005-02-16 00:00:00| 2|\n", + "| 200501BS70031| 2005| 01BS70031| 524600| 181280|-0.205645|51.516656| 1| 3| 1| 1|2005-02-18 00:00:00| 6|17:36| 12| E09000020| E09000020| 4| 412| 6| 30| 6| 2| 6| 0| 0| 5| 4| 2| 2| 0| 0| 1| 1| 2| E01002831|2005-02-18 00:00:00| 2|\n", + "| 200501BS70032| 2005| 01BS70032| 525710| 179670|-0.190229|51.501941| 1| 3| 1| 1|2005-02-15 00:00:00| 3|16:05| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 3| 315| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-02-15 00:00:00| 2|\n", + "| 200501BS70033| 2005| 01BS70033| 526450| 179240|-0.179727|51.497911| 1| 3| 1| 1|2005-02-10 00:00:00| 5|13:56| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 5| 0| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002892|2005-02-10 00:00:00| 2|\n", + "| 200501BS70034| 2005| 01BS70034| 524220| 181510|-0.211037|51.518806| 1| 3| 2| 1|2005-02-16 00:00:00| 4|14:10| 12| E09000020| E09000020| 4| 450| 6| 30| 6| 4| 6| 0| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002878|2005-02-16 00:00:00| 2|\n", + "| 200501BS70036| 2005| 01BS70036| 525430| 179140|-0.194449| 51.49724| 1| 3| 2| 1|2005-02-21 00:00:00| 2|10:10| 12| E09000020| E09000020| 6| 0| 1| 30| 2| 4| 6| 0| 0| 0| 1| 1| 1| 0| 0| 1| 2| 2| E01002813|2005-02-21 00:00:00| 2|\n", + "| 200501BS70037| 2005| 01BS70037| 524430| 180180|-0.208481|51.506807| 1| 3| 1| 1|2005-02-20 00:00:00| 1|14:50| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 1| 2| 2| 0| 0| 1| 1| 2| E01002871|2005-02-20 00:00:00| 2|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-----+\n", + "only showing top 60 rows\n", + "\n" + ] + } + ], + "source": [ + "TimeAccident_dfmonth.show(60)" + ] + }, + { + "cell_type": "code", + "execution_count": 199, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "TimeAccident_dfmonthly_new=TimeAccident_dfmonth.withColumn(\n", + " \"month\",\n", + " when(\n", + " col(\"month\") == 1,\n", + " \"January\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 2,\n", + " \"Februray\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 3,\n", + " \"March\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 4,\n", + " \"April\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 5,\n", + " \"May\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 6,\n", + " \"June\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 7,\n", + " \"July\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 8,\n", + " \"August\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 9,\n", + " \"September\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 10,\n", + " \"October\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 11,\n", + " \"November\"\n", + " ).\n", + " when(\n", + " col(\"month\") == 12,\n", + " \"December\"\n", + " ).otherwise(col(\"month\")),\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 200, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-------+\n", + "|accident_index|accident_year|accident_reference|location_easting_osgr|location_northing_osgr|longitude| latitude|police_force|accident_severity|number_of_vehicles|number_of_casualties| date|day_of_week| time|local_authority_district|local_authority_ons_district|local_authority_highway|first_road_class|first_road_number|road_type|speed_limit|junction_detail|junction_control|second_road_class|second_road_number|pedestrian_crossing_human_control|pedestrian_crossing_physical_facilities|light_conditions|weather_conditions|road_surface_conditions|special_conditions_at_site|carriageway_hazards|urban_or_rural_area|did_police_officer_attend_scene_of_accident|trunk_road_flag|lsoa_of_accident_location| timestamp| month|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-------+\n", + "| 200501BS00001| 2005| 01BS00001| 525680| 178240| -0.19117|51.489096| 1| 2| 1| 1|2005-01-04 00:00:00| 3|17:42| 12| E09000020| E09000020| 3| 3218| 6| 30| 0| -1| -1| -1| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-04 00:00:00|January|\n", + "| 200501BS00002| 2005| 01BS00002| 524170| 181650|-0.211708|51.520075| 1| 3| 1| 1|2005-01-05 00:00:00| 4|17:36| 12| E09000020| E09000020| 4| 450| 3| 30| 6| 2| 5| 0| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002909|2005-01-05 00:00:00|January|\n", + "| 200501BS00003| 2005| 01BS00003| 524520| 182240|-0.206458|51.525301| 1| 3| 2| 1|2005-01-06 00:00:00| 5|00:15| 12| E09000020| E09000020| 5| 0| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002857|2005-01-06 00:00:00|January|\n", + "| 200501BS00004| 2005| 01BS00004| 526900| 177530|-0.173862|51.482442| 1| 3| 1| 1|2005-01-07 00:00:00| 6|10:35| 12| E09000020| E09000020| 3| 3220| 6| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-07 00:00:00|January|\n", + "| 200501BS00005| 2005| 01BS00005| 528060| 179040|-0.156618|51.495752| 1| 3| 1| 1|2005-01-10 00:00:00| 2|21:13| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 7| 1| 2| 0| 0| 1| 1| 2| E01002863|2005-01-10 00:00:00|January|\n", + "| 200501BS00006| 2005| 01BS00006| 524770| 181160|-0.203238| 51.51554| 1| 3| 2| 1|2005-01-11 00:00:00| 3|12:40| 12| E09000020| E09000020| 6| 0| 6| 30| 0| -1| -1| -1| 0| 0| 1| 2| 2| 6| 0| 1| 1| 2| E01002832|2005-01-11 00:00:00|January|\n", + "| 200501BS00007| 2005| 01BS00007| 524220| 180830|-0.211277|51.512695| 1| 3| 2| 1|2005-01-13 00:00:00| 5|20:40| 12| E09000020| E09000020| 5| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-13 00:00:00|January|\n", + "| 200501BS00009| 2005| 01BS00009| 525890| 179710|-0.187623| 51.50226| 1| 3| 1| 2|2005-01-14 00:00:00| 6|17:35| 12| E09000020| E09000020| 3| 315| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002889|2005-01-14 00:00:00|January|\n", + "| 200501BS00010| 2005| 01BS00010| 527350| 177650|-0.167342| 51.48342| 1| 3| 2| 2|2005-01-15 00:00:00| 7|22:43| 12| E09000020| E09000020| 3| 3212| 6| 30| 6| 2| 4| 304| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002900|2005-01-15 00:00:00|January|\n", + "| 200501BS00011| 2005| 01BS00011| 524550| 180810|-0.206531|51.512443| 1| 3| 2| 5|2005-01-15 00:00:00| 7|16:00| 12| E09000020| E09000020| 4| 450| 6| 30| 3| 4| 5| 0| 0| 8| 1| 1| 1| 0| 0| 1| 1| 2| E01002875|2005-01-15 00:00:00|January|\n", + "| 200501BS00012| 2005| 01BS00012| 526240| 178900|-0.182872|51.494902| 1| 3| 1| 1|2005-01-16 00:00:00| 1|00:42| 12| E09000020| E09000020| 3| 4| 6| 30| 6| 2| 4| 325| 0| 5| 4| 1| 1| 0| 0| 1| 1| 2| E01002835|2005-01-16 00:00:00|January|\n", + "| 200501BS00014| 2005| 01BS00014| 526170| 177690|-0.184312|51.484044| 1| 3| 2| 1|2005-01-25 00:00:00| 3|20:48| 12| E09000020| E09000020| 3| 3220| 6| 30| 6| 2| 3| 308| 0| 5| 4| 1| 2| 0| 0| 1| 1| 2| E01002912|2005-01-25 00:00:00|January|\n", + "| 200501BS00015| 2005| 01BS00015| 525590| 178520|-0.192366|51.491632| 1| 3| 1| 1|2005-01-11 00:00:00| 3|12:55| 12| E09000020| E09000020| 6| 0| 2| 30| 3| 4| 3| 3220| 0| 1| 1| 2| 2| 0| 0| 1| 1| 2| E01002849|2005-01-11 00:00:00|January|\n", + "| 200501BS00016| 2005| 01BS00016| 527990| 178690|-0.157753|51.492622| 1| 3| 2| 1|2005-01-18 00:00:00| 3|05:01| 12| E09000020| E09000020| 3| 3217| 2| 30| 3| 4| 3| 3216| 0| 0| 4| 2| 2| 0| 0| 1| 1| 2| E01002902|2005-01-18 00:00:00|January|\n", + "| 200501BS00017| 2005| 01BS00017| 526700| 178970|-0.176224|51.495429| 1| 3| 1| 2|2005-01-18 00:00:00| 3|11:15| 12| E09000020| E09000020| 3| 4| 3| 30| 0| -1| -1| -1| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-18 00:00:00|January|\n", + "| 200501BS00018| 2005| 01BS00018| 526460| 177460| -0.18022|51.481912| 1| 3| 1| 1|2005-01-18 00:00:00| 3|10:50| 12| E09000020| E09000020| 3| 3217| 6| 30| 3| 4| 6| 0| 0| 1| 1| 1| 1| 0| 0| 1| 1| 2| E01002840|2005-01-18 00:00:00|January|\n", + "| 200501BS00019| 2005| 01BS00019| 524680| 179450|-0.205139|51.500191| 1| 2| 2| 1|2005-01-20 00:00:00| 5|00:15| 12| E09000020| E09000020| 6| 0| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002864|2005-01-20 00:00:00|January|\n", + "| 200501BS00020| 2005| 01BS00020| 527000| 179020|-0.171887|51.495811| 1| 3| 2| 1|2005-01-21 00:00:00| 6|09:15| 12| E09000020| E09000020| 3| 3218| 6| 30| 3| 4| 3| 4| 0| 0| 1| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-21 00:00:00|January|\n", + "| 200501BS00021| 2005| 01BS00021| 527810| 178010| -0.16059|51.486552| 1| 3| 2| 1|2005-01-21 00:00:00| 6|21:16| 12| E09000020| E09000020| 4| 302| 6| 30| 0| -1| -1| -1| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002901|2005-01-21 00:00:00|January|\n", + "| 200501BS00022| 2005| 01BS00022| 526790| 178980|-0.174925|51.495498| 1| 2| 1| 1|2005-01-08 00:00:00| 7|03:00| 12| E09000020| E09000020| 3| 4| 6| 30| 3| 4| 6| 0| 0| 0| 4| 1| 1| 0| 0| 1| 1| 2| E01002821|2005-01-08 00:00:00|January|\n", + "+--------------+-------------+------------------+---------------------+----------------------+---------+---------+------------+-----------------+------------------+--------------------+-------------------+-----------+-----+------------------------+----------------------------+-----------------------+----------------+-----------------+---------+-----------+---------------+----------------+-----------------+------------------+---------------------------------+---------------------------------------+----------------+------------------+-----------------------+--------------------------+-------------------+-------------------+-------------------------------------------+---------------+-------------------------+-------------------+-------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "TimeAccident_dfmonthly_new.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 207, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+---------------+\n", + "| month|Total accidents|\n", + "+---------+---------------+\n", + "| July| 201161|\n", + "| November| 209588|\n", + "| January| 184490|\n", + "| March| 182482|\n", + "| October| 205207|\n", + "| May| 193802|\n", + "| August| 186789|\n", + "| April| 175254|\n", + "| June| 194286|\n", + "| December| 187478|\n", + "| Februray| 170157|\n", + "|September| 196733|\n", + "+---------+---------------+\n", + "\n" + ] + } + ], + "source": [ + "TimeAccident_dfmonthly_new_df = TimeAccident_dfmonthly_new.groupby('month').agg(F.count(TimeAccident_dfmonthly_new.accident_index).alias('Total accidents'))\n", + "#TimeAccident_dfmonthly_new_df=TimeAccident_dfmonthly_new_df.sort(\"month\")\n", + "TimeAccident_dfmonthly_new_df.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 281, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>month</th>\n", + " <th>Traffic volume</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>January</td>\n", + " <td>89.566667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Februray</td>\n", + " <td>94.466667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>March</td>\n", + " <td>98.266667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>April</td>\n", + " <td>100.566667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>May</td>\n", + " <td>101.933333</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>June</td>\n", + " <td>103.966667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>July</td>\n", + " <td>104.766667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>August</td>\n", + " <td>104.900000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>September</td>\n", + " <td>104.366667</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>October</td>\n", + " <td>103.200000</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>November</td>\n", + " <td>100.133333</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>December</td>\n", + " <td>93.533333</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " month Traffic volume\n", + "0 January 89.566667\n", + "1 Februray 94.466667\n", + "2 March 98.266667\n", + "3 April 100.566667\n", + "4 May 101.933333\n", + "5 June 103.966667\n", + "6 July 104.766667\n", + "7 August 104.900000\n", + "8 September 104.366667\n", + "9 October 103.200000\n", + "10 November 100.133333\n", + "11 December 93.533333" + ] + }, + "execution_count": 281, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "month = pd.read_csv ('/Users/Asfandyar/Desktop/disertation/monthly traffic.csv')\n", + "month" + ] + }, + { + "cell_type": "code", + "execution_count": 268, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>month</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>July</td>\n", + " <td>201161</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>November</td>\n", + " <td>209588</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>January</td>\n", + " <td>184490</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>March</td>\n", + " <td>182482</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>October</td>\n", + " <td>205207</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>May</td>\n", + " <td>193802</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>August</td>\n", + " <td>186789</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>April</td>\n", + " <td>175254</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>June</td>\n", + " <td>194286</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>December</td>\n", + " <td>187478</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>Februray</td>\n", + " <td>170157</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>September</td>\n", + " <td>196733</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " month Total accidents\n", + "0 July 201161\n", + "1 November 209588\n", + "2 January 184490\n", + "3 March 182482\n", + "4 October 205207\n", + "5 May 193802\n", + "6 August 186789\n", + "7 April 175254\n", + "8 June 194286\n", + "9 December 187478\n", + "10 Februray 170157\n", + "11 September 196733" + ] + }, + "execution_count": 268, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "TimeAccident_dfmonthly_new_df_df=TimeAccident_dfmonthly_new_df.toPandas()\n", + "TimeAccident_dfmonthly_new_df_df" + ] + }, + { + "cell_type": "code", + "execution_count": 388, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>month</th>\n", + " <th>Traffic volume</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>January</td>\n", + " <td>89.566667</td>\n", + " <td>184490</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Februray</td>\n", + " <td>94.466667</td>\n", + " <td>170157</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>March</td>\n", + " <td>98.266667</td>\n", + " <td>182482</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>April</td>\n", + " <td>100.566667</td>\n", + " <td>175254</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>May</td>\n", + " <td>101.933333</td>\n", + " <td>193802</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>June</td>\n", + " <td>103.966667</td>\n", + " <td>194286</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>July</td>\n", + " <td>104.766667</td>\n", + " <td>201161</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>August</td>\n", + " <td>104.900000</td>\n", + " <td>186789</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>September</td>\n", + " <td>104.366667</td>\n", + " <td>196733</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>October</td>\n", + " <td>103.200000</td>\n", + " <td>205207</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>November</td>\n", + " <td>100.133333</td>\n", + " <td>209588</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>December</td>\n", + " <td>93.533333</td>\n", + " <td>187478</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " month Traffic volume Total accidents\n", + "0 January 89.566667 184490\n", + "1 Februray 94.466667 170157\n", + "2 March 98.266667 182482\n", + "3 April 100.566667 175254\n", + "4 May 101.933333 193802\n", + "5 June 103.966667 194286\n", + "6 July 104.766667 201161\n", + "7 August 104.900000 186789\n", + "8 September 104.366667 196733\n", + "9 October 103.200000 205207\n", + "10 November 100.133333 209588\n", + "11 December 93.533333 187478" + ] + }, + "execution_count": 388, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23=pd.merge(month, TimeAccident_dfmonthly_new_df_df, on=['month'])\n", + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 389, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>month</th>\n", + " <th>Traffic volume</th>\n", + " <th>Total accidents</th>\n", + " <th>Accident Distribution</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>January</td>\n", + " <td>89.566667</td>\n", + " <td>184490</td>\n", + " <td>2059.806476</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Februray</td>\n", + " <td>94.466667</td>\n", + " <td>170157</td>\n", + " <td>1801.238532</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>March</td>\n", + " <td>98.266667</td>\n", + " <td>182482</td>\n", + " <td>1857.008141</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>April</td>\n", + " <td>100.566667</td>\n", + " <td>175254</td>\n", + " <td>1742.664898</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>May</td>\n", + " <td>101.933333</td>\n", + " <td>193802</td>\n", + " <td>1901.262264</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>June</td>\n", + " <td>103.966667</td>\n", + " <td>194286</td>\n", + " <td>1868.733568</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>July</td>\n", + " <td>104.766667</td>\n", + " <td>201161</td>\n", + " <td>1920.085905</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>August</td>\n", + " <td>104.900000</td>\n", + " <td>186789</td>\n", + " <td>1780.638704</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>September</td>\n", + " <td>104.366667</td>\n", + " <td>196733</td>\n", + " <td>1885.017566</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>October</td>\n", + " <td>103.200000</td>\n", + " <td>205207</td>\n", + " <td>1988.439922</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>November</td>\n", + " <td>100.133333</td>\n", + " <td>209588</td>\n", + " <td>2093.089215</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>December</td>\n", + " <td>93.533333</td>\n", + " <td>187478</td>\n", + " <td>2004.397719</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " month Traffic volume Total accidents Accident Distribution\n", + "0 January 89.566667 184490 2059.806476\n", + "1 Februray 94.466667 170157 1801.238532\n", + "2 March 98.266667 182482 1857.008141\n", + "3 April 100.566667 175254 1742.664898\n", + "4 May 101.933333 193802 1901.262264\n", + "5 June 103.966667 194286 1868.733568\n", + "6 July 104.766667 201161 1920.085905\n", + "7 August 104.900000 186789 1780.638704\n", + "8 September 104.366667 196733 1885.017566\n", + "9 October 103.200000 205207 1988.439922\n", + "10 November 100.133333 209588 2093.089215\n", + "11 December 93.533333 187478 2004.397719" + ] + }, + "execution_count": 389, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23[\"Accident Distribution\"] = result23[\"Total accidents\"] / result23[\"Traffic volume\"]\n", + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 390, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>month</th>\n", + " <th>Accident Distribution</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>January</td>\n", + " <td>2059.806476</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>Februray</td>\n", + " <td>1801.238532</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>March</td>\n", + " <td>1857.008141</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>April</td>\n", + " <td>1742.664898</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>May</td>\n", + " <td>1901.262264</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>June</td>\n", + " <td>1868.733568</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>July</td>\n", + " <td>1920.085905</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>August</td>\n", + " <td>1780.638704</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>September</td>\n", + " <td>1885.017566</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>October</td>\n", + " <td>1988.439922</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>November</td>\n", + " <td>2093.089215</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>December</td>\n", + " <td>2004.397719</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " month Accident Distribution\n", + "0 January 2059.806476\n", + "1 Februray 1801.238532\n", + "2 March 1857.008141\n", + "3 April 1742.664898\n", + "4 May 1901.262264\n", + "5 June 1868.733568\n", + "6 July 1920.085905\n", + "7 August 1780.638704\n", + "8 September 1885.017566\n", + "9 October 1988.439922\n", + "10 November 2093.089215\n", + "11 December 2004.397719" + ] + }, + "execution_count": 390, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result23=result23.drop(['Total accidents', 'Traffic volume'], axis=1)\n", + "result23" + ] + }, + { + "cell_type": "code", + "execution_count": 320, + "metadata": {}, + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'T' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-320-94805f1af0e7>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mee\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mExpected_Values\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mT\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mee\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mNameError\u001b[0m: name 'T' is not defined" + ] + } + ], + "source": [ + "ee=Expected_Values.dot(T)\n", + "ee" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 285, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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Ne64447ONLqFiBhQk3UPtOcjSVIn2ZNKkiRNF84++2wAllhiCcaMGcPZZ5/NTjvtVFl7HnzwwcrOPb3YYYcdOProo6fafuedd3LEEUdw7bXXMnLkSG644QbWW2+9Kcqcd955vPvuuyy99NL91NrW1ltvPR588EHmnHPOqpvSpR133JENNtiAeeedt+qmSJLU7+xJJUmSKvfaa69x+eWXExH87ne/Y/DgwVx99dU899xzlbVppZVWYqWVVqrs/NOzESNGcPXVV7Pzzjvz7rvvsvvuuzN+/Pgpyiy99NKstNJK00UwNOecc7LSSitNF4FZV+add15WWmklPvShD1XdFEmS+p0hlSRJqtwFF1zA+++/z6abbspHP/pRPvaxjzFhwoSp5kVq9OCDD7Lffvux/PLLM8ccczD//POz+uqr841vfIOnnnpqqvLPPPMMX/va11hllVWYa665mGeeeVh55ZU54IAD+M9//jNF2XbDsp566ik+//nPs+iiizLHHHOwyiqrcPzxxzNhwoS27f3ggw84/fTT2XjjjZl//vmZffbZWWGFFfja177Gyy+/PFX5UaNGERHsvffevPXWW3zzm99kmWWWYbbZZmOJJZZg//3357XXXpuizqabbspmm20GwE033TTpeXRi+F+9QYMGcdpppzH77LPz2GOPMXr06KnaERFTzAEF8N5773Hcccex9tprM3ToUGabbTY+9KEPseGGG/Kd73yH9957D4Cjjz56iutf/zzqt9fKHX300Tz11FPss88+LLnkkgwZMoRDDz0U6N7wx/Hjx3Pcccex8sorM/vss7Pooouy11578fTTT09VtqvjPfnkk0TEFHOSdff51P/Om7ntttvYaaedWGyxxZh11llZbLHF2HnnnfnHP/7RtHz97+HOO+9k++23Z8EFF2T22WdnjTXW4Kyzzmp5TSRJ6m8O95MkSZWrDfWrfTDfZ599uOqqqzjnnHM48sgjm9Y577zz+NKXvsS4ceNYdtll2W677Rg3bhyPPvooP//5z1l11VWn+KD/17/+lV122YU333yTxRdfnK233ppBgwbx+OOP8+tf/5pFFlmEVVddtcu2PvDAA4wcOZJXXnmFpZZaik996lO8/vrrHHXUUfzzn/9sWe/NN9/kk5/8JLfeeivzzjsvI0aMYL755uOuu+7ihBNO4A9/+AM33XRT08nW33jjDTbaaCPGjBnDJptswqqrrsqtt97K6aefzr/+9S/+8Y9/TJpkfptttmH22Wfn6quvZtFFF2WbbbaZdJxO9wxbaKGF2GabbRg9ejTXXHMNO++8c9vyEydO5JOf/CTXX3898847LyNHjmTeeeflxRdf5OGHH+aYY47hoIMOYrHFFmPNNddkr732mhRU7rXXXm2P/cgjj7DWWmsx++yzs9FGGzF+/Hjmm2++bj+X3XbbjT//+c9suummrLHGGtx2222cd955/OUvf+Hmm29mxRVX7Paxmunp82nmtNNO46CDDmLixImsu+66bL755jz66KP84Q9/4LLLLuP000/nS1/6UtO6f/nLX/jFL37BiiuuyMc+9jGefvppbrvtNr74xS8yduxYvv71r0/T85M0g5jRbthS04c3btH0xZBKkiRV6u677+aee+5h7rnnnhRybL/99iywwAI88sgj3HLLLWy88cZT1Ln99tvZd999yUzOPPNMvvCFL0zRG6VxPqmnn36anXfembfeeosf/vCHHHHEEQwZMmSK/c16MjWz55578sorr7Dnnnty5plnMuusswJw//33s9lmm7U8zn777cett97KzjvvzBlnnMH8888PwIQJE/jWt77F8ccfz9577z1VzyOA0aNH84lPfILbbruNoUOHAvDcc8+xwQYbcNddd3HRRRfxuc99DoAjjjiCDTbYgKuvvpqVVlqpz+8Qt8466zB69Gjuv//+LsveeuutXH/99ay99trcfPPNzDXXXJP2ZSa33XYb88wzD1DMh7XDDjtMCnW6eh4XXnghe++9N7/+9a8n/U6666mnnuK///0vd999N6ussgoA48aNY9999+X8889nzz335F//+lePjtmop8+n0b333svBBx8MwEUXXcQuu+wyad/vfvc7Pve5z3HggQey4YYbNg1bf/KTn3DWWWfxhS98YdK22nP7wQ9+wP777z9dDM2UJM3cHO4nSZIqVetFteuuu076kDzbbLNNCl1q++sdc8wxjB8/nm984xvsu+++Uw3LW3nllVl55ZUnrf/iF7/grbfeYrfdduM73/nOFAEVFPMnjRgxosu23nLLLdx1113MO++8nHTSSVOEIR/5yEc46qijmtZ74IEH+P3vf8+wYcM477zzJgVUAIMHD+bYY49ltdVW46abbuLf//73VPWHDh3KWWedNSmgAlh88cU56KCDALjuuuu6bHtfWWihhQB49dVXuyz74osvArDxxhtPEVBBMfxto4026nVQsuCCC/KrX/2qxwFVzVFHHTUpoAKYddZZOemkk5hnnnm4/fbb+dvf/tar43bKr371K8aPH89nPvOZKQIqYNK2Dz74gBNPPLFp/Z122mmKgApgjz32YOWVV+bNN9/s87s0SpLUHYZUkiSpMu+//z4XXnghUAzxq1dbv/jii3n77bcnbZ8wYQLXXHMNAF/84he7dZ6//OUvPSrfyk033QTAtttu2/Tua3vuuWfTelddddWkenPMMcdU+wcNGjSpt9jf//73qfaPGDGCxRZbbKrtteF7VU4wP3HiRKB4Dl1Ze+21GTx4MGeddRannnrqpNCqE7bcckvmnnvuXtffY489pto233zzsd122wE07eHWn2qvvVZzVdUCqFbt3HbbbZtunx5eQ5Ik1RhSSZKkyowePZrXXnuNFVZYgY022miKfWuttRZrrLEG77zzDr///e8nbX/llVd49913GTJkCMsvv3y3zlObRH1a52R69tlnAVhmmWWa7p9vvvmahlePP/44AKeccspUE2bXHqeeeipA0+GCre5KVxsaV5tsvAqvvPIKAAsssECXZZdbbjlOOOEExo0bx4EHHshiiy3Gcsstx5577skll1zS5cTz7QwbNqzXdeebb76W81fV5gir/e6rMmbMGKD1a2/ZZZedolyj6fk1JElSjXNSSZKkytSG8r3xxht89KMfnWr/Sy+9NKncvvvuC9Dyjnvt9KZOJ9XClxEjRnQ5OftHPvKRqbZ1p5dSVe68804AVltttW6V/+pXv8ouu+zC6NGjufXWW7n11ls5//zzOf/881lzzTW56aabJgUnPdGsh1pVar3L+kJvX8vT82tIkqQaQypJklSJZ555hmuvvRYowqhaINXMbbfdxsMPP8yKK67IggsuyJxzzsm7777LY489xnLLLdfluZZeemkefvhhHn74YZZccslet3mJJZYA4Mknn2y6f+zYsbzxxhtTbV9qqaUA2GyzzfjpT3/a6/NPb15++WWuvvpqALbaaqtu11tsscX4yle+wle+8hWgmBR8zz335J577uG4447jxz/+cZ+0t5Xa761ZL7ja77r2uwcmzXtVPwy1Xq3nXictscQSPPbYYzz++ONNX/O13nr17ZQkaUbjVyqSJKkSo0aNYuLEiWy++eZkZsvHrrvuCkzudTV48GC23HJLAM4888xunWvrrbfuUflWRo4cCcCf//xn3nzzzan2X3DBBU3rffzjHweK4Y3jx4+fpjZ0Ry1E6ctzTZw4kQMOOID33nuPD3/4w2y//fa9PtYaa6zBIYccAhSBVb1ZZpkF6NvnAs1/d2+88QZ//vOfAdh0000nba8FQY899hgffPDBVPWuvPLKlufp7fOpvfbOO++8pvvPOeecqdopSdKMxpBKkiT1u8xk1KhRQOvJxmtq+3/zm99MGjb37W9/m8GDB/Ozn/1s0nHqPfTQQzz00EOT1r/2ta8xdOhQfve733HsscdONffRM888M2nYWjsbb7wxa665JmPHjuWQQw6ZIqB48MEH+eEPf9i03tprr80OO+zAo48+yq677tp0fqPXX3+dX//61x0JY2ohyqOPPton4c5dd93F1ltvzSWXXMJcc83FhRdeyODBg7usd/3113PllVdO1aYJEyZMCnYa55aqPZcHH3ywQ61v7gc/+MEU5/jggw845JBDeOONNxgxYsQUw1GHDRvGcsstx9ixY/n5z38+xXFGjx7Nr371q5bn6e3zOfjggxkyZAi//e1vueyyy6bYd/HFF3PRRRcxyyyzcPDBB/fouJIkTU8c7leVC6udG6PXds+qWyBJGgBuvPFGHn/8ceaYYw522mmntmW32WYbFl54YZ5//nmuvPJKtttuO9Zbbz3OOOMMvvzlL7PPPvvwox/9iLXXXptx48bx6KOPcv/993POOedMmih92LBhXHTRRey6665861vf4pRTTmH99dcnInjiiSe45557OOqooxgxYkTbtkQEv/nNbxg5ciSjRo3i+uuvZ8MNN2Ts2LHccMMNbLvtttx5551Nh3ude+65bL/99lx22WVcddVVrLHGGgwfPpzx48fz+OOPc9999zFhwgT22msvhgyZtj/Rhg0bxlprrcXdd9/N6quvzogRI5htttlYccUV+eY3v9nt44wePXrScLcPPviAsWPHct99900K2VZddVXOPfdc1l577W4d77777uP//b//x7zzzsvaa6/Nhz70Id59913++c9/8vzzz7PYYotx+OGHT1Fnxx135IQTTmCLLbZg8803Z+jQocC094qrt/TSSzNixAjWXHNNNt98c+add15uu+02nnnmGRZaaKGmvZeOPfZYdtttN4488kguvvhill12WR555BHuu+8+vvWtb3HMMcc0PVdvn88aa6zBiSeeyEEHHcSnP/1p1l9/fZZbbjkeffRR/vWvfzFo0CBOPvnkbs8NJknS9MiQSpKkKs2k4X9t6N4OO+zA3HPP3bbskCFD+MxnPsNJJ53E2WefzXbbbQfAF77wBdZdd11+8YtfcP3113P55Zcz11xzsfTSS/PNb36TzTfffIrjfPzjH+e+++7j5z//OVdffTVXXHEFs802G0suuST777//pGGFXVl11VW54447+O53v8vVV1/N6NGjGT58ON/73vc47LDDWt5xcJ555uG6667jwgsv5Pzzz+euu+7izjvvZP7552fxxRfny1/+Mp/61KeYffbZu9WOrlx66aUcfvjh3HTTTfz2t79lwoQJjBw5skch1b333jtp+N3ss8/OPPPMwzLLLMN2223HDjvswFZbbdWjiby32247xo4dy80338yjjz7KbbfdxtChQ1l66aX5yle+wv7778/CCy88RZ1jjjmGiOCyyy7j0ksvndR7rZMhVURw0UUXcdxxx/Gb3/yGp556innmmYc99tiDH/7wh5Pu8Fdvl112YbbZZuPYY4/l3nvv5ZFHHmHttdfmqquuYsUVV2wZUk3L8znggANYY401+PnPf87f/vY37rzzThZYYAE+/elP841vfIMNN9xwmq6DJElVi8yZ84/j7lhnnXXyjjvu6JuD25NKkga8Bx98kJVXXrnqZkhSR/neJs3A/Byq6URE3JmZ6zRud04qSZIkSZIkVc6QSpIkSZIkSZUzpJIkSZIkSVLlDKkkSZIkSZJUuW6FVBExS0RsERE/j4g7IuLNiBgXEWMi4pKI2LSL+rtHxC0R8UZEvF0e48CIaHv+iNgmIv4aEa9FxLsR8Z+I+HZEzNZFvfUj4rKIeCki3ouIRyLi+IiYtzvPV5IkSZIkSf2ruz2pRgLXAl8DlgBuBi4DXgN2Am6IiB80qxgRpwAXAOsAtwDXAB8GTgYuaRVURcRhwFXA5sBdwBXAIsCPgBsjYs4W9T4L/A3YAfg/4HJgVuCbwB0RsUg3n7MkSZIkSZL6SXdDqonAH4BNMvNDmbltZu6WmasBnwEmAEdFxGb1lSJiJ+AA4AVg9bLejsAKwIPAjsBXG08WEesAxwHvAhtl5paZuQuwLEVAtgFwTJN6SwJnAQHskJkfzczdgOWA3wPLA7/u5nOWJEmSJElSP+lWSJWZ12fmzpl5S5N9vwdGlat7NOw+slwenpmP1NV5Edi/XD2iSW+qIyiCpp9k5j/r6r0N7EMRmh0QEfM11DsUmAM4NzMvr6s3HtgPeBPYISJWafuEJUnqkMysugmS1DG+p0mS+lKnJk6/u1wuWdtQ9moaAYwDLm6skJk3AWOAxSh6RtXqzQp8vFy9oEm9x4G/Uwzh+0TD7h3a1HsT+FNDOUmS+syQIUMYN25c1c2QpI4ZN24cQ4YMqboZkqQBqlMh1Qrl8vm6bWuVy/sz878t6t3eUBZgRWBO4LXMfKy79SJiHophffX7u3M+SZL6xLzzzsurr75qzwNJA0Jm8uqrrzLvvN6LSJLUN6b5a5CIWAzYu1z9Q92uZcrlU22qP91Qtv7np2mtWb3h5XJs2Wuqu/UkSeoTCyywAM888wzPPvss8803H3POOSeDBg0iIqpumiR1S2YyceJE3n33XcaOHcv48eNZZBHvQyRJ3XbhDPp33+7VfMk6TSFVRAwBzgfmBa7LzD/V7R5aLt9pc4i3y+XcFdabQkTsRzF/FUsvvXSbQ0mS1N6QIUMYNmwYr7/+Oq+//jrPPfccEydOrLpZktQjgwYNYo455mCuueZi/vnnZ9CgTg3GkCRpStPak+p0YAvgGaaeNH2GlJlnAGcArLPOOo7PkCRNk0GDBrHggguy4IILVt0USZIkabrW669BIuJEYF/gBWCLzHyhoUit19JcbQ5T6/30VoX1JEmSJEmSVLFe9aSKiJ8DBwMvUwRUjzQp9mS5HNbmUEs1lK3/ud1Yu2b1anNfzRcR87SYl6pZPUmSJElSf3OuHkkNetyTKiKOB74GvApsmZkPtCh6d7n8SETM0aLMug1lAR4C/gssEBHLTV0FgPUa62XmG0DtboDrTlWjRT1JkiRJkiRVr0chVUQcB3wTeB3YKjPva1U2M58B7gJmBXZpcqyRwJIUwwX/XldvHHBVufq5JvWWBTYExgFXNOy+vE29eYDtytXLWrVbkiRJkiRJ/a/bIVVE/Ag4HBhLEVB1pzfSseXyJxGxfN2xFgFOLVePy8zGWx0dByRweESsV1dvKHB22e5TM3NsQ71fUvTC2isitq+rNwT4NTAPMLpN7y9JkiRJkiRVoFtzUpWBz7fL1UeBr0Y0HT/8UGYeV1vJzEsi4jRgf+DfEXEt8AHFHQHnAUYDJzceJDNvj4gjgJ8At0XE9RTh2EhgEeCfde2pr/dMROwL/AYYHRG3As8BG1DMjfUo8OXuPGdJkiRJkiT1n+5OnL5A3c/rlI9mbqLoBTVJZh5QhkUHUoRMgynmnTobOK1JL6paveMj4j7g6xRzTM0OPA78CvhZZr7fot5vI+Jx4EhgI2B94Bngp8Ax5dxVkiRJkiRJmo50K6TKzFHAqN6eJDMvBC7sRb2/AH/pRb1/Ajv0tJ4kSZIkSZKq0eO7+0mSJEmSJEmdZkglSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyg2pugGSJEmazl0YVbegd3bPqlsgSZJ6wJ5UkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpck6cLknStHBCaUmSJKkj7EklSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcc1JJkiRJknMMSlLl7EklSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcc1JJkqQZi/PGSJIkDUj2pJIkSZIkSVLlDKkkSZIkSZJUOYf7Seo7DsmRJEmSJHWTPakkSZIkSZJUOUMqSZIkSZIkVc6QSpIkSZIkSZUzpJIkSZIkSVLlDKkkSZIkSZJUOUMqSZIkSZIkVc6QSpIkSZIkSZUzpJIkSZIkSVLlDKkkSZIkSZJUOUMqSZIkSZIkVc6QSpIkSZIkSZUzpJIkSZIkSVLlDKkkSZIkSZJUuSFVN0DqNxdG1S3ond2z6hZIkiRJktTn7EklSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIq1+2J0yNiRWAbYF1gHeDDQAC7ZOYlTcpvCtzQzcMPy8yn6+qOAvZqU/7hzFypRTsHAfsD+wArAROA+4BTM/O33WyPJEmSVB1v+CJJmgn15O5++wOH9KD8C8C5bfavB6wMPAY806LM34BHm2x/vlnhiBgMXApsD7wJ/BWYDdgCuDAiNsjMnjwHSZIkSZIk9YOehFT/AX4K3AHcCZwFjGxVODMfAvZutT8iHih/PDszW33lcmZmjupBGw+lCKgeADbPzBfLc60A3AIcHBHXZ+blPTimJEmSJEmS+li3Q6rMPLN+PaL3XZAjYkOKXlQTgFG9PtCUxxwMHFau7l8LqAAy85GIOLw817cBQypJkiRJkqTpSFUTp3+hXP4lM5/r0DE3BBYBns3Mm5vsvxj4AFg3Ipbo0DklSZIkSZLUAT0Z7tcRETEnsFu5elYXxTeLiNWBocCLwK3ANZk5sUnZtcrl7c0OlJnvRsT9wJrlY0zPWi5JkiRJkqS+0u8hFbALMDfwEvDnLsp+vsm2ByLiM5n574bty5TLp9oc72mKgGqZNmUkSZIkSZLUz6oY7lcb6ndeZn7Qosw9wMHAKhS9qBYHtgXuLbdd22TI3tBy+U6bc79dLuduVSAi9ouIOyLijpdffrnNoSRJkiRJktQp/RpSRcTywCbl6tmtymXmLzPzpMx8MDPfycznM/MKYD3gHxRzTx3ZF23MzDMyc53MXGfhhRfui1NIkiRJkiSpQX8P96v1ovp7Zj7Y08qZOS4ijqW4O98nGnbXeknN1eYQtd5Wb/X03JI0Q7iw93derdTuWXULJEmSJFWs33pSRcRgJs8x1dWE6e08VC4bh/s9WS6Htam7VENZSZIkSZIkTQf6c7jf1hTB0tvA76fhOAuWy7cbtt9VLtdtVqm8q+Cq5erd03B+SZIkSZIkdVh/hlT7lsuLMrMxYOqJXcvl7Q3b/w68DCwZEZswtV2AWYDbM3PMNJxfkiRJkiRJHdYvIVVELARsV662HeoXEWtGxLbl8MD67UMi4usUd/0DOKF+f2ZOAI4vV0+LiEXq6q4AHFeuHtO7ZyFJkiRJkqS+0u2J0yNibeDUuk2rlMsfR8Q3ahszc4Mm1fek6MX0UGbe1sWphgOXAa9FxF3ASxRD/FYDFgcmAodl5tVN6p5AcffA7YBHIuK68rxbArMDJ2Xm5V2cX5IkSZIkSf2sJ3f3mwdYv8n2FbpRd59yeXY3yt4LnAisRxGEbQwk8CxwDnBKZt7ZrGJmToiIHYADynNuDUwA7gROzcwLu3F+SZIkSZIk9bNuh1SZeSPQq3ubZ+bqPSj7BHBob85T1p8InFw+JEmSJEmSNAPoz4nTJUmSJEmSpKYMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuUMqSRJkiRJklQ5QypJkiRJkiRVzpBKkiRJkiRJlTOkkiRJkiRJUuW6HVJFxIoRcUhEnB8RD0XExIjIiNi5TZ1RZZlWj4fa1B0UEQdGxB0R8XZEvBERt0TEZ7vR1t3Lsm+Ude8oj2UoJ0mSJEmSNB0a0oOy+wOH9PI8fwMebbL9+WaFI2IwcCmwPfAm8FdgNmAL4MKI2CAzm7YlIk4BDgDeA64DPijrnQxsERE7Z+bEXj4PSZIkSZIk9YGehFT/AX4K3AHcCZwFjOxm3TMzc1QPznUoRUD1ALB5Zr4IEBErALcAB0fE9Zl5eX2liNiJIqB6AdgkMx8pty8K3ADsCHwVOLEHbZEkSZIkSVIf6/bwt8w8MzMPy8yLMvOxvmpQ2YvqsHJ1/1pAVbbhEeDwcvXbTaofWS4PrwVUZb0XKXqCARzhsD9JkiRJkqTpy/QY1mwILAI8m5k3N9l/McUQvnUjYonaxohYEhgBjCvLTCEzbwLGAIsBG/RBuyVJkiRJktRLPRnuNy02i4jVgaHAi8CtwDUt5oZaq1ze3uxAmfluRNwPrFk+xjTUuz8z/9uiHbcDS5Rlb+vhc5AkSZIkSVIf6a+Q6vNNtj0QEZ/JzH83bF+mXD7V5nhPUwRUy9Rt6269+rKSJEmSJEmaDvT1cL97gIOBVSh6US0ObAvcW267tn7IXmlouXynzXHfLpdzd6DeFCJiv4i4IyLuePnll9scSpIkSZIkSZ3SpyFVZv4yM0/KzAcz853MfD4zrwDWA/5BMffUke2P0r8y84zMXCcz11l44YWrbo4kSZIkSdJMoZKJ0zNzHHBsufqJht213k5ztTlErdfUWx2oJ0mSJEmSpIpVeXe/h8pl43C/J8vlsDZ1l2ooOy31JEmSJEmSVLEqQ6oFy+XbDdvvKpfrNqsUEXMCq5ard9ftqv38kYiYo8U5120oK0mSJEmSpOlAlSHVruXy9obtfwdeBpaMiE2a1NsFmAW4PTPH1DZm5jMUAdesZZkpRMRIYEnghfIckiRJkiRJmk70WUgVEWtGxLYRMbhh+5CI+DrFXf8ATqjfn5kTgOPL1dMiYpG6uisAx5WrxzQ5bW2eq59ExPJ19RYBTi1Xj8vMib15TpIkSZIkSeobQ7pbMCLWZnLQA7BKufxxRHyjtjEzNyh/HA5cBrwWEXcBL1EM8VsNWByYCByWmVc3Od0JwCbAdsAjEXEdRe+pLYHZgZMy8/LGSpl5SUScBuwP/DsirgU+ALYA5gFGAyd39zlLkiRJkiSpf3Q7pKIIedZvsn2FFuXvBU4E1qMItDYGEngWOAc4JTPvbFYxMydExA7AAcA+wNbABOBO4NTMvLBVIzPzgIi4FTgQGAkMppik/WzgNHtRSZIkSZIkTX+6HVJl5o1A9KD8E8ChPW/SpPoTKXo99bjnUxlitQyyJEmSJEmSNH2pcuJ0SZIkSZIkCTCkkiRJkiRJ0nTAkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVDlDKkmSJEmSJFXOkEqSJEmSJEmVM6SSJEmSJElS5QypJEmSJEmSVLluh1QRsWJEHBIR50fEQxExMSIyInZuUX6WiNgiIn4eEXdExJsRMS4ixkTEJRGxaZtzjSqP3erxUJu6gyLiwPKcb0fEGxFxS0R8trvPVZIkSZIkSf1rSA/K7g8c0oPyI4Fryp9fAG4G3gFWAXYCdoqIH2bmd9sc42/Ao022P9+scEQMBi4FtgfeBP4KzAZsAVwYERtkZk+egyRJkiRJkvpBT0Kq/wA/Be4A7gTOogiiWpkI/AE4MTNvqd8REbsBFwBHRcQNmXlDi2OcmZmjetDGQykCqgeAzTPzxfJ8KwC3AAdHxPWZeXkPjilJkiRJkqQ+1u2QKjPPrF+PiK7KXw9c32Lf7yNiK2BfYA+gVUjVbWUvqsPK1f1rAVV5vkci4nBgFPBtwJBKkiRJkiRpOlLlxOl3l8slO3S8DYFFgGcz8+Ym+y8GPgDWjYglOnROSZIkSZIkdUBPhvt12grlsun8UqXNImJ1YCjwInArcE1mTmxSdq1yeXuzA2XmuxFxP7Bm+RjTizZLkiRJkiSpD1QSUkXEYsDe5eof2hT9fJNtD0TEZzLz3w3blymXT7U53tMUAdUybcpIkiRJkiSpn/X7cL+IGAKcD8wLXJeZf2pS7B7gYIo7AQ4FFge2Be4tt13bZMje0HL5TpvTv10u527Tvv0i4o6IuOPll1/u4tlIkiRJkiSpE6qYk+p0YAvgGYpJ06eSmb/MzJMy88HMfCczn8/MK4D1gH9QzD11ZF80LjPPyMx1MnOdhRdeuC9OIUmSJEmSpAb9GlJFxIkUd/R7AdgiM1/oSf3MHAccW65+omF3rZfUXG0OUett9VZPzitJkiRJkqS+1W8hVUT8nGII38sUAdUjvTzUQ+Wycbjfk+VyWJu6SzWUlSRJkiRJ0nSgX0KqiDge+BrwKrBlZj4wDYdbsFy+3bD9rnK5bos2zAmsWq7ePQ3nlyRJkiRJUof1eUgVEccB3wReB7bKzPum8ZC7lsvbG7b/naKX1pIRsUmTersAswC3Z+aYaWyDJEmSJEmSOqhPQ6qI+BFwODCWIqDqsgdTRKwZEdtGxOCG7UMi4usUQwYBTqjfn5kTgOPL1dMiYpG6uisAx5Wrx/TmuUiSJEmSJKnvDOluwYhYGzi1btMq5fLHEfGN2sbM3KAsvz3w7XLzo8BXI6LZoR/KzOPq1ocDlwGvRcRdwEsUQ/xWAxYHJgKHZebVTY51ArAJsB3wSERcR9F7aktgduCkzLy8u89ZkiRJkiRJ/aPbIRUwD7B+k+0rtCi/QN3P65SPZm5ici8ngHuBE4H1KIKwjYEEngXOAU7JzDubHSgzJ0TEDsABwD7A1sAE4E7g1My8sEUbJEmSJEmSVKFuh1SZeSPQtCtUi/KjgFE9bVBmPgEc2tN6dfUnAieXD0mSJEmSJM0A+uXufpIkSZIkSVI7hlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMp1O6SKiBUj4pCIOD8iHoqIiRGREbFzN+ruHhG3RMQbEfF2RNwREQdGRNvzR8Q2EfHXiHgtIt6NiP9ExLcjYrYu6q0fEZdFxEsR8V5EPBIRx0fEvN19vpIkSZIkSeo/PelJtT/wS+BzwIpAdKdSRJwCXACsA9wCXAN8GDgZuKRVUBURhwFXAZsDdwFXAIsAPwJujIg5W9T7LPA3YAfg/4DLgVmBbwJ3RMQi3Wm3JEmSJEmS+k9PQqr/AD8FdgOWB27qqkJE7AQcALwArJ6Z22bmjsAKwIPAjsBXm9RbBzgOeBfYKDO3zMxdgGWBm4ENgGOa1FsSOIsiQNshMz+ambsBywG/L9v96x48Z0mSJEmSJPWDbodUmXlmZh6WmRdl5mPdrHZkuTw8Mx+pO9aLFD2zAI5o0pvqCIqg6SeZ+c+6em8D+wATgQMiYr6GeocCcwDnZubldfXGA/sBbwI7RMQq3Wy/JEmSJEmS+kGfTZxe9moaAYwDLm7cn5k3AWOAxSh6RtXqzQp8vFy9oEm9x4G/Uwzh+0TD7h3a1HsT+FNDOUmSJEmSJE0H+vLufmuVy/sz878tytzeUBaK+a7mBF5r02NrqnoRMQ/FsL76/d05nyRJkiRJkirWlyHVMuXyqTZlnm4oW//z07TWrN7wcjm27DXV3XqSJEmSJEmqWF+GVEPL5TttyrxdLueusJ4kSZIkSZIq1pch1QwpIvaLiDsi4o6XX3656uZIkiRJkiTNFPoypKr1WpqrTZla76e3Kqw3hcw8IzPXycx1Fl544TaHkiRJkiRJUqf0ZUj1ZLkc1qbMUg1l639euof1anNfzVdOot7depIkSZIkSapYX4ZUd5fLj0TEHC3KrNtQFuAh4L/AAhGx3NRVAFivsV5mvgHU7ga47lQ1WtSTJEmSJElS9fospMrMZ4C7gFmBXRr3R8RIYEngBeDvdfXGAVeVq59rUm9ZYENgHHBFw+7L29SbB9iuXL2sB09FkiRJkiRJfayvJ04/tlz+JCKWr22MiEWAU8vV4zJzYkO944AEDo+I9erqDQXOpmj3qZk5tqHeLyl6Ye0VEdvX1RsC/BqYBxidmQ9M4/OSJEmSJElSBw3pbsGIWJvJwRLAKuXyxxHxjdrGzNyg7udLIuI0YH/g3xFxLfABsAVlYASc3HiuzLw9Io4AfgLcFhHXA2OBkcAiwD+Bbzep90xE7Av8BhgdEbcCzwEbUMyN9Sjw5e4+Z0mSJEmSJPWPbodUFKHS+k22r9CuUmYeUIZFB1KETIMp5p06GzitSS+qWr3jI+I+4OsUc0zNDjwO/Ar4WWa+36LebyPiceBIYKOyzc8APwWOKeeukiRJkiRJ0nSk2yFVZt4IRG9OkpkXAhf2ot5fgL/0ot4/gR16Wk+SJEmSJEnV6Os5qSRJkiRJkqQuGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTK9WlIFRGbRkR287F0Xb1RXZR9qM05B0XEgRFxR0S8HRFvRMQtEfHZvnyukiRJkiRJ6r0hfXz8F4Bz2+xfD1gZeAx4psn+vwGPNtn+fLODRcRg4FJge+BN4K/AbMAWwIURsUFmHtLt1kuSJEmSJKlf9GlIlZkPAXu32h8RD5Q/np2Z2aTImZk5qgenPJQioHoA2DwzXyzPswJwC3BwRFyfmZf34JiSJEmSJEnqY5XNSRURG1L0opoAjOrA8QYDh5Wr+9cCKoDMfAQ4vFz99rSeS5IkSZIkSZ1V5cTpXyiXf8nM5zpwvA2BRYBnM/PmJvsvBj4A1o2IJTpwPkmSJEmSJHVIX89J1VREzAnsVq6e1aboZhGxOjAUeBG4FbgmMyc2KbtWuby92YEy892IuB9Ys3yM6XnLJUmSJEmS1BcqCamAXYC5gZeAP7cp9/km2x6IiM9k5r8bti9TLp9qc7ynKQKqZdqUkSRJkiRJUj+rarhfbajfeZn5QZP99wAHA6tQ9KJaHNgWuLfcdm2TIXtDy+U7bc77drmcuxdtliRJkiRJUh/p955UEbE8sEm5enazMpn5y4ZN7wBXRMQ1wE3ABsCRwEF90L79gP0All566U4fXpIkSZIkSU1U0ZOq1ovq75n5YE8qZuY44Nhy9RMNu2u9pOZqc4hab6u32pzjjMxcJzPXWXjhhXvSPEmSJEmSJPVSv4ZUETGYyfNMtZswvZ2HymXjcL8ny+WwNnWXaigrSZIkSZKk6UB/96TamiJcehv4fS+PsWC5fLth+13lct1mlco7Cq5art7dy3NLkiRJkiSpD/R3SLVvubwoMxtDpu7atVze3rD978DLwJIRsQlT2wWYBbg9M8f08tySJEmSJEnqA/0WUkXEQsB25WrLoX4RsWZEbFsODazfPiQivk5x1z+AE+r3Z+YE4Phy9bSIWKSu7grAceXqMb1/FpIkSZIkSeoL/Xl3vz0pejI9lJm3tSk3HLgMeC0i7gJeohjitxqwODAROCwzr25S9wSKOwduBzwSEdeV59wSmB04KTMv78zTkSRJkiRJUqf0Z0i1T7k8u4ty9wInAusBqwAbAwk8C5wDnJKZdzarmJkTImIH4IDyfFsDE4A7gVMz88JpfA6SJEmSJEnqA/0WUmXm6t0s9wRw6DScZyJwcvmQJEmSJEnSDKC/J06XJEmSJEmSpmJIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKmdIJUmSJEmSpMoZUkmSJEmSJKlyhlSSJEmSJEmqnCGVJEmSJEmSKtfnIVVEjIqIbPN4qEW9QRFxYETcERFvR8QbEXFLRHy2G+fcvSz7Rln3jvJYhnKSJEmSJEnToSH9eK6/AY822f5844aIGAxcCmwPvAn8FZgN2AK4MCI2yMxDmp0kIk4BDgDeA64DPijrnQxsERE7Z+bEaX86kiRJkiRJ6pT+DKnOzMxR3Sx7KEVA9QCweWa+CBARKwC3AAdHxPWZeXl9pYjYiSKgegHYJDMfKbcvCtwA7Ah8FThxmp+NJEmSJEmSOma6G/5W9qI6rFzdvxZQAZSh0+Hl6rebVD+yXB5eC6jKei8C+5erRzjsT5IkSZIkafoyPYY1GwKLAM9m5s1N9l9MMYRv3YhYorYxIpYERgDjyjJTyMybgDHAYsAGfdBuSZIkSZIk9VJ/DvfbLCJWB4YCLwK3Atc0mR9qrXJ5e7ODZOa7EXE/sGb5GNNQ7/7M/G+LNtwOLFGWva0Xz0GSJEmSJEl9oD9Dqs832fZARHwmM/9dt22ZcvlUm2M9TRFQLVO3rbv16stKkiRJkiRpOtAfw/3uAQ4GVqHoRbU4sC1wb7nt2vphe2UZgHfaHPPtcjl3B+pJkiRJkiSpYn3ekyozf9mw6R3gioi4BriJYn6oI4GD+rot3RER+wH7ASy99NIVt0aSJEmSJGnmUNnE6Zk5Dji2XP1E3a5ab6e52lSv9Zp6qwP1Gtt1Rmauk5nrLLzwwm0OJUmSJEmSpE6p+u5+D5XL+uF+T5bLYW3qLdVQdlrqSZIkSZIkqWJVh1QLlsu367bdVS7XbVYhIuYEVi1X767bVfv5IxExR4vzrdtQVpIkSZIkSdOBqkOqXcvl7XXb/g68DCwZEZs0qbMLMAtwe2aOqW3MzGcoAq5ZyzJTiIiRwJLAC+U5JEmSJEmSNJ3o05AqItaMiG0jYnDD9iER8XWKu/4BnFDbl5kTgOPL1dMiYpG6eisAx5WrxzQ5ZW2Oq59ExPJ19RYBTi1Xj8vMib19TpIkSZIkSeq8vr6733DgMuC1iLgLeIliiN9qwOLAROCwzLy6od4JwCbAdsAjEXEdRe+pLYHZgZMy8/LGk2XmJRFxGrA/8O+IuBb4ANgCmAcYDZzc4ecoSZIkSZKkadTXIdW9wInAesAqwMZAAs8C5wCnZOadjZUyc0JE7AAcAOwDbA1MAO4ETs3MC1udMDMPiIhbgQOBkcBgignazwZOsxeVJEmSJEnS9KdPQ6rMfAI4tJd1J1L0eupxz6cyxGoZZEmSJEmSJGn6UvXE6ZIkSZIkSZIhlSRJkiRJkqpnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqpwhlSRJkiRJkipnSCVJkiRJkqTKGVJJkiRJkiSpcoZUkiRJkiRJqlyfhlQRMUtEbBERP4+IOyLizYgYFxFjIuKSiNi0Rb1REZFtHg+1OeegiDiwPN/bEfFGRNwSEZ/tq+cpSZIkSZKkaTOkj48/Erim/PkF4GbgHWAVYCdgp4j4YWZ+t0X9vwGPNtn+fLPCETEYuBTYHngT+CswG7AFcGFEbJCZh/TyuUiSJEmSJKmP9HVINRH4A3BiZt5SvyMidgMuAI6KiBsy84Ym9c/MzFE9ON+hFAHVA8Dmmfliea4VgFuAgyPi+sy8vMfPRJIkSZIkSX2mT4f7Zeb1mblzY0BV7vs9MKpc3WNaz1X2ojqsXN2/FlCV53oEOLxc/fa0nkuSJEmSJEmdVfXE6XeXyyU7cKwNgUWAZzPz5ib7LwY+ANaNiCU6cD5JkiRJkiR1SF8P9+vKCuWy6RxTwGYRsTowFHgRuBW4JjMnNim7Vrm8vdmBMvPdiLgfWLN8jOllmyVJkiRJktRhlYVUEbEYsHe5+ocWxT7fZNsDEfGZzPx3w/ZlyuVTbU77NEVAtUybMpIkSZIkSepnlQz3i4ghwPnAvMB1mfmnhiL3AAdT3AVwKLA4sC1wb7nt2iZD9oaWy3fanPrtcjl3m7btFxF3RMQdL7/8cjeejSRJkiRJkqZVVXNSnQ5sATxDk0nTM/OXmXlSZj6Yme9k5vOZeQWwHvAPirmnjuyLhmXmGZm5Tmaus/DCC/fFKSRJkiRJktSg30OqiDgR2Bd4AdgiM1/obt3MHAccW65+omF3rZfUXG0OUett9VZ3zylJkiRJkqS+168hVUT8nGIY38sUAdUjvTjMQ+Wycbjfk+VyWJu6SzWUlSRJkiRJ0nSg30KqiDge+BrwKrBlZj7Qy0MtWC7fbth+V7lct8X55wRWLVfv7uW5JUmSJEmS1Af6JaSKiOOAbwKvA1tl5n3TcLhdy+XtDdv/TtFDa8mI2KRJvV2AWYDbM3PMNJxfkiRJkiRJHdbnIVVE/Ag4HBhLEVC17cUUEWtGxLYRMbhh+5CI+DrFcEGAE+r3Z+YE4Phy9bSIWKSu7grAceXqMb19LpIkSZIkSeobQ/ry4BGxPfDtcvVR4KsR0azoQ5lZC5GGA5cBr0XEXcBLFEP8VgMWByYCh2Xm1U2OcwKwCbAd8EhEXEfRe2pLYHbgpMy8vANPTZIkSZIkSR3UpyEVsEDdz+uUj2ZuYnJPp3uBE4H1gFWAjYEEngXOAU7JzDubHSQzJ0TEDsABwD7A1sAE4E7g1My8cFqejCRJkiRJkvpGn4ZUmTkKGNXDOk8Ah07DOScCJ5cPSZIkSZIkzQD67e5+kiRJkiRJUiuGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXKGVJIkSZIkSaqcIZUkSZIkSZIqZ0glSZIkSZKkyhlSSZIkSZIkqXIDNqSKiN0j4paIeCMi3o6IOyLiwIgYsM9ZkiRJkiRpRjUgA5uIOAW4AFgHuAW4BvgwcDJwiUGVJEmSJEnS9GXAhTURsRNwAPACsHpmbpuZOwIrAA8COwJfrbCJkiRJkiRJajDgQirgyHJ5eGY+UtuYmS8C+5erR9ibSpIkSZIkafoxoIKaiFgSGAGMAy5u3J+ZNwFjgMWADfq3dZIkSZIkSWplQIVUwFrl8v7M/G+LMrc3lJUkSZIkSVLFBlpItUy5fKpNmacbykqSJEmSJKlikZlVt6FjIuJbwDHABZm5R4syxwDfAs7IzC832b8fsF+5uiLwcB81ty8tBLxSdSNmMl7z/uc1739e8/7nNe9/XvP+5zXvf17z/uc1739e8/7nNe9/M/I1H5aZCzduHFJFS6ZnmXkGcEbV7ZgWEXFHZq5TdTtmJl7z/uc1739e8/7nNe9/XvP+5zXvf17z/uc1739e8/7nNe9/A/GaD7Thfm+Xy7nalBlaLt/q47ZIkiRJkiSpmwZaSPVkuRzWpsxSDWUlSZIkSZJUsYEWUt1dLj8SEXO0KLNuQ9mBaIYerjiD8pr3P695//Oa9z+vef/zmvc/r3n/85r3P695//Oa9z+vef8bcNd8QE2cDhARdwJrA3tl5nkN+0YCNwIvAEtk5sT+b6EkSZIkSZIaDbSeVADHlsufRMTytY0RsQhwarl6nAGVJEmSJEnS9GPA9aQCiIhTgf2B94BrgQ+ALYB5gNHAzpk5obIGSpIkSZIkaQoDMqQCiIjdgQOB1YDBwEPA2cBpM3ovqoj4B3AycFFmjqu6PZIkSa1ExKAZ/W8vSZLUPwZsSDWQRcREIIFXgbOA0zPzqWpbJUnSjKOcEuDLwIbAwsDlmXlYuW99YA2KL4PGVtbIASIingF+DfxvZr5YdXskSdL0ayDOSTUz+BRwDbAgcDjwaERcHhFbV9ssSZKmfxGxL/Af4OvA/wDLAwvVFZkTOA3Ysf9bNyAtAXwfeCoifhsRH626QTODiDg7Ir7QjXJ7R8TZ/dGmmUVE/CIivlt1O2YWEbF6RKxadTskdYY9qWZgEbEccACwF7AARe+qxyj+sD7Hb38ldWUa/4jOzPxhxxoj9YOI2Ai4CXgb+CFwM/BPYFRmfqEsMwh4BbgpMw2qplH54fEgYHdgKMXfK/+huKHN+Zn5ToXNG7DKnveTXtdtyv0v8IXMHNw/LRv4IuID4I+ZuVPVbZkZlK/1mzNz06rbMjOJiO2BDzLzqqrbooHFkGoAiIjZgc9SBFYjKP74ew/4LXBqZt5VYfMGHOcE00BSN3w4elCtVj79UNM5EXEcxXv201W3ZSCLiMuBTwCbZObfy21TfZiPiOuAJTJzpWpaOvBExNzA3hQ3t1mJ4r3kLeBcijlDH6qudQNPD0KqUcDnMnOWfmnYTKAc4npbZu5WdVtmBhHxGnBlZu5RdVtmJhExAbg2Mx3N00/K1/p/MnOTqtvSlwypBpiIWBc4GPgcxR9/UHxD/IvMvKSyhg0gzglWrYhYElgcmL1Vmcy8uf9aNGOLiO9NS/3M/H6n2jKzK99bJgBXUoRVV1fcpAEpIl4CHsnMjeq2NQupLgC2zcx5K2jmgBcRm1Hc4GZ7YAjF/6s3UnwJdLkTrU+7HoRUtwPDM3Ph/mnZwBcR5wBbUVzX8VW3Z6CLiOuBOTJzw6rbMjOJiJeBv2bm56puy8wiIt6m+D9yQF9zQ6oBJCIWBb4E7AcsWW5+E5iH4o+/fwCfdtLSaRMR21H8Yb0VRW8SP1T2g4j4NHAsxdwx7WRmDumHJkkdFRE/p+hlMj8O3+4zEfE+MLq+h0OLkOpyYMvMnKuCZs40IuJDwBHAV5n85dpzwInAKZn536raNiNqmFtqb+BR4NYWxYcAKwNrA1dk5vZ927qZR0QsDdwNXAYc4pDWvhUROwCXAp/IzL9U3JyZRkRcASyZmWtU3ZaZRUTcA7w40HuvGVINABGxCcVQvx2AWYDxwB+AXwH/ArYDjqL4I+R3mbl7NS0dWJwTrP+UweBlFDd7eAN4nCKAbSozN+unpkkdVQ7f3p3ivWVtHL7dceUwnOczc726bc1CqoeAQZn54QqaOVOIiLUovvT5DMVk9ROAh4CPULz2nwA+npmPVNbIGUz5Wq7p7lDuF4CtM/PffdOqmU853+OHKabjeBW4FngKaBa6Or/jNCpDwW9Q3LH1bIq/GVtdbxxW3xnlZ9DrgS9n5llVt2dmEBHfoJhPc5XMfKLq9vQVQ6oZVEQMBT5PMa/DKhR/hLxIcYvn0zPzhYbyg4F7gcUycyHUMc4J1vci4u/AehRh608z84OKmyT1uYhYj+ID/C4Uw1sTuB3nxJsmEfE7YGdgg8y8o9w2RUgVEVsBVwNnZuZ+lTV2AIqIWSlCqQOAdSn+fnkV+F+K/zOfjYg1gB9QfMl2ZWZuW1V7ZzQRsVftR4oP67dSTE3QzDhgDPAP3086q5vzPTq/Y4eUcyNBeT27KG6P+w4pQ6pdKT6P/pWuw0Gn45hG5Wf6PwBrUPRCHp2Z71fbqs4zpJoBRcSpFHNODaV4M/4XRa+pi9t9eC+7gO/lf4R9xznB+kZEvAM8mJnrVN2Wgab8AwPgX5n5Xt16t/gHR9+LiAWAL1J8Q7wMk+fEO5NiONSYCps3w4mI9YHbKD6cf5Gih8N4ypCq/DdwAbAoMMLeJZ0REctQfJDZh6L3cVAMhzoJ+G2zP7Ij4p/Aipk5Xz82dcCIiCcpAu3Dqm7LzCYijqbrsGQS53ecNuVrvSfXe5m+a83Mo0kY2+53YDjYARHxOMX1Hsbk6/0SrXtpLtdfbeskQ6oZUPmGMA64CDgpM2/vZr29gZGZuU8fNm+m5ZxgfScixlLMlzGgJwmsQt0fGCtn5v/VrXeHf3D0k4j4KMWcPbs07Hof+CXwncyc0FhPzUXE14GfUrzWa+/TbwAfAAtR/AH4tcz8ZVVtHEgi4krgYxRDtsdTzB3zq8y8rYt6ZwF7++WaJE1/IuJGehYOOh3HNGoY0t2VGbaXpiHVDCgivgP8OjNfrrotck6w/lDeCn5O79rSeXV/YOxZDrOprXeLf3D0nYiYC9iTovfJqhTByTMU895dA+xB0RNoTuC4zPx2RU2dIUXEx4GjKYac1fs3cFRm/rHfGzVAlX9UvwScQTElwXPdrLcdsLa9TDovIlYAVgeeqg17lSRN3yJiWE/Kz6h3oDekmgFFxC+AsZn5g6rbMrNyTrD+Vc4P8xdgm8y8pur2SH0pIlahCL73AOameH+5mWJY1Oj6HlMRsRTFPFUfZOZSFTR3hhcRC1IMoxwMPNPdAEXdFxF74Dxq/a68K+4Xge9n5j/rtn+HIqCtDdH5bWbu0f8tnDlExLwUYfjCFKFg2x6EkjSzM6SaAUXEB8AfM3OnqtsyM3JOsL5X3qWl0ReBb1Jc6yuAp4GmXV69a0vvRcQ8FN2D36q6LTObiNiVIpzamOK95b8UcyOd1G5epIj4DfBZh15KqhcRl1IMs1wkM98tt60K3EfR6/sfFHdSnA/YJTMvraipA1IZTp1A8Tdj7f353LobNHyR4gYBn87Mf1TTyoElIkYCBwEbUoSC52fmvuW+rYDNKIYav9D6KOqt8sYYCwLvZ+ZrVbdHMy7/oJ0xvUDxx4Wq8RWKOcFqHx67NScYRU+I7twKWvAkzYecBcUthr/Rpm7ie9u0GEvRM2f9itsxM/pduXwKOJXiznKvd6PeGIphgJJUby3g3lpAVdqD4v/JL2bmeRGxLPAAxZyahlQdUg7XvpHiDlwvAXcAn2go9meKHvg7UASGmgblZPVHMeXf2vU/jwUOp/g/85R+a9hMICI+TzFv5poUcw+eC9TC2B0p5tP8dmY+UVUbB5oyBN+DyYHsdZl5fLnvw8Bw4JbMbHqnxemdH+RmTNcCW0XEkMw0rOp/3wXOyMyXelIpM0cBo/qiQQPQ0/RgXiR11FvAI1U3YiZ1PcWQvj9lZrcnxszMIyhuQ6weiIgNgS2AxYHZWxTL2rfw6r6y53Bvec07Z0GKLx3qjQTeBi4EyMzHI+JWYOV+bttA9w2KgOp84CuZ+W7jhMeZ+UJEPABsXkUDB5Jy/rrvUnxh8zWKL4anuFFRZt4eES8D22JI1TERMYpi/sygeG8Z2lDkYeAzFHdz/Wm/Nm6AiohtKDpLzEdx3ZMifK1ZERgN7A78vp+b1xGGVDOm7wHbA6dHxCGZ+U7VDZqZZOaPqm7DQJeZw6tuw0zsQSbfnVL9KDO3rLoNM4OImI3ij7btapvaFE/AwKTn9p6Gul7zzpmNutd3ORRnTeCmhi85XwA26t+mDXi7AM8BX8rM99uU+z9gg/5p0oB2MMXdbrfJzAcBIpq+td8DLN9/zRrYImIvijl676GYluNuYIo7DWfmAxHxDPBxDKmmWTlk+1KKHOdUikC2MYj6C/Au8Kkm+2YIhlQzpr2Bq4B9gO0j4lqK4SHNuvNlZv6wH9smacb2v8CvI2JEZt5ZdWOkPnA0xRc9bwO/AR4C3qyyQQPQPlU3QAA8T3Fzl5pNKIKrvzWUG4r/BjptWeDqLgIqgPcoerxp2owA/lELqNp4GQPZTvoSRQ/87TJzDLQMB//NlO9F6r1vUbyP71i7C3FETBFEZeYHEXE3RW/OGZIh1YzpaIpvGgNYiKILZaPa/gQMqfpARCxOkVB/GJiH5t/GO2xBM5TMPCsi1gCuiYifAJdR3I2oqz+01UERsTLt31vIzPP6tVEDx27AO8C6mflw1Y0ZiDLz3KrbIABuAvaIiMMovln/IcXfhX9pKLcq8Gw/t22g+4DWw4jrLUURmGvazEERQHVlgb5uyExmNYpwcEwX5cYCi/V9c2YKmwJ31wKqNsZQvLfPkAypZkw/wPl6KhURhwLHAbPUby6XWbfusIUOiIiPU9zZ74eZeUOLMpsD3wGOzcxr+rN9A0lE1HfT/nH5aPXNWHpHuc6KiP8BzqD9/DC19xZDqt5ZHLjBgEozgWMoJuU+tnwEcG39DV/KCXaXBU6vooED2MPAWhExW6sveSJifoqeDnf1a8sGpueBlbpRbhWK0SfqjFnoXsi6CEVwq2m3IMUQv67MShHezpD8cDEDysyjq27DzCwitgZ+QdE1/mcUifaGwJcpxrnvBCwDnEgxRlvTbh9gHeBfbcr8C1iXYjisIVXv9eQOlN6tsoMiYiXgr8CcwG0U3zouQ3HXv+Up7tQ1mGIyzDeqaeWA8DIObdJMIDP/LyI2ophIehGK/ycb54TZAriX4k5z6pxLKL7M/AlwaIsyP6YYanlRP7VpILsB2DsiPpaZf21WICJ2A4ZR/H2uzniaLnrrRMRg4CPAY/3SooHvdbo3d+xyNNw8YEZiSCX13MEUvRi2Ku8Ucg6wYWb+L0BEHAWcTNGDakR1zRxQRlDcRrvlTQIy8+2IuAdYv99aNQBl5qCq2zATO4IioPpyZv5v+d6yTGZ+DiYNATyXYhjghtU1c4Z3JfAJ75DbfyLiuz0o7lyaHZSZ/6G8FXyL/acBp/Vfi2YaJwN7AV+NiHUoJjoGGB4R+1NMrD6SYq6es6pp4oDyU+BzwMUR8U3gD7UdETEnsDPwK4rJpH9VSQsHpquBgyJij8w8v0WZLwMfAqblrq+a7F/A1hGxQmY2vRt3RKwLrA78tl9b1kGR6agxqSci4iXgicxcv1w/B/h8Zg6uKzML8ARwY2buUU1LB46IeBcYnZm7d1HuQmD7zGy8/a003YuIJ4H3M3PFcr3Ze8siwKPA6Zl5WCUNncGV1/BO4ArgEOdb63sRMZHJc2U2qv9DNChCqsFNykkzlIhYAriY4u599XPFUv58J7BDN+bzUTdExGeAURRD0GrXewJFD2SA8cCemWnPtQ6JiCWB/1B8wfYzih6Ed1D0AP8hRRj7LYrJ1T+SmS9V1NQBoxzRcxVFwL1rZj5c/h87KjO/EBHLApdTDG0dmZm3VtjcXrMn1QwsImYHNqPribv9RrKz5gUer1sfBxARc9V6+pR3Vfgbxe9H0+59iuvelXlpuPWtNANZjCI4qZkAUD+nSWa+FBE3ATsChlS98xWKb3+/BGwTEddTDFmY2KSs/4d2xvdbbB9EMfxmU2Bpim/an+mnNkl9qgyf/icitgE+QTH312CK1/hVFF++2VugQzLzdxFxP8X8pFtTfDYaQnH382uBH3jX4s7KzGcjYkeKnmuHl4+kuEHJbhSfTd8Edjag6ozMvDoiTgK+CjxQvuYT2DIi/kkxNcQQ4BczakAF9qSaYUXEThSTXLa7S4XfSPaBiBgD3JOZnyzXj6X4sLh6Zt5fV+5yiiGBc1bT0oEjIm6jGM++dGY2nYsnIuah+MPv/zJz3f5s30AUEbNSzK+2KZPHvo8BbgT+YO+TzouIV4CbMnOncv0XwCHAcpn5ZF25i4BtfW/pnS569dRM6vXg/6F9r/zS7XRgS2BtP8x0RsONMLrijTA0YERxt5cFKULBVzLTLzD7UEQsBvw/4ONMHcb+NDO9e2iHRcRXgO8y9V0TX6W40dQMPazV/4xmQBGxPkU3yokUY01XpbgF6HEUk+tuRdGj5Cy8pXBfeJLim9+aeyg+zHwGOAomDSfZFO8g0imXUnSXPzsidm8MSMpA5WyKCUj/0KS+eqC8w9yFFLfGbvwgvy9wbER8bkb+hmY69SxFb5Kah8rlZsA5MGko8fp071bbaq5Vrx5VJDPfK//gfgL4EbBfxU0aKLwRhmZKZQ+1V6pux8wiM19gck8q9YPMPD0izgDWZMpg8F8DYb5Ne1LNgCLiYuDTFHPvXNE4b0lELETxgWZtim8kZ9iZ/adHEfED4NsUExo/HRFDKcKo+SjGYj9L0QNlKeD4zDyyqrYOFOWkl3cBK1CEhBcw+QP8isAewHCKuXrWbjfButqLiI8A/6SYX+BxiiD8yXL3cIowdjmKyUfXr+89qGkTEadQ3Mlyscx8s5zP5AmKa30kxXvLl4BPAr+rTaguDRQR8Sdgrczszp2L1EtlL5NhFO8l3wdOyczvVduqgcleyf2vvOYjmPJ63+m1lmYchlQzoHK42SuZuUa53mxy3bkpPtxckplfqaalA1N5h62vAedl5i3ltk9R9DyZo67o3cAmBiadERHDgMsovjFofOMKih5tn64fFqWei4g/UMx3dCxwVGZObNg/CPgBxUSYl2bmzv3fyoEpIragGPL09cz8Y7nt+xQ9NOsn2x1L8UHenpoaUCLiKmCzzJy96rbMLCLio8ANFBNK/67q9gwkXfRKToovHuyV3CHlsOGjKeYdnLth99vAr4HvZeZ/+7lpM4Xyi7VNmDIcvNmhfn2r/Lt8wXL11ca/22dUhlQzoIh4H7g8M3ct1/+X4vbCQ+vfeCPiUmBEZg5rfiR1UvnmvC3FPGEPAX90DHxnld/+bg9sQ/EtcFJMeHw1xb8J39CmUTkv0suZuXIX5R4EFs7MhfqnZTOvcg7CnZn83vLLzHyi2lZJnRURH6boMftiZi5XdXtmJuVku5mZG1TdloHCXsn9KyLmoJgcfQOKQHAMU17vJSj+ZvwXsLlBVedExMLASRQ9Bgc17E6KKTsOcq7BzipvyPD/gI8CtS923gNuBU7MzCuralsnOCfVjOl1YLa69bHlckngkbrtCSzST22aaZQTdGdmvlW/vbyLy6+radXAFhEHA+9m5pkUt1W9vOImDWRzUHxQ7MpdwKf6uC0CMvMPONdax0TEd3tQ3Lv7dUBEfL7N7qHASsCeFO8/9ubpf09RTHiszvkBRUDVqlfy95jcK/n7FF9EqPe+BWwI/Bs4JDNvrN8ZESOBE4H1KIbP9+T/AbUQEQsAt1BMxzERuI0pw8ENKF7ba0TEhpn5WgXNHHAi4pcUd/er9dCsvb/MQTE39ZYRcUpmHlxB8zrCnlQzoIi4HRiSmWuV63tRzEH19cw8odw2F8U3N29l5vKVNXYAKu8MdXtmrl91W2YWETEeuCozt6u6LQNdRNwFjM3Mzbsodz0wf+19SJpRdHF3v/o/iry7X4fUXfOWRcrlnyluVT6u71ulmvIW5ktm5rxVt2WgsFdy/4qIR4GFgBUys+mNRcoeP49QTJniZ6MOiIhfAQcB1wFfyczHGvYvC5xGcefWkzPzkP5v5cASEXtT3CzqLeAE4DcUo0qguPnOHhQ9rOYGvpiZ51TQzGlmT6oZ043AIRGxcPlG/GeK7sLHlrcAfRb4PMWb9aWVtXLgeospe6yp771Mcd3V904HTo2IjTLzb80KRMRGFPMOHNSvLRtgyqCvtzIzt+hYY2Yure7uN4hiGPGmFH/onU1xpxxNu/NoHVKNoxiac12r9xz1jYhYkOLfw0oUHzLVOfZK7l9LAH9pFVABZObLEXEDxZQR6owdKP5G36HZHLyZ+XhEfJqi48SOgCHVtDsIGA9smZm3N+x7DPh+RFwJ/A04gPLu0DMaQ6oZ08UUk0evBfw1M1+NiK8DpwLfKMsExR/XR1XSwoHtQSZPCqj+cSuwbtWNmBlk5hkRsRLwl4g4leJOirX5j4YDn6P4T+/EzDy9mlYOGJvSukdPV+wG3UuZ2SqkAiZNvns6xQeZtfulUQNcZu5ddRtmRhHxeJvdQykm2w2KoPDo/mjTTORh4EPdKPch/OKzE16h+ODelfFlWXXGIhRz8La8SVRmvhMRNwGOhuiMVYCbmgRUk2Tm7eU1/5/+a1ZnOdxvAIn/3959h0lWlukf/94MWclBkjIgQUBRBBRBSSJJRFDQRSQLirrGn6yRINe6iDmgsCIM4LKAioAooOQcJYiOCAJDRmFIkgbk/v3xnt5pmq6OVXWmTt2f6+qrp855T/UzNTXV5zznfZ9HWo9StG6guO6xth+tNagGkrQPpfbUm21fV3c8/UDS6yjFLg8HDk6B9M6RNJli/7admx9jNGgJ1DWU6doPjOf4qlZVdECVqLoD+LXt/eqOJ2Iiqs+Ykcyi1JM50PYVXQipb0jaj3LzeJNRZiVfRCkqnZs+kyDpx5TaRysPrRk7aMzClJkmp9r+cDfjaypJfwP+aHuHUcadBrwuTTEmT9I/KJNUdh1l3InAlr26lDhJqogJqNZgfxD4OvArYIbtZ+uNqrmqortvBfahJGBPpxR6HbY7i+3juxdds4zhomZEtod2dokWJP2MMv19Acrd3bOBaZS7kmO5IxwdJOnXwDq2M3N2nEYplD6SF4AnKYV3b2xKK+26SBqpu/MsSs2kfNZ0iKRvA/tSklWtZiX/xPZnawmwQaqlq1dRlg7vb/vPQ/avQamNtDywge2Hux9l80g6jPI+Xs32sDfaqlI0fwWOtH1AN+Nroirhtyawequb9lU39FuA6bZ7cjlxklQR4zTOmSaZWdIGwxQ6HvGDK4WOo1dIWgjYBdiT0gXHwEzKBc002zfUFlyfk3QWsJnt+UcdHC8yhkLpY/F3Sle0o9sQUkRHZRZyd0k6ZpjNiwPbU5LdN/HipODrKeeQZwAzbe/ThTAbT9KClHp2iwKfsX3WkP1bA98CHgc2tz3szeUYO0mvB66glCX4D9vPDdk/N2USxf7Ahr16HpkkVcQ4jXemSWaWTJ6kaYzjgsf2Xp2LJqo7NNsCe9lO2+w2kbQasBewG7Ac5T1/E6Xo5Ym2U0ejS6p/iz8AD2Z5wvhJupCJJ6kWAFamNH8xsLPtNIGJOVpmIXfXJF/vdG2doBYNX+al1D4y8ChlJiyU5OCi1Z+vAJ5Nw5fxazEzeQPgw5SZg7/gxQnZnSi1k48ErurV1SVJUvWgzOSJiDpIWhXYm5JEWRYya60TJM0FbEWZXbU95QTweeAU27vVGFojjLIU7eWUTme7AQsDh9n+UlcCixcZ1Gb7Etub1BxORMxBJO0xmeNtH9euWPpJkoPdN8LM5FarS160vVdf8ySpelBm8kREt1RTud9PSU4NdAkRpeXwSbbTTriDqjobxwLbAQ/ZXrrmkHreGJaiDZzgnQnsZHtW56OK4Ui6DFjL9qJ1x9KLxnFT8zlKx7NrKcuMT+tYUBHRsyRN6oaB7YvaFUu/GO9qkqF6dXVJklQNUi3BWRF4J3AIcITtg+qNKiJ6UdV1aG9gZ+BllAt3Az+ndKI72/ZkanDECCStTplJNTBrTcCltjeuM64mGOWEbxZl+vx5rTpyRfdIOgHYNTfbJmaCsx4MHN+rFzYREdH7kqRqKElvBS4AdrN9Ut3xRLRL1aFlNcpSHA03plfXX9et6sCyB6Uu0qrMfn1vBJYGlunVacO9oGqPPVBE/U2U1/9h4ETK7Ibr64suovskLQDMa/uxumPpVZIOBz5C6TB3IqUz7guU2iUfoOowB3wX2Az4BrAU5fzxxO5H3DySpgBLAC2bMNi+q3sRNZukeYF1KZ38oNx4uC6zYiN6R5JUDSbpKsr63w3qjqVJUhOsHpI2BP4bWGOkYWTN+7hUJ8/bU2ZNbQVMobyOAx3mjrV9g6RLKF1C8tq2UTUD9h2UxNS7KUWj/wWcDUwDzhjauSUiYiwk7QUcBWxs+8oWY94MXALsb/unkjYALgfOtb1l96JtnuqG8UHAWym1BVvJuWIbSJoHOBj4GLDQkN3/BH4AHJLfqRFzviSpGkzSKcA2tod+UMckpCZY90l6DaVWxoKUk+dlgJWAk4BVgHUoyZXTgceyTGHsJD1I6aIlSnLkd5QaSGcMvuuYJFX7Sfoaszv5CZhOee1PsP1gnbE1ySiF0kfyAvAkpVPRjbYn1b0rotskXUv5nThiRy1J5wGL2l63enwd8CrbS3UhzEaStCWlrt1A8ulhSqJkWLZX6kZcTVXdcPstsAXl9+n9wO3V7pUpy+YNnAtsm3IF7SNpMcqMzM0o5zOtZgw63XLbR9IrgU0Y/TU/tHtRtU+y9s22FuUkO9qoVdIpNcE66vOUBNWHbf9E0rHASrZ3hf9bAngcZRngW+oLsyctRTlxuwf4N9uX1xxPP/k85bW/ljJr6qpq+/KSlm910ADbf+hcaI0yjUkUHa38XdJXbB/dhngiuuU1lJs3o3kAePOgx7cDr+1IRP3jUMp11jeB/7L9SM3xNN1+lFnJfwU+afucwTslbUVZ0roFsC9wZLcDbCJJqwAXUW4eD1uCY5DMjGkDSXMDPwQ+xOzXfOhrb2bXkk2SKuYMVTeoQygnJ+fVHE7fcJmWeCdwhKQbgQskTU9NsLbYFLjV9k+G22l7uqTtgNuArwAHdDG2XncPsEL1dbGkCygX9b+0/UydgfWR9aqv8TD5HT5WFzPxk+MFKHfhXwEcJWmm7VPbFllEZz0LvGEM495QjR0wL/BEB+LpJ6+j1EHK+Uh37E6Z+fp22/cO3Wn7HElbAH+h1N5Mkqo9vkWZpXYJ8B3gVkaYMRhtcTAlKfs8ZfZgI1/zLPfrQZJuH2H3yynFGUXpUrR5ZkbUIzXB2kfSM8BvbL+3enw0pbj3grafHTTu18BrbK9aT6S9Z1BNpH0otanmo1zQPwGcTKlJdWWW+7WfpDuZXFvhLA/pEkl7AscAl9ieVAvuiG6RdDqwHaUOz1dbjPky8FXKEu8dqm03Ua4RXtetWJtG0gPA+bY/UHcs/UDSY8BFtrcfZdwZwCa2F+lOZM1Wve4PU869U5i+CyTNABYHNrJ9U93xdEruwvamqaPsn0XJaB9o+4rOhxMtzAC2qTuIhhh6h+Dx6vuylNlrA55mdjeXGINqBuDvgN9VdQU+SCmi/nrKlPgPSboVWLS2IBvK9tS6Y4ixsT1N0r6U/xcRveJAyk2IgyTtQrnxMIOSHF8ReB9l1v0zlLvzSHoVZanfj2qIt0kuJksmu2ke4KkxjHuqGhvtYeDqJKi6amngvCYnqCBJql410t3zWcA/bD/frWCipdQEa597gFcNevyX6vtmlELTA11d3gz8o7uhNUdVM+MHwA8kvYEyu2oXSq0vAEv6HXACcKrtJ2sJNKIet5Oad9FDbN9YLYX/GbA6ZTn8YAIeBHazfUO17WlKYusvxGQcAlwh6VO2v1t3MH1gBvA2SfO2SphImhd4WzU22uMGSj2q6J67ePHy7EbKcr+INhtUE2x/SqY7LZwnSdIRlOV9y9h+vCoqfQfljtgXKEmsfSlF608aKKgek1ed1O1Ief23AOai3Dl7GviV7d1qDC+iayQtAMxr+7G6Y4kYj+q9uxOlE9TAbOP7KLN9fm57LDNQYpwkbQD8L3AvcDblXGXYm5e2j+9iaI0j6evA5yizBfe3/eiQ/YsAR1BuvH3D9ue7HmQDVUnw04CNU16mOyQdAnwMmGq7cbWoBiRJFTFOqQnWfZLeTily+VnbZ1TbDqHcFR74EBPwKLCO7dwl6wBJK1CSVXtQikk7NaoiIiJeStLnKOcpLxttbH6XTk51g/h6ShL2CeDXlJuZppyvvAtYiJIoXMf2zJpCbRxJ/06pa/dD4BxGTsbe1cXQGknSfMD5lMLp+9r+a80hdUSSVD1O0hRKUmT+VmPygdBekkZbwpeaYF0i6b2Uu8OLU5YmfNf2HfVG1R8kbQbsZXv3umOJiIiYk0j6MPDj6uGNlO7DLWc92N6rG3E1maRVgBOZ3S138E1MgGuAD9j+W7djazJJbwWOBkZrWmTbKTXUBpJeBlwBrEFZvtoqMWjbb+9mbO2SJFWPkvRmStb6bZRuXK3kA6HNJK04wu7UBIuIiIjoY5L+DLwaeLfts+uOp59USZPBS1vvpXT+u7S+qJpJ0qaUpazzVpseZuRkbLoST5KkJYHfA2szOwHbSs+ueEiSqgdJ2gg4l9nJqUeY3e3sJfKBEBEREdFfJP1rHMNzU7ONJD0FXGb7HXXHEtEpki4BNgIOBw4bWgss2k/S0ZQu3LdQSqGMNkvzoi6F1lZJUvUgSecCmwM/Ab5i++81h9RXJM0Ebra9cd2xNJWk8ydxeM9ObY2IiGiXMZQneBHbc3Uqln4jaQZwhe1/qzuWfiDpGOBS28eMMm5PSpHvvbsSWMNJegL4i+31646lX0i6n7K0b80mN3LJHZPe9CZguu0P1x1In5oXuLvuIBpuU0otgdGmsQ4nmfeIiOh7rZJOkgSsSOmIewhwhO2DuhlbHzgdeI+keW3PqjuYPrBn9X3EJBVl1s8elJkoMXlPA7fWHUSfWQg4q8kJKkiSqlcJuKnuIPrYbcCSdQfRJ64GTgAeqDuQiIiIJnBZRnEncISkG4ELJE23fVK9kTXKgcA7gOMlfTTd5OYY89Ci81xMyCXAWnUH0WemUxJVjZblfj1I0uXAs7Y3qzuWfiTp/wGHUqZZppNcB0j6GbAjsAClxerZwDTgjBSlj4iIaB9JV1FyVxvUHUtTVMvPFgXeDTwBXMvIHbj26V50zVMtbZ022jI+SdcAU20v1Z3Imk3SmpQbyl+y/b264+kH1ZLVI4G1bf+15nA6JkmqHiTp/cD/AOvZvqHmcPqOpCnAL4HXA58HTrP9bL1RNY+khYBdKFO4N6As45tJee9Py3s/IiJi8iSdAmxju/F357ulSpqMtWxBz3bgqlOVCBywJ2WlQ6sOfnMDawBvBH5je/vORtcfJO0OrA98FLgcOIfWyVhsH9+96JpL0mHA7sBXgHNs31NzSG2XJFWPknQI5QPhQMqH7V01h9Q3JN1OOelYkdn1j/5OWZc9lG2/uluxNZWk1YC9gN2A5Siv+03AscCJth+qMbyIiIieJelPwAq2F6k7lqaQtMd4xts+rlOxNNWQxgBjTQg+AGxl+4+diaq/DJOMHTGxkGTs5PVL19YkqXpQv7w551Tj7JaTu2NtJGkuYCvKHbPtKUXsnwdOsb1bjaFFRET0FElLUAqn7w+cZ3vLmkOKGLNBiUBRCqZfCvy0xfBZwL3AlSlk3z6SpjGOhkW29+pcNP2hX7q2JknVg/rlzTmnkrTieMbbntGpWPpZdXJ9LLAd8JDtpWsOKSIiYo5Rzfxu5eXAEpQL/FnA5rYv70pgEW0m6U7KDcsD6o4lIiYvSaqI6CmSVqfMpNoNWJZygn2p7Y3rjCsiImJOMoabmrMo3bkOtH1FF0LqS5LWAt4CLAX8yfYZ1fa5gLkzsyci4sWyDCwi5niSFmZ2EfU3URJTDwM/pBRRv76+6CIiIuZIK42wbxbwj3TM7RxJr6J0Jt5k0ObjgDOqP38I+LGkLW2f1+XwGkXSfMArgEdsP9FizELAYsADSQx2hqRVKMnYh5vceS46L8vAIiZB0lskfUHSEdXXFyVtWHdcTaBiS0knAvcDPwbWA34L7AwsZ/uTSVBFRES8lO0ZI3zdb/v56nftOyX9su54m0TSksDFwKbAzZRzmKGFvX9O6YL27q4G10yfBO4A1h1hzLrVmI93JaI+IWluSQdKehC4hVIb7POD9u8q6XJJr60tyAaStIqkb0i6VNItkg4ftO/NkvaTtGiNIU5KZlJFTICkVYETKG1XYUhXC0nXArvbvqWG8HqepK8xu5OfgOmU+lMn2H6wztgiIiJ6XXUeszezl85He30BeBXwdeCLti3po4MH2H5E0k3AW+sIsGG2B+62fWGrAbYvlHQPJSn47W4F1mSS5qbcPH47pZHRdGDNIcMuo1wzvZeSsI1JkrQPcASlgRSU688lBw1ZkJIYf45y/dRzkqTqUZLmpdw12AlYDVi4xdB092szSa+k3B17BfA48Gvgzmr3VEoh7/WBiyS9yfZdNYTZ6z5P+cC9ljJV/qpq+/KSlh/tYNt/6FxoERERvUfSgsD7KcmpgVnfAv4BnFRXXA31LsqsnS965ALAtwNv605IjfZq4IYxjPszsHZnQ+krHwe2AM4F9rB9/9BaeLbvlHQbsCWlm2hMgqSNgKOAfwJfolyTXjVk2EXAY5TkbZJU0R2S5gcuYHZtnhGHdz6ivnMoJUF1AvAJ248N3lnVT/o+sDvwVUodpZiY9aqv8TD5bIuIiAD+76Jmb8pS+ZdRzg1NWW52AnC27X/VF2EjvRI4c5QEFZTZJ4t1IZ6mWxyYOYZxMyldLaM9dqPUiH2f7UdHGDcdWKcrETXfAZTP720GGl5IL77ct/2CpOuBNbofXnvkQq43fQZ4M3AWZTbVlykfEvMDqwAfBD4NfMv2V+oKssG2Bu4C9hmu4KjtxyV9CNisGhvjdxfV0smIiIgYH0nLAHsAewGrMvum5Y3A0sAytv+tpvD6wdPAomMYNxV4tJOB9ImHKNdAo1mFvN7ttDpw4SgJKoAnKAXVY/LeAlw9ho6sDzD+G/1zjCSpetNOlGVmu1QJEQPYfo6Sqf6SpEuA30j6k+1M4W6vRYDzR+qIUxUjvZwUw5wQ21PrjiEiIqKXSJpCWd6xN7AVMIWSnJoJ/A9wrO0bqnPEZWoLtD/cDKwraZGhM+4HVOULXk9ZmhOTcxXwbknr275muAGS1qdctP+mq5E1mynF/0ezHPBMh2PpF4sA94xh3Mvp4VxPuvv1plWBq2w/Xj0eKNY9ZWCA7bOBa0gHi064g7FNzV4EmNHhWCIiIiIA7gN+AbyTkpw6G3gfs7vh3lBjbP3mRMpMqqOqOrIvImkuSmmI+YCfdTe0RjqK8p4/TdI7hu6stv2qenhkNwNruDuA11fv52FJWoBSB2x616Jqtr8DK41h3OrAvR2OpWOSpOpNc1HW/w54uvq+6JBxfwPS7rP9jgc2lbR6qwGSXgNsTqn1EBEREdFpA8tp7gE2sf1O27+wPavOoPrU0ZSuZu8Dpkv6frX9tZK+Trlg35Eyi+rEekJsDtvnUBJVywJnS5oh6XfV1wxKwnY54Gjbv60z1oY5A1gB+OwIYw6g3Nw/vSsRNd9lwBsltVzKVyVlVwMu7FZQ7ZYkVW+6j/JBO2Bgyt/QbhVTSV2fTvgGZarwhZL2rwqlAyBpIUkfAc4HzgQOqynGiIiI6C/3UGaTrABcLOn3knatGu5EF1UlIbYFTqHMehhY2bAe8DnKqojTgHePobh6jIHt/Sl1e2dSCtdvUX29knJz/7O2P1xfhI30bUrto8MknSjpPdX2JSVtI+kY4EBKrdkf1RVkw3yH8jl/qqQth85ik7QxcAylKcMPaoivLZTPxd4j6VfABraXrR5vBFxSfW1n+wlJu1DqD1xhe6P6ou19km5vsWsqs5OAj1bfFx20/y7gBduv7khgERERERWVFk/vAPah1Kaaj3Ke8gRwMqUm1ZVVTaoNbU9p+WTRNpLWALYBVqbUCbsbOMv29bUG1lBV+ZP1gBUp7/+7gOtGqiUbEyfpdZRZUlN56eQIUd7v77R9c5dDayxJn6VMmjClTvXCwGPAc8CSlNf9M7a/W1eMk5UkVQ+StB9lPfXmti+stl1Gqfb/POVkZNFq+E62fzXM08QYSRpLQcBWnJPAiIiI6CZJi1G6Pe9NKc4N5YLmVso54lI5P4mmqWaVLF49nGl7MufwMUbVbM29GCYZC/y37SdrDK+RJG0DHAysP2TXH4Gv2D6j60G1UZJUPUjSyyknHHfavrfatjTwU8qHw1zAI8B/2v52bYE2hKQVJ3O87RRPj4iIiFpIegNldtUuzL6AN3AepXbmqbmIbK9qmdOlto8ZZdyewMa29+5KYA0kaXHKcsrtKddHA8ufXgBupNRN+pHth+qJMKJzJC1BWVI8Bbjb9n01h9QWSVI1jKQFKV3lHszdg4iIiIgAqLrM7UiZ8bAF5WLelAY8v7K9W43hNUo1C3/aaMknST8B9s6stomRtCOl/s7ClCVOwxlY8rqP7V92K7Z+IGlR24/WHUc0TwqnN4ztp2zfnwRVRERERAywPcv2yba3ptSPOYjSQn5B4AN1xtbH5qHM+IlxkrQz8HPKzfmbKQXpNwXWANas/nwA8CdKEutkSe+rI9YGu1/SyVWR9OQVukDSfJJeJWmhEcYsVI2Zt5uxtVNmUvUASbtP8NAXgCeBO4Ebk7hqL0mLUOo9vIXS9vk824dX+1ajnABeYvvp2oKMiIiIGIGkzYC9bE/0fDOGGMdMqmuAqbaX6k5kzSBpKeBvlATrp22P2MVM0ieBbwFPAavY/nvno2w+Sc9SEq2mdPn7GXCc7T/XGliDSToA+C/g7QO1qYcZsyllOffnerX0T5JUPaD6RTfZf6i/U4qoHd2GkPqepK0p3RMXpUwvNuVDee9q/7sorYU/YPvkmsKMiIiIiC6o6lAN2BO4Dbi0xfC5KTN+3gj8xvb2nY2uWSR9Ffgy8PmBG8RjOOY/KBf3h9o+qJPx9YuqQcMHgD0oHRWhXBNdC0wD/jfLAdtL0qXACranjjJuBqV+9SZdCazNkqTqAZIuZOJJqgUoXRaWrJ5jZ9untim0viTptcDVlBOMo4CLKa2dpw1KUs0DzAR+bTtT6CMiIiIabEg3aNO6RtJgDwBb2f5jZ6JqpoEZaMAytv81xmPmprzed9ge2hEtJknSGpTk7K7AcpT/A7MoheuPA87Oqp7Jk3Q/cIPtbUYZdxawtu3luxNZe81ddwAxOtubTvY5qu4hxwCfBJKkmpwvAvMBOw6095T0otlStp+TdD2z2z5HRERERHPtVX0X5Zz7Ukrn7eHMAu4FrrQ9qwuxNc3KwGVjTVAB2H5e0uXARp0Lq3/Zng78h6QvUBoz7AW8G9gZ2Am4H1ihvggbY3HKRIjRzASW6HAsHZMkVZ+wPU3SviRp0g6bAtcPJKhGcC/w2s6HExERERF1sn3cwJ8lHUxJQB3X+oiYhJdROvaN1xPVsdEh1Wyp3wG/k7Qw8FXgE8CytQbWHA8Bq4xh3CrAo50NpXNShb+/3E7pbhGTswSlzsBo5qUst4yIiIiIPmF7qu0D6o6jwR6iLPcbrxWrY6ODJC0m6WPAucC/1x1Pw1wFrCep5ZLVat96lPI0PSlJqv6yH7BY3UE0wCOMbbrqq4EHOxxLRERERMzBJC0raf3qa7m642mA64A3SXrVWA+QtCLw5urYaDNJc0naTtLPgfuA71MSJfcAXwNWrzO+BjmKsqT4NEnvGLqz2var6uGR3QysnbLcr4/Yfhp4uu44GuBqYCtJq9q+dbgBVQZ7beB/uxpZRERERMwRJH0E+DRDludIug34nu0f1RJY7zsZeBdwjKRtR6vrJWleSp2wuapjo02qhlJ7UgqmL01JoDwNnAQcC5zndGprG9vnSDoK+DBwtqR7gFuq3atTJlII+Int39YU5qSlu1/EOEnaCjgL+CPwPtu3VB1dptneW9LKwOnAmsAmtlu1H46IiIiIhpE0BTgF2IFywfgCpXA0lNo8c1G6n50B7DSeAuABkgRcA6xDuXn8UdvXtxi7LnAEsD5wA7BekibtIek64A3M7mR5JSUxdbLtx+uKqx9I+hTwJV5aHP0h4L9sf6frQbVRklQREyDpe5Q11gb+BKxFKZR+P+UX5tzAt23/v9qCjIiIiIiuk/QZ4JuUc8OvACcOzPaRNA/wAeBQYHngc7a/XVesvUrSCsAllDpTA+fjVzO71MYrgA2ANShJlLuBjWzf0/1om6m6SX8fcDzlZv1faw6pr1TJ8PWY/X/gLuA628/XGlgbJEkVMUHVFO4DgWWG7HoYONT297sfVURERETUSdLNwErA2rb/1mLMqymz8u+wvVY342sKSYsBPwJ2Znat5cEXtwOz2H4BfMz2w92NsNmq1SW/rzr6RbRNklQRo5C0PXCX7RuG2TcXZZrrysAUyl2aq5uQwY6IiIiI8ZP0NHC+7XeOMu43wOa20w16EqpSG9sB6wJLVZsfohRJP7NVojCi10lahfKef7hJM9lSOD1idKcB04C9h9l3NHCp7WO6GVBEREREzLEeA8ZSk+eJamxMgu3bKd3koiaS3gJsSlnCCmWp64W2r6gtqIaSNDfwReBjwJLV5uOorlUl7Vrt28/2zbUEOUlJUkVMzp7V9ySpIiIiIgLgXGATSfO26jxXdZzbCDi/q5FFtJGkqcD/UOp/wewi6q72XwF80PadXQ+ugaoE1W+BtwPPA9MpzboGuww4AXgv0JNJqrlGHxIRERERERFj9GVgAeAESUsO3SlpcUqx6fkpMyIiek71Pr4AeAvwJHAS8J/V10nVtg2B86v6YTF5Hwe2AM4Dptp+7dABVULwNmDL7obWPplJFRERERER0T67A2dW37eV9HvgjmrfVMrF44KU2Q67Sxp8rG0f2r1QIybsc5TOcr8A9h9amL5KYh0J7FSNTUJ28najNOl6n+1HRxg3ndJxvielcHrEKKr2qtNsv6Qm1Uj7IiIiIqL/VOeHZvbSp1YGjxn4s21P6WB4EW0h6c/AIsDKtp9tMWY+4HbgMdtDl6XFOEn6J6XW13aDtr3kelTSz4D39mpThsykioiIiIiIaJ+vUtXkiWiwqcAZrRJUALaflXQJsH3Xomo2Ay+MYdxywDMdjqVjkqSKGJtlJG08gX3YvrhDMUVERETEHMb2wXXHENEFz1GWrY5mgWpsTN4dwOslzWV72GSVpAWAtSlL/npSklQRY7NV9TWUR9g3sD//zyIiIiIiokmmA5tJWsb2A8MNkLQMsDnwp65G1lxnAF8APgt8o8WYA4DFgNO7FVS75eI5YnR3kSnbERERETFOkhYB1geWAmbYvrzmkCLa5WfA94FzJX3C9vmDd0raDPges5sExOR9G9gLOEzSOpSi9QBLStoG2BnYg3L9+qN6Qpy8FE6PiIiIiIhooyo59R1gV2ZPDDhuoLixpA9Rale9x/aV9UQZMXGS5gZ+D2xCuaF/H2U5moGVgOUpzQAuALa0/a+aQm0USa+jzJKayksnUgi4G3in7Zu7HFrbzFV3ABEREREREU0h6WXAhcCewCPAWby009+ZwCuAHboYWkTb2H4e2Br4JvAkJSn1VuBtwArVtm8C2yZB1T62/wisCXwM+C1l2eVfgfMoywDX7OUEFWQmVURERERERNtIOgg4iLIc6iO2n2rRJv6PwNO231RTqBFtIWl+YF1KogrgXuA62z3bYS7qk5pUERERERER7bMzZenTvrafHWHcX4ENuhNSROdUyajL6o6j6SQtDWwGrAUsAbwAzARuAi6y/VCN4bVNklQRERERERHtszJwzigJKoBnKBeaEXM8SRtP5njbF7crln4jaTHgW8AHgSkthj0n6TjgANuPdS24DkiSKiIiIiIion2eA+Yfw7hXAv/scCwR7XIhE+94bpJ7mBBJr6C89qtRatvNBP4APESpMb4ksA6wGPAhYCNJm/byrKq8USIiIiIiItrnFmAdSfO1mk1VzYx4PeViM6IX/JnxJ6lWAhbsQCz95L+B1YHbgE/Z/u1wgyRtR+kougZwJLBT1yJssySpIiIiIiIi2ucXwGHA14FPtRjzNeDlwCldiiliUmy/dqxjJa1FeY+vWW26pyNBNZyk1wHvAv4GrD/SMj7bZ0q6DLgG2FHSmrb/3KVQ22quugOIiIiIiIhokB9S2sL/u6RLJX2m2j5V0v6Szgf2A/4I/LSuICPaTdIrJR0L3ABsBzwKHEBZqhbjtwtl9tpnxlJnyvYjwGcoywJ36XBsHSN7ostKIyIiIiIiYihJywM/p3TvM+WiceDCS8B1wA62760nwoj2kbQE8CXgI5R6bE8B3wMO7/Ui3nWS9HtgXduLj+MYAQ8D19resmPBdVCW+0VERERERLRRlXzaUNLWwLaUjn9TgLuBs4DTnNkC0eMkLQh8tvpaCPgXpR7SV20/UGdsDbE6cP14DrBtSX+oju1JSVJFRERERER0gO2zgbPrjiOinSTNTZk19SVg6WrzKcCXbf+ttsCaZ1HgHxM47h/A+u0NpXuSpIqIiIiIiOggSe8FdgCWohSRPtn272sNKmICJO0KHELp3Cfgd8AXbI9rxk+MycsoSyfH65nq2J6UwukRERERERETJGkLSVdL+nyL/cdSZpl8ANgS2Bs4W9LXuhhmxKRI2lbSDcDxlOWr1wBvt711ElQdo5qOrVVmUkVEREREREzc1sC6lK5aLyLpfcAe1cM/AOcDrwJ2Av5D0pm2L+9WoBGTcCal+P9TwPeBXwJIeuNYDrb9h86F1mjLSNp4vMd0JJIuSXe/iIiIiIiICZJ0GbCq7aWH2XcpsCFwDvBO2y9U2/cFjgKOtb1PN+ONmAhJLzC7Q+V42XYmyIzTJF9zbE9pYzhdkyRVRERERETEBEmaAUy3vfWQ7QsDMynLbjayfeWgfVOAGcATttfoZrwREyHpTiaXMFmpfdH0h359zZPNjIiIiIiImLilgIuH2b4+pQbwzMEJKgDb/5J0E/C2LsQXMWm2p9YdQ7/p19c8hdMjIiIiIiImzsBiw2wfqNXTqhbPTGCejkQUEdGjkqSKiIiIiIiYuLuBtSUN7aa1CSWBdVWL4xYH/t7JwCIiek2SVBERERERERN3IbA88PGBDZLWArasHv6mxXFvAO7rZGAREb0mSaqIiIiIiIiJ+w7wHPBdSZdKOhW4HJgCXDu0HhWApPUpbeKv7mqkERFzuCSpIiIiIiIiJsj2LcAewNPAhsAOwELA/cDuLQ7bv/p+bqfji4joJbIn3NEwIiIiIiIiAEmvALYDlgbuAk63/c8WYz9KKZp+tO0nuxdlRMScLUmqiIiIiIiIiIioXZb7RURERERERERE7ZKkioiIiIiIiIiI2iVJFREREREjknSwJEs6uO5YIiIiormSpIqIiIjoc1UCKoVKIyIiolZJUkVERERERERERO2SpIqIiIiIiIiIiNolSRURERExCYOXyknaU9K1kp6U9ICkn0paqto3v6RDJP1V0jOS7pL0n5LmafG880j6uKSrJD0u6WlJ0yUdJmmJYcZPrWK5U8VHJd0g6SlJj0g6XdJrhxxz8OBlfgN/l5GW/0l6haSjJN0j6VlJd1QxzT+Z1zEiIiJCdsoPREREREzUoGTO4cCngIuAJ4ANgWWAm4CNgHOANar98wGbAAsCP7G935DnnB84C9gUeAq4oPr+tuo5ZwCb27590DFTgTuqfRcB7wcuBh4D1gdWBB4H1hk4TtIOwA7AHtXTHDc4Dtt7VuMOBg4CjgG2AgRcDiwMvLX6e/za9vZjfNkiIiIiXiJJqoiIiIhJGJSkehDYzPb0avtiwBXA6sDNwKPAdrYfq/a/AbgGmAKsZHvGoOc8HPgc8BdgC9v3VtsXAE4A3gtcafstg46ZSklSUX1/h+2/VfvmA04FtgWOtr3vcH8H22rxdzyYkqQCOBr4mO1Z1b41gKuBlwNvtX3Z6K9aRERExEtluV9EREREexw4kKACsP0IcGT1cE1gv4EEVbX/BuC3lFlJmwxsrxJR+1cPPzGQoKqOeRr4CPBPYANJG7WI5RMDCarquGeBQ6qHb5/Q3664u3ruWYOeezolcTbZ546IiIg+lyRVRERERHucPcy226rvMwYnsAa5tfq+3KBt61JmJd1n+/dDD7D9EPDr6uGmwzzn8y1i+cswP2u8zq8SZZ147oiIiOhzSVJFREREtMc9w2z75wj7Bu8fXHR8+er7HbQ2UItq+WH23W/7+aEbbT9e/XG+EZ53NHe12D7w3CmeHhEREROWJFVEREREG9h+YYTdI+1r+ZQTDGUiP2tOeO6IiIjoc0lSRURERMxZBmpQrTTCmJWHjI2IiIjoeUlSRURERMxZrqMsA1xe0ksKkUtaAnhX9fDCNv3M56rnnrtNzxcRERExbklSRURERMxBqsLkA10Bvydp2YF9kuYHfkwprH6l7cva9GMHZmSt0abni4iIiBi33C2LiIiImPN8BViP0r3vVknnA08DbwOWpRQw37WNP+9XwKeB86qf9U8A2x9q48+IiIiIGFGSVBERERFzGNvPSNoS+AiwG7AZMA9wJ3ACcLjth9v4I79EKdS+I/Ce6mcBJEkVERERXSN7oo1jIiIiIiIiIiIi2iM1qSIiIiIiIiIionZJUkVERERERERERO2SpIqIiIiIiIiIiNolSRUREREREREREbVLkioiIiIiIiIiImqXJFVERERERERERNQuSaqIiIiIiIiIiKhdklQREREREREREVG7JKkiIiIiIiIiIqJ2SVJFRERERERERETt/j+sT8NMaVABEgAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 1440x720 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "ax=result23.plot.bar('month','Accident Distribution', rot=90,title=\"Accidents distribution over month \",figsize=(20, 10),color=\"Orange\")" + ] + }, + { + "cell_type": "code", + "execution_count": 507, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DataFrame[accident_index: string, accident_year: string, accident_reference: string, location_easting_osgr: string, location_northing_osgr: string, longitude: string, latitude: string, police_force: string, accident_severity: string, number_of_vehicles: string, number_of_casualties: string, date: string, day_of_week: string, time: string, local_authority_district: string, local_authority_ons_district: string, local_authority_highway: string, first_road_class: string, first_road_number: string, road_type: string, speed_limit: string, junction_detail: string, junction_control: string, second_road_class: string, second_road_number: string, pedestrian_crossing_human_control: string, pedestrian_crossing_physical_facilities: string, light_conditions: string, weather_conditions: string, road_surface_conditions: string, special_conditions_at_site: string, carriageway_hazards: string, urban_or_rural_area: string, did_police_officer_attend_scene_of_accident: string, trunk_road_flag: string, lsoa_of_accident_location: string]" + ] + }, + "execution_count": 507, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DataFrame[accident_index: string, accident_year: string, accident_reference: string, location_easting_osgr: string, location_northing_osgr: string, longitude: string, latitude: string, police_force: string, accident_severity: string, number_of_vehicles: string, number_of_casualties: string, date: string, day_of_week: string, time: string, local_authority_district: string, local_authority_ons_district: string, local_authority_highway: string, first_road_class: string, first_road_number: string, road_type: string, speed_limit: string, junction_detail: string, junction_control: string, second_road_class: string, second_road_number: string, pedestrian_crossing_human_control: string, pedestrian_crossing_physical_facilities: string, light_conditions: string, weather_conditions: string, road_surface_conditions: string, special_conditions_at_site: string, carriageway_hazards: string, urban_or_rural_area: string, did_police_officer_attend_scene_of_accident: string, trunk_road_flag: string, lsoa_of_accident_location: string]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018" + ] + }, + { + "cell_type": "code", + "execution_count": 662, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+-----------------+---------+---------------+\n", + "|accident_severity|road_type|Total accidents|\n", + "+-----------------+---------+---------------+\n", + "| 3| -1| 1|\n", + "| 1| 1| 471|\n", + "| 2| 3| 44030|\n", + "| 3| 3| 291457|\n", + "| 2| 2| 6566|\n", + "| 1| 2| 328|\n", + "| 2| 6| 262089|\n", + "| 3| 1| 136135|\n", + "| 1| 3| 5983|\n", + "| 3| 2| 42394|\n", + "| 3| 6| 1416841|\n", + "| 1| 7| 205|\n", + "| 2| 1| 14601|\n", + "| 1| 6| 22595|\n", + "| 3| 9| 16857|\n", + "| 2| 7| 2489|\n", + "| 1| 9| 116|\n", + "| 3| 7| 22311|\n", + "| 2| 9| 1958|\n", + "+-----------------+---------+---------------+\n", + "\n" + ] + } + ], + "source": [ + "A2018ts_df = TimeAccident_dfmonthly_new.groupby(\"accident_severity\",'road_type').agg(F.count(TimeAccident_dfmonthly_new.accident_index).alias('Total accidents'))\n", + "A2018ts_df.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+-----------------+---------+---------------+\n", + "|accident_severity|road_type|Total accidents|\n", + "+-----------------+---------+---------------+\n", + "| 3| -1| 1|\n", + "| 1| 1| 471|\n", + "| 2| 3| 44030|\n", + "| 3| 3| 291457|\n", + "| 2| 2| 6566|\n", + "| 1| 2| 328|\n", + "| 2| 6| 262089|\n", + "| 3| 1| 136135|\n", + "| 1| 3| 5983|\n", + "| 3| 2| 42394|\n", + "| 3| 6| 1416841|\n", + "| 1| 7| 205|\n", + "| 2| 1| 14601|\n", + "| 1| 6| 22595|\n", + "| 3| 9| 16857|\n", + "| 2| 7| 2489|\n", + "| 1| 9| 116|\n", + "| 3| 7| 22311|\n", + "| 2| 9| 1958|\n", + "+-----------------+---------+---------------+\n", + "\n" + ] + } + ], + "source": [ + "A2018ts_df = A2018.groupby(\"accident_severity\",'road_type').agg(F.count(A2018.accident_index).alias('Total accidents'))\n", + "A2018ts_df.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "A2018_df=A2018ts_df.toPandas()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>accident_severity</th>\n", + " <th>road_type</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>3</td>\n", + " <td>-1</td>\n", + " <td>1</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>1</td>\n", + " <td>471</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>3</td>\n", + " <td>44030</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>3</td>\n", + " <td>291457</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>2</td>\n", + " <td>2</td>\n", + " <td>6566</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>1</td>\n", + " <td>2</td>\n", + " <td>328</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>2</td>\n", + " <td>6</td>\n", + " <td>262089</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>3</td>\n", + " <td>1</td>\n", + " <td>136135</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>1</td>\n", + " <td>3</td>\n", + " <td>5983</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>3</td>\n", + " <td>2</td>\n", + " <td>42394</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>3</td>\n", + " <td>6</td>\n", + " <td>1416841</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>1</td>\n", + " <td>7</td>\n", + " <td>205</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>2</td>\n", + " <td>1</td>\n", + " <td>14601</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>1</td>\n", + " <td>6</td>\n", + " <td>22595</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>3</td>\n", + " <td>9</td>\n", + " <td>16857</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>2</td>\n", + " <td>7</td>\n", + " <td>2489</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>1</td>\n", + " <td>9</td>\n", + " <td>116</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>3</td>\n", + " <td>7</td>\n", + " <td>22311</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>2</td>\n", + " <td>9</td>\n", + " <td>1958</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " accident_severity road_type Total accidents\n", + "0 3 -1 1\n", + "1 1 1 471\n", + "2 2 3 44030\n", + "3 3 3 291457\n", + "4 2 2 6566\n", + "5 1 2 328\n", + "6 2 6 262089\n", + "7 3 1 136135\n", + "8 1 3 5983\n", + "9 3 2 42394\n", + "10 3 6 1416841\n", + "11 1 7 205\n", + "12 2 1 14601\n", + "13 1 6 22595\n", + "14 3 9 16857\n", + "15 2 7 2489\n", + "16 1 9 116\n", + "17 3 7 22311\n", + "18 2 9 1958" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018_df" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "from scipy.stats import spearmanr" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "numpy.int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\n", + "A2018_df['accident_severity'] = A2018_df['accident_severity'].astype(int)\n", + "type(A2018_df['accident_severity'][0])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from scipy.stats import chi2_contingency\n", + "table = [[10, 20, 30],[6, 9, 17]]\n", + "stat, p, dof, expected = chi2_contingency(table)\n", + "print('stat=%.3f, p=%.3f' % (stat, p))\n", + "if p > 0.05:\n", + "\tprint('Probably independent')\n", + "else:\n", + "\tprint('Probably dependent')" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "stat=0.607, p=0.002\n", + "Probably dependent\n" + ] + } + ], + "source": [ + "from scipy.stats import pearsonr\n", + "from scipy.stats import kendalltau\n", + "data1 = A2018_df['accident_severity']\n", + "data2 = A2018_df['Total accidents']\n", + "stat, p = kendalltau(data1, data2)\n", + "print('stat=%.3f, p=%.3f' % (stat, p))\n", + "if p > 0.05:\n", + "\tprint('Probably independent')\n", + "else:\n", + "\tprint('Probably dependent')" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>accident_severity</th>\n", + " <th>road_type</th>\n", + " <th>Total accidents</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>1</td>\n", + " <td>1</td>\n", + " <td>471</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2</td>\n", + " <td>3</td>\n", + " <td>44030</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>3</td>\n", + " <td>3</td>\n", + " <td>291457</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>2</td>\n", + " <td>2</td>\n", + " <td>6566</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>1</td>\n", + " <td>2</td>\n", + " <td>328</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>2</td>\n", + " <td>6</td>\n", + " <td>262089</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>3</td>\n", + " <td>1</td>\n", + " <td>136135</td>\n", + " </tr>\n", + " <tr>\n", + " <th>8</th>\n", + " <td>1</td>\n", + " <td>3</td>\n", + " <td>5983</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>3</td>\n", + " <td>2</td>\n", + " <td>42394</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10</th>\n", + " <td>3</td>\n", + " <td>6</td>\n", + " <td>1416841</td>\n", + " </tr>\n", + " <tr>\n", + " <th>11</th>\n", + " <td>1</td>\n", + " <td>7</td>\n", + " <td>205</td>\n", + " </tr>\n", + " <tr>\n", + " <th>12</th>\n", + " <td>2</td>\n", + " <td>1</td>\n", + " <td>14601</td>\n", + " </tr>\n", + " <tr>\n", + " <th>13</th>\n", + " <td>1</td>\n", + " <td>6</td>\n", + " <td>22595</td>\n", + " </tr>\n", + " <tr>\n", + " <th>14</th>\n", + " <td>3</td>\n", + " <td>9</td>\n", + " <td>16857</td>\n", + " </tr>\n", + " <tr>\n", + " <th>15</th>\n", + " <td>2</td>\n", + " <td>7</td>\n", + " <td>2489</td>\n", + " </tr>\n", + " <tr>\n", + " <th>16</th>\n", + " <td>1</td>\n", + " <td>9</td>\n", + " <td>116</td>\n", + " </tr>\n", + " <tr>\n", + " <th>17</th>\n", + " <td>3</td>\n", + " <td>7</td>\n", + " <td>22311</td>\n", + " </tr>\n", + " <tr>\n", + " <th>18</th>\n", + " <td>2</td>\n", + " <td>9</td>\n", + " <td>1958</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " accident_severity road_type Total accidents\n", + "1 1 1 471\n", + "2 2 3 44030\n", + "3 3 3 291457\n", + "4 2 2 6566\n", + "5 1 2 328\n", + "6 2 6 262089\n", + "7 3 1 136135\n", + "8 1 3 5983\n", + "9 3 2 42394\n", + "10 3 6 1416841\n", + "11 1 7 205\n", + "12 2 1 14601\n", + "13 1 6 22595\n", + "14 3 9 16857\n", + "15 2 7 2489\n", + "16 1 9 116\n", + "17 3 7 22311\n", + "18 2 9 1958" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018_df=A2018_df[A2018_df.road_type != \"-1\"]\n", + "A2018_df" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.dropna()" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead tr th {\n", + " text-align: left;\n", + " }\n", + "\n", + " .dataframe thead tr:last-of-type th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr>\n", + " <th></th>\n", + " <th colspan=\"3\" halign=\"left\">Total accidents</th>\n", + " </tr>\n", + " <tr>\n", + " <th>accident_severity</th>\n", + " <th>1</th>\n", + " <th>2</th>\n", + " <th>3</th>\n", + " </tr>\n", + " <tr>\n", + " <th>road_type</th>\n", + " <th></th>\n", + " <th></th>\n", + " <th></th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>471</td>\n", + " <td>14601</td>\n", + " <td>136135</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>328</td>\n", + " <td>6566</td>\n", + " <td>42394</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>5983</td>\n", + " <td>44030</td>\n", + " <td>291457</td>\n", + " </tr>\n", + " <tr>\n", + " <th>6</th>\n", + " <td>22595</td>\n", + " <td>262089</td>\n", + " <td>1416841</td>\n", + " </tr>\n", + " <tr>\n", + " <th>7</th>\n", + " <td>205</td>\n", + " <td>2489</td>\n", + " <td>22311</td>\n", + " </tr>\n", + " <tr>\n", + " <th>9</th>\n", + " <td>116</td>\n", + " <td>1958</td>\n", + " <td>16857</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " Total accidents \n", + "accident_severity 1 2 3\n", + "road_type \n", + "1 471 14601 136135\n", + "2 328 6566 42394\n", + "3 5983 44030 291457\n", + "6 22595 262089 1416841\n", + "7 205 2489 22311\n", + "9 116 1958 16857" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A2018_dfpiv=A2018_df.pivot(index ='road_type', columns ='accident_severity')\n", + "A2018_dfpiv" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "A2018_dfpiv=A2018_dfpiv.dropna()\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Observed Values :-\n", + " [[ 471 14601 136135]\n", + " [ 328 6566 42394]\n", + " [ 5983 44030 291457]\n", + " [ 22595 262089 1416841]\n", + " [ 205 2489 22311]\n", + " [ 116 1958 16857]]\n", + "Expected Values :-\n", + " [[1.96314350e+03 2.19287320e+04 1.27315124e+05]\n", + " [6.39913608e+02 7.14797161e+03 4.15001148e+04]\n", + " [4.43335700e+03 4.95215441e+04 2.87515099e+05]\n", + " [2.20911581e+04 2.46762952e+05 1.43267089e+06]\n", + " [3.24643722e+02 3.62633968e+03 2.10540166e+04]\n", + " [2.45784055e+02 2.74546037e+03 1.59397556e+04]]\n", + "Degree of Freedom:- 10\n" + ] + } + ], + "source": [ + "A2018_dfpiv=A2018_dfpiv.dropna()\n", + "\n", + "dataset_table=A2018_dfpiv\n", + " \n", + "dataset_table.values \n", + "Observed_Values = dataset_table.values \n", + "print(\"Observed Values :-\\n\",Observed_Values)\n", + "import scipy.stats\n", + "b=scipy.stats.chi2_contingency(dataset_table)\n", + "Expected_Values = b[3]\n", + "print(\"Expected Values :-\\n\",Expected_Values)\n", + "#Degree of Freedom\n", + "no_of_rows=len(dataset_table.iloc[0:6,0])\n", + "no_of_columns=len(dataset_table.iloc[0,0:3])\n", + "df=(no_of_rows-1)*(no_of_columns-1)\n", + "print(\"Degree of Freedom:-\",df)\n", + "\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# The method for measuring Chi-Square value for the selected factors" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "r [4193.795574610202, 218.67280881776227, 1204.6776335388686, 1138.2752182581148, 475.84594970392686, 347.1751350618879]\n", + "chi-square statistic:- 7578.4423199907615\n", + "critical_value: 18.307038053275146\n", + "p-value 0.0\n", + "Significance level: 0.05\n", + "Degree of Freedom: 10\n", + "Reject H0,There is a relationship between 2 categorical variables\n" + ] + } + ], + "source": [ + "r=[]\n", + "for o,e in zip(Observed_Values,Expected_Values):\n", + " a=(o-e)**2./e\n", + " \n", + " r.append(a[0]+a[1]+a[2])\n", + "print(\"r\",r)\n", + "chi_square_statistic=0\n", + "for i in range(len(r)):\n", + " chi_square_statistic+=r[i]\n", + "print(\"chi-square statistic:-\",chi_square_statistic)\n", + "alpha = 0.05\n", + "from scipy.stats import chi2\n", + "critical_value=chi2.ppf(q=1-alpha,df=df)\n", + "print('critical_value:',critical_value)\n", + "#p-value\n", + "p_value=1-chi2.cdf(x=chi_square_statistic,df=df)\n", + "print(\"p-value\",p_value)\n", + "print('Significance level: ',alpha)\n", + "print('Degree of Freedom: ',df)\n", + "if chi_square_statistic>=critical_value:\n", + " print(\"Reject H0,There is a relationship between 2 categorical variables\")\n", + "else:\n", + " print(\"Retain H0,There is no relationship between 2 categorical variables\")\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 624, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/seaborn/distributions.py:2619: FutureWarning: `distplot` is a deprecated function and will be removed in a future version. Please adapt your code to use either `displot` (a figure-level function with similar flexibility) or `histplot` (an axes-level function for histograms).\n", + " warnings.warn(msg, FutureWarning)\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "<Figure size 432x288 with 0 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sns.distplot(A2018_df['accident_severity']);\n", + "fig = plt.figure()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 511, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<AxesSubplot:>" + ] + }, + "execution_count": 511, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 1440x648 with 2 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "corr = A2018_df.corr()\n", + "plt.subplots(figsize=(20,9))\n", + "sns.heatmap(corr)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+\n", + "|accident_index|accident_year|accident_reference|vehicle_reference|vehicle_type|towing_and_articulation|vehicle_manoeuvre|vehicle_direction_from|vehicle_direction_to|vehicle_location_restricted_lane|junction_location|skidding_and_overturning|hit_object_in_carriageway|vehicle_leaving_carriageway|hit_object_off_carriageway|first_point_of_impact|vehicle_left_hand_drive|journey_purpose_of_driver|sex_of_driver|age_of_driver|age_band_of_driver|engine_capacity_cc|propulsion_code|age_of_vehicle|generic_make_model|driver_imd_decile|driver_home_area_type|lsoa_of_driver|\n", + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+\n", + "| 200501BS00001| 2005| 01BS00001| 1| 9| 0| 18| 6| 2| 0| 0| 0| 0| 0| 0| 1| 1| 15| 2| 74| 10| -1| -1| -1| -1| -1| 1| E01001924|\n", + "| 200501BS00002| 2005| 01BS00002| 1| 11| 0| 4| 5| 1| 0| 3| 0| 0| 0| 0| 4| 1| 1| 1| 42| 7| 8268| 2| 3| -1| -1| -1| -1|\n", + "| 200501BS00003| 2005| 01BS00003| 1| 11| 0| 17| 7| 5| 0| 0| 0| 4| 0| 0| 4| 1| 1| 1| 35| 6| 8300| 2| 5| -1| -1| 1| E01000638|\n", + "| 200501BS00003| 2005| 01BS00003| 2| 9| 0| 2| 0| 0| 0| 0| 0| 0| 0| 0| 3| 1| 15| 1| 62| 9| 1762| 1| 6| -1| -1| 1| E01000605|\n", + "| 200501BS00004| 2005| 01BS00004| 1| 9| 0| 18| 8| 4| 0| 0| 0| 0| 0| 0| 1| 1| 15| 2| 49| 8| 1769| 1| 4| -1| -1| 1| E01002842|\n", + "| 200501BS00005| 2005| 01BS00005| 1| 3| 0| 18| 1| 5| 0| 0| 1| 10| 0| 0| 1| 1| 15| 1| 49| 8| 85| 1| 10| -1| -1| -1| -1|\n", + "| 200501BS00006| 2005| 01BS00006| 1| 9| 0| 5| 4| 8| 0| 0| 0| 0| 0| 0| 0| 1| 15| 1| 51| 8| 2976| 1| 1| -1| -1| 1| E01002833|\n", + "| 200501BS00006| 2005| 01BS00006| 2| 3| 0| 18| 4| 8| 0| 0| 0| 0| 0| 0| 0| 1| 15| 2| 30| 6| 124| 1| 2| -1| -1| 1| E01004315|\n", + "| 200501BS00007| 2005| 01BS00007| 1| 3| 0| 18| 8| 4| 0| 1| 0| 4| 0| 0| 1| 1| 15| 1| 31| 6| -1| -1| -1| -1| -1| -1| -1|\n", + "| 200501BS00007| 2005| 01BS00007| 2| 9| 0| 2| 0| 0| 0| 1| 0| 0| 0| 0| 2| 1| 15| 1| 41| 7| 4266| 1| 4| -1| -1| 1| E01002875|\n", + "| 200501BS00009| 2005| 01BS00009| 1| 9| 0| 18| 3| 7| 0| 0| 0| 0| 1| 0| 1| 1| 15| 1| 68| 10| 5343| 1| 16| -1| -1| 1| E01001871|\n", + "| 200501BS00010| 2005| 01BS00010| 1| 9| 0| 18| 7| 3| 0| 8| 0| 0| 0| 0| 2| 1| 15| 1| 35| 6| 1998| 1| 13| -1| -1| 1| E01003229|\n", + "| 200501BS00010| 2005| 01BS00010| 2| 9| 0| 9| 3| 8| 0| 8| 0| 0| 0| 0| 1| 1| 15| 2| 48| 8| -1| -1| -1| -1| -1| 1| E01002913|\n", + "| 200501BS00011| 2005| 01BS00011| 1| 11| 0| 9| 2| 8| 0| 8| 0| 0| 0| 0| 0| 1| 1| 1| 42| 7| 8268| 2| 2| -1| -1| 1| E01000861|\n", + "| 200501BS00011| 2005| 01BS00011| 2| 90| 0| 18| 4| 8| 0| 8| 0| 0| 0| 0| 0| 1| 15| 3| -1| -1| -1| -1| -1| -1| -1| -1| -1|\n", + "| 200501BS00012| 2005| 01BS00012| 1| 9| 0| 18| 3| 7| 0| 8| 0| 0| 0| 0| 1| 1| 15| 1| 34| 6| 1988| 1| 6| -1| -1| 1| E01003829|\n", + "| 200501BS00014| 2005| 01BS00014| 1| 9| 0| 9| 6| 4| 0| 8| 0| 0| 0| 0| 1| 1| 15| 2| 19| 4| 1124| 1| 8| -1| -1| 1| E01001377|\n", + "| 200501BS00014| 2005| 01BS00014| 2| 3| 0| 18| 2| 6| 0| 8| 0| 0| 0| 0| 1| 1| 15| 2| 20| 4| 124| 1| 1| -1| -1| -1| -1|\n", + "| 200501BS00015| 2005| 01BS00015| 1| 9| 0| 9| 8| 6| 0| 3| 0| 0| 0| 0| 1| 1| 15| 2| 47| 8| 1360| 1| 2| -1| -1| 1| E01002848|\n", + "| 200501BS00016| 2005| 01BS00016| 1| 9| 0| 18| 7| 3| 0| 8| 0| 7| 7| 1| 1| 1| 15| 1| 34| 6| 698| 1| 2| -1| -1| 1| E01024185|\n", + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "from pyspark.sql.functions import concat, col, lit\n", + "\n", + "\n", + "V20052014 = spark.read.format('csv')\\\n", + " .option('header',True).option('escape','\"')\\\n", + " .load('/Users/Asfandyar/Downloads/dft-road-casualty-statistics-vehicle-1979-2021.csv')\n", + "V20052014=V20052014.filter(V20052014.accident_year>2004)\n", + "V20052014=V20052014.filter(V20052014.accident_year<2020)\n", + "V20052014.show()\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark.sql.functions import col, when\n", + "valueWhenTrue1 =\"Pedal cycle\"\n", + "valueWhenTrue2 =\"Motorcycle\"\n", + "valueWhenTrue3 = \"Motorcycle\"\n", + "valueWhenTrue4 = \"Motorcycle\"\n", + "valueWhenTrue5 = \"Motorcycle\"\n", + "valueWhenTrue8 = \"Car\"\n", + "valueWhenTrue9 =\"Car\"\n", + "valueWhenTrue10 =\"Bus\"\n", + "valueWhenTrue11 =\"Bus\"\n", + "valueWhenTrue16 =\"Ridden horse\"\n", + "valueWhenTrue17 =\"Agricultural vehicle\"\n", + "valueWhenTrue18 =\"Bus\"\n", + "valueWhenTrue19 =\"Goods\"\n", + "valueWhenTrue20 =\"Goods\"\n", + "valueWhenTrue21 =\"Goods\"\n", + "valueWhenTrue22 =\"Motorcycle\"\n", + "valueWhenTrue23 =\"Motorcycle\"\n", + "valueWhenTrue90 =\"Other vehicle\"\n", + "valueWhenTrue97 =\"Motorcycle\"\n", + "valueWhenTrue98 =\"Goods\"\n", + "valueWhenTrueo1 =\"Data missing or out of range\"\n", + "#C2017 = C2017df.withColumn(\"Vehicle_Type\", when(df.gender == \"M\",\"Male\")\n", + "# .when(df.gender == \"F\",\"Female\")\n", + "# .when(df.gender.isNull() ,\"\")\n", + "# .otherwise(df.gender))\n", + "V20052014=V20052014.withColumn(\n", + " \"vehicle_type\",\n", + " when(\n", + " col(\"vehicle_type\") == 1,\n", + " \"Pedal cycle\"\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 2,\n", + " valueWhenTrue2\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 3,\n", + " valueWhenTrue3\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 4,\n", + " valueWhenTrue4\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 5,\n", + " valueWhenTrue5\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 8,\n", + " valueWhenTrue8\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 9,\n", + " valueWhenTrue9\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 10,\n", + " valueWhenTrue10\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 11,\n", + " valueWhenTrue11\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 16,\n", + " valueWhenTrue16\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 17,\n", + " valueWhenTrue17\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 18,\n", + " valueWhenTrue18\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 19,\n", + " valueWhenTrue19\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 20,\n", + " valueWhenTrue20\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 21,\n", + " valueWhenTrue21\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 22,\n", + " valueWhenTrue22\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 23,\n", + " valueWhenTrue23\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 90,\n", + " valueWhenTrue90\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 97,\n", + " valueWhenTrue97\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == 98,\n", + " valueWhenTrue98\n", + " ).\n", + " when(\n", + " col(\"vehicle_type\") == -1,\n", + " valueWhenTrueo1\n", + " ).otherwise(col(\"vehicle_type\"))\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-----------------+\n", + "|accident_index|accident_severity|\n", + "+--------------+-----------------+\n", + "| 200501BS00001| 2|\n", + "| 200501BS00002| 3|\n", + "| 200501BS00003| 3|\n", + "| 200501BS00004| 3|\n", + "| 200501BS00005| 3|\n", + "| 200501BS00006| 3|\n", + "| 200501BS00007| 3|\n", + "| 200501BS00009| 3|\n", + "| 200501BS00010| 3|\n", + "| 200501BS00011| 3|\n", + "| 200501BS00012| 3|\n", + "| 200501BS00014| 3|\n", + "| 200501BS00015| 3|\n", + "| 200501BS00016| 3|\n", + "| 200501BS00017| 3|\n", + "| 200501BS00018| 3|\n", + "| 200501BS00019| 2|\n", + "| 200501BS00020| 3|\n", + "| 200501BS00021| 3|\n", + "| 200501BS00022| 2|\n", + "+--------------+-----------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "accidentindex=A2018.select('accident_index','accident_severity')\n", + "accidentindex.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "V20052014vech_dff=V20052014vech_dff.withColumn(\n", + " \"age_band_of_driver\",\n", + " when(\n", + " col(\"age_band_of_driver\") == 1,\n", + " \"Upto 20Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 2,\n", + " \"Upto 20Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 3,\n", + " \"Upto 20Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 4,\n", + " \"Upto 20Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 5,\n", + " \"20Y to 40Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 6,\n", + " \"20Y to 40Y\"\n", + " ).\n", + " when(\n", + " col(\"age_band_of_driver\") == 7,\n", + " \"20Y to 40Y\"\n", + " ).when(\n", + " col(\"age_band_of_driver\") == 8,\n", + " \"40Y to 70Y\"\n", + " ).when(\n", + " col(\"age_band_of_driver\") == 9,\n", + " \"40Y to 70Y\"\n", + " ).when(\n", + " col(\"age_band_of_driver\") == 10,\n", + " \"40Y to 70Y\"\n", + " ).when(\n", + " col(\"age_band_of_driver\") == 11,\n", + " \"Over 70\"\n", + " ).when(\n", + " col(\"age_band_of_driver\") == -1,\n", + " \"Data missing or out of range\"\n", + " ).otherwise(col(\"age_band_of_driver\")),\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+-----------------+\n", + "|accident_index|accident_year|accident_reference|vehicle_reference|vehicle_type|towing_and_articulation|vehicle_manoeuvre|vehicle_direction_from|vehicle_direction_to|vehicle_location_restricted_lane|junction_location|skidding_and_overturning|hit_object_in_carriageway|vehicle_leaving_carriageway|hit_object_off_carriageway|first_point_of_impact|vehicle_left_hand_drive|journey_purpose_of_driver|sex_of_driver|age_of_driver|age_band_of_driver|engine_capacity_cc|propulsion_code|age_of_vehicle|generic_make_model|driver_imd_decile|driver_home_area_type|lsoa_of_driver|accident_severity|\n", + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+-----------------+\n", + "| 200501BS70192| 2005| 01BS70192| 1| Goods| 0| 18| 1| 5| 0| 0| 0| 0| 0| 0| 3| 1| 15| 1| 29| 6| 1896| 2| 8| -1| -1| 1| E01003039| 3|\n", + "| 200501BS70192| 2005| 01BS70192| 2| Goods| 0| 2| 0| 0| 0| 0| 0| 0| 0| 0| 0| 1| 15| 1| 51| 8| 2299| 2| 7| -1| -1| 2| E01015586| 3|\n", + "| 200501BS70293| 2005| 01BS70293| 1| Car| 0| 9| 6| 4| 0| 2| 0| 0| 0| 0| 1| 1| 15| 1| 45| 7| 1999| 1| 0| -1| -1| 1| E01001623| 3|\n", + "| 200501BS70739| 2005| 01BS70739| 1| Motorcycle| 0| 4| 6| 2| 0| 1| 0| 0| 0| 0| 2| 1| 15| 1| 27| 6| 645| 1| 0| -1| -1| 1| E01002535| 3|\n", + "| 200501BS70739| 2005| 01BS70739| 2| Car| 0| 18| 6| 2| 0| 1| 0| 0| 0| 0| 1| 1| 15| 1| -1| -1| 1598| 1| 3| -1| -1| 1| E01004520| 3|\n", + "| 200501CP00077| 2005| 01CP00077| 1| Car| 0| 10| 3| 1| 0| 1| 0| 0| 0| 0| 1| 1| 15| 1| 75| 10| 2946| 1| 6| -1| -1| 1| E01015889| 3|\n", + "| 200501CP00077| 2005| 01CP00077| 2| Pedal cycle| 0| 10| 3| 1| 0| 1| 0| 0| 0| 0| 2| 1| 15| 1| 36| 7| -1| -1| -1| -1| -1| -1| -1| 3|\n", + "| 200501CP00182| 2005| 01CP00182| 1| Car| 0| 9| 1| 7| 0| 8| 0| 0| 0| 0| 1| 1| 15| 3| -1| -1| 1896| 2| 3| -1| -1| -1| -1| 3|\n", + "| 200501CP00197| 2005| 01CP00197| 1| Car| 0| 6| 7| 7| 0| 2| 0| 0| 0| 0| 3| 1| 15| 1| 67| 10| 1240| 1| 1| -1| -1| 1| E01000206| 3|\n", + "| 200501CP00197| 2005| 01CP00197| 2| Motorcycle| 0| 14| 7| 3| 0| 2| 0| 0| 0| 0| 4| 1| 15| 1| 35| 6| 498| 1| 10| -1| -1| -1| -1| 3|\n", + "| 200501CP00212| 2005| 01CP00212| 1| Car| 0| 9| 8| 6| 0| 8| 0| 0| 0| 0| 4| 1| 15| 1| 52| 8| 2664| 2| 5| -1| -1| 1| E01004416| 3|\n", + "| 200501CP00212| 2005| 01CP00212| 2| Pedal cycle| 0| 18| 4| 8| 0| 8| 0| 0| 0| 0| 1| 1| 15| 2| 30| 6| -1| -1| -1| -1| -1| 1| E01021326| 3|\n", + "| 200501CW10269| 2005| 01CW10269| 1| Car| 0| 17| 8| 5| 0| 0| 0| 0| 0| 0| 3| 1| 1| 1| -1| -1| -1| -1| -1| -1| -1| 1| E01004290| 2|\n", + "| 200501CW10359| 2005| 01CW10359| 1| Car| 0| 18| 5| 1| 0| 0| 0| 0| 0| 0| 4| 1| 15| 3| -1| -1| -1| -1| -1| -1| -1| -1| -1| 3|\n", + "| 200501CW10368| 2005| 01CW10368| 1| Car| 0| 4| 7| 3| 0| 1| 0| 0| 0| 0| 2| 1| 15| 2| 23| 5| 1149| 1| 2| -1| -1| 1| E01017959| 3|\n", + "| 200501CW10368| 2005| 01CW10368| 2| Car| 0| 4| 7| 3| 0| 1| 0| 0| 0| 0| 1| 1| 15| 1| 51| 8| 1994| 1| 9| -1| -1| 1| E01023819| 3|\n", + "| 200501CW10403| 2005| 01CW10403| 1| Car| 0| 9| 8| 6| 0| 8| 0| 0| 0| 0| 4| 1| 15| 1| 27| 6| 1389| 1| 13| -1| -1| 1| E01023720| 3|\n", + "| 200501CW10403| 2005| 01CW10403| 2| Car| 0| 18| 4| 8| 0| 8| 0| 0| 0| 0| 1| 1| 15| 1| 36| 7| -1| -1| -1| -1| -1| 1| E01004673| 3|\n", + "| 200501CW10495| 2005| 01CW10495| 1| Car| 0| 6| 2| 2| 0| 0| 0| 0| 0| 0| 3| 1| 15| 1| 44| 7| 1390| 1| 9| -1| -1| 1| E01000549| 3|\n", + "| 200501CW10495| 2005| 01CW10495| 2| Car| 0| 18| 2| 6| 0| 0| 0| 0| 0| 0| 1| 2| 15| 1| 28| 6| -1| -1| -1| -1| -1| 1| E01004650| 3|\n", + "+--------------+-------------+------------------+-----------------+------------+-----------------------+-----------------+----------------------+--------------------+--------------------------------+-----------------+------------------------+-------------------------+---------------------------+--------------------------+---------------------+-----------------------+-------------------------+-------------+-------------+------------------+------------------+---------------+--------------+------------------+-----------------+---------------------+--------------+-----------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "V20052014vech_dff = V20052014.join(accidentindex, on=['Accident_Index'])\n", + "\n", + "V20052014vech_dff.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+--------------------+-----------------+---------------+\n", + "| age_band_of_driver|accident_severity|Total accidents|\n", + "+--------------------+-----------------+---------------+\n", + "|Data missing or o...| 1| 2463|\n", + "| Over 70| 1| 2525|\n", + "| Upto 20Y| 1| 4731|\n", + "| Over 70| 2| 17507|\n", + "| 40Y to 70Y| 1| 17654|\n", + "| 20Y to 40Y| 1| 25536|\n", + "|Data missing or o...| 2| 48337|\n", + "| Upto 20Y| 2| 60174|\n", + "| Over 70| 3| 76450|\n", + "| 40Y to 70Y| 2| 166391|\n", + "| 20Y to 40Y| 2| 270225|\n", + "| Upto 20Y| 3| 351830|\n", + "|Data missing or o...| 3| 425600|\n", + "| 40Y to 70Y| 3| 931310|\n", + "| 20Y to 40Y| 3| 1795753|\n", + "+--------------------+-----------------+---------------+\n", + "\n" + ] + } + ], + "source": [ + "Age_df = V20052014vech_dff.groupby('age_band_of_driver','accident_severity').agg(F.count(V20052014vech_dff.accident_index).alias('Total accidents')).sort(\"Total accidents\")\n", + "Age_df.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "Age_df_df=Age_df.toPandas()" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead tr th {\n", + " text-align: left;\n", + " }\n", + "\n", + " .dataframe thead tr:last-of-type th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr>\n", + " <th></th>\n", + " <th colspan=\"3\" halign=\"left\">Total accidents</th>\n", + " </tr>\n", + " <tr>\n", + " <th>accident_severity</th>\n", + " <th>1</th>\n", + " <th>2</th>\n", + " <th>3</th>\n", + " </tr>\n", + " <tr>\n", + " <th>age_band_of_driver</th>\n", + " <th></th>\n", + " <th></th>\n", + " <th></th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>20Y to 40Y</th>\n", + " <td>25536</td>\n", + " <td>270225</td>\n", + " <td>1795753</td>\n", + " </tr>\n", + " <tr>\n", + " <th>40Y to 70Y</th>\n", + " <td>17654</td>\n", + " <td>166391</td>\n", + " <td>931310</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Data missing or out of range</th>\n", + " <td>2463</td>\n", + " <td>48337</td>\n", + " <td>425600</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Over 70</th>\n", + " <td>2525</td>\n", + " <td>17507</td>\n", + " <td>76450</td>\n", + " </tr>\n", + " <tr>\n", + " <th>Upto 20Y</th>\n", + " <td>4731</td>\n", + " <td>60174</td>\n", + " <td>351830</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " Total accidents \n", + "accident_severity 1 2 3\n", + "age_band_of_driver \n", + "20Y to 40Y 25536 270225 1795753\n", + "40Y to 70Y 17654 166391 931310\n", + "Data missing or out of range 2463 48337 425600\n", + "Over 70 2525 17507 76450\n", + "Upto 20Y 4731 60174 351830" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Age_df_df=Age_df_df.dropna()\n", + "A2018_dfpiv=Age_df_df.pivot(index ='age_band_of_driver', columns ='accident_severity')\n", + "A2018_dfpiv" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "size 1 2 3 4 5 6\n", + "sex \n", + "Male 1 98 24 28 4 2\n", + "Female 3 58 14 9 1 2\n" + ] + } + ], + "source": [ + "import seaborn as sns\n", + "dataset=sns.load_dataset('tips')\n", + "dataset_table=pd.crosstab(dataset['sex'],dataset['size'])\n", + "print(dataset_table)" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3.9.7 64-bit", + "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.6.7" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +}