Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save AftabHussain/f39753c5795b6e28f92f89bf91ff8ee8 to your computer and use it in GitHub Desktop.
Save AftabHussain/f39753c5795b6e28f92f89bf91ff8ee8 to your computer and use it in GitHub Desktop.
Created on Skills Network Labs
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h1><center>Simple Linear Regression</center></h1>\n",
"\n",
"\n",
"<h4>About this Notebook</h4>\n",
"In this notebook, we learn how to use scikit-learn to implement simple linear regression. We download a dataset that is related to fuel consumption and Carbon dioxide emission of cars. Then, we split our data into training and test sets, create a model using training set, evaluate your model using test set, and finally use model to predict unknown value.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Table of contents</h1>\n",
"\n",
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
" <ol>\n",
" <li><a href=\"#understanding_data\">Understanding the Data</a></li>\n",
" <li><a href=\"#reading_data\">Reading the data in</a></li>\n",
" <li><a href=\"#data_exploration\">Data Exploration</a></li>\n",
" <li><a href=\"#simple_regression\">Simple Regression Model</a></li>\n",
" </ol>\n",
"</div>\n",
"<br>\n",
"<hr>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Importing Needed packages"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import pylab as pl\n",
"import numpy as np\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Downloading Data\n",
"To download the data, we will use !wget to download it from IBM Object Storage."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2020-04-27 04:40:51-- https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/ML0101ENv3/labs/FuelConsumptionCo2.csv\n",
"Resolving s3-api.us-geo.objectstorage.softlayer.net (s3-api.us-geo.objectstorage.softlayer.net)... 67.228.254.196\n",
"Connecting to s3-api.us-geo.objectstorage.softlayer.net (s3-api.us-geo.objectstorage.softlayer.net)|67.228.254.196|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 72629 (71K) [text/csv]\n",
"Saving to: ‘FuelConsumption.csv’\n",
"\n",
"FuelConsumption.csv 100%[===================>] 70.93K --.-KB/s in 0.04s \n",
"\n",
"2020-04-27 04:40:51 (1.60 MB/s) - ‘FuelConsumption.csv’ saved [72629/72629]\n",
"\n"
]
}
],
"source": [
"!wget -O FuelConsumption.csv https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/ML0101ENv3/labs/FuelConsumptionCo2.csv"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"__Did you know?__ When it comes to Machine Learning, you will likely be working with large datasets. As a business, where can you host your data? IBM is offering a unique opportunity for businesses, with 10 Tb of IBM Cloud Object Storage: [Sign up now for free](http://cocl.us/ML0101EN-IBM-Offer-CC)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"\n",
"<h2 id=\"understanding_data\">Understanding the Data</h2>\n",
"\n",
"### `FuelConsumption.csv`:\n",
"We have downloaded a fuel consumption dataset, **`FuelConsumption.csv`**, which contains model-specific fuel consumption ratings and estimated carbon dioxide emissions for new light-duty vehicles for retail sale in Canada. [Dataset source](http://open.canada.ca/data/en/dataset/98f1a129-f628-4ce4-b24d-6f16bf24dd64)\n",
"\n",
"- **MODELYEAR** e.g. 2014\n",
"- **MAKE** e.g. Acura\n",
"- **MODEL** e.g. ILX\n",
"- **VEHICLE CLASS** e.g. SUV\n",
"- **ENGINE SIZE** e.g. 4.7\n",
"- **CYLINDERS** e.g 6\n",
"- **TRANSMISSION** e.g. A6\n",
"- **FUEL CONSUMPTION in CITY(L/100 km)** e.g. 9.9\n",
"- **FUEL CONSUMPTION in HWY (L/100 km)** e.g. 8.9\n",
"- **FUEL CONSUMPTION COMB (L/100 km)** e.g. 9.2\n",
"- **CO2 EMISSIONS (g/km)** e.g. 182 --> low --> 0\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"reading_data\">Reading the data in</h2>"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"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>MODELYEAR</th>\n",
" <th>MAKE</th>\n",
" <th>MODEL</th>\n",
" <th>VEHICLECLASS</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>TRANSMISSION</th>\n",
" <th>FUELTYPE</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>AS5</td>\n",
" <td>Z</td>\n",
" <td>9.9</td>\n",
" <td>6.7</td>\n",
" <td>8.5</td>\n",
" <td>33</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>M6</td>\n",
" <td>Z</td>\n",
" <td>11.2</td>\n",
" <td>7.7</td>\n",
" <td>9.6</td>\n",
" <td>29</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX HYBRID</td>\n",
" <td>COMPACT</td>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>AV7</td>\n",
" <td>Z</td>\n",
" <td>6.0</td>\n",
" <td>5.8</td>\n",
" <td>5.9</td>\n",
" <td>48</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>MDX 4WD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.7</td>\n",
" <td>9.1</td>\n",
" <td>11.1</td>\n",
" <td>25</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>RDX AWD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.1</td>\n",
" <td>8.7</td>\n",
" <td>10.6</td>\n",
" <td>27</td>\n",
" <td>244</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MODELYEAR MAKE MODEL VEHICLECLASS ENGINESIZE CYLINDERS \\\n",
"0 2014 ACURA ILX COMPACT 2.0 4 \n",
"1 2014 ACURA ILX COMPACT 2.4 4 \n",
"2 2014 ACURA ILX HYBRID COMPACT 1.5 4 \n",
"3 2014 ACURA MDX 4WD SUV - SMALL 3.5 6 \n",
"4 2014 ACURA RDX AWD SUV - SMALL 3.5 6 \n",
"\n",
" TRANSMISSION FUELTYPE FUELCONSUMPTION_CITY FUELCONSUMPTION_HWY \\\n",
"0 AS5 Z 9.9 6.7 \n",
"1 M6 Z 11.2 7.7 \n",
"2 AV7 Z 6.0 5.8 \n",
"3 AS6 Z 12.7 9.1 \n",
"4 AS6 Z 12.1 8.7 \n",
"\n",
" FUELCONSUMPTION_COMB FUELCONSUMPTION_COMB_MPG CO2EMISSIONS \n",
"0 8.5 33 196 \n",
"1 9.6 29 221 \n",
"2 5.9 48 136 \n",
"3 11.1 25 255 \n",
"4 10.6 27 244 "
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv(\"FuelConsumption.csv\")\n",
"\n",
"# take a look at the dataset\n",
"df.head()\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"data_exploration\">Data Exploration</h2>\n",
"Lets first have a descriptive exploration on our data."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"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>MODELYEAR</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>1067.0</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" <td>1067.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>2014.0</td>\n",
" <td>3.346298</td>\n",
" <td>5.794752</td>\n",
" <td>13.296532</td>\n",
" <td>9.474602</td>\n",
" <td>11.580881</td>\n",
" <td>26.441425</td>\n",
" <td>256.228679</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>0.0</td>\n",
" <td>1.415895</td>\n",
" <td>1.797447</td>\n",
" <td>4.101253</td>\n",
" <td>2.794510</td>\n",
" <td>3.485595</td>\n",
" <td>7.468702</td>\n",
" <td>63.372304</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>2014.0</td>\n",
" <td>1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>4.600000</td>\n",
" <td>4.900000</td>\n",
" <td>4.700000</td>\n",
" <td>11.000000</td>\n",
" <td>108.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>2014.0</td>\n",
" <td>2.000000</td>\n",
" <td>4.000000</td>\n",
" <td>10.250000</td>\n",
" <td>7.500000</td>\n",
" <td>9.000000</td>\n",
" <td>21.000000</td>\n",
" <td>207.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>2014.0</td>\n",
" <td>3.400000</td>\n",
" <td>6.000000</td>\n",
" <td>12.600000</td>\n",
" <td>8.800000</td>\n",
" <td>10.900000</td>\n",
" <td>26.000000</td>\n",
" <td>251.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>2014.0</td>\n",
" <td>4.300000</td>\n",
" <td>8.000000</td>\n",
" <td>15.550000</td>\n",
" <td>10.850000</td>\n",
" <td>13.350000</td>\n",
" <td>31.000000</td>\n",
" <td>294.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>2014.0</td>\n",
" <td>8.400000</td>\n",
" <td>12.000000</td>\n",
" <td>30.200000</td>\n",
" <td>20.500000</td>\n",
" <td>25.800000</td>\n",
" <td>60.000000</td>\n",
" <td>488.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MODELYEAR ENGINESIZE CYLINDERS FUELCONSUMPTION_CITY \\\n",
"count 1067.0 1067.000000 1067.000000 1067.000000 \n",
"mean 2014.0 3.346298 5.794752 13.296532 \n",
"std 0.0 1.415895 1.797447 4.101253 \n",
"min 2014.0 1.000000 3.000000 4.600000 \n",
"25% 2014.0 2.000000 4.000000 10.250000 \n",
"50% 2014.0 3.400000 6.000000 12.600000 \n",
"75% 2014.0 4.300000 8.000000 15.550000 \n",
"max 2014.0 8.400000 12.000000 30.200000 \n",
"\n",
" FUELCONSUMPTION_HWY FUELCONSUMPTION_COMB FUELCONSUMPTION_COMB_MPG \\\n",
"count 1067.000000 1067.000000 1067.000000 \n",
"mean 9.474602 11.580881 26.441425 \n",
"std 2.794510 3.485595 7.468702 \n",
"min 4.900000 4.700000 11.000000 \n",
"25% 7.500000 9.000000 21.000000 \n",
"50% 8.800000 10.900000 26.000000 \n",
"75% 10.850000 13.350000 31.000000 \n",
"max 20.500000 25.800000 60.000000 \n",
"\n",
" CO2EMISSIONS \n",
"count 1067.000000 \n",
"mean 256.228679 \n",
"std 63.372304 \n",
"min 108.000000 \n",
"25% 207.000000 \n",
"50% 251.000000 \n",
"75% 294.000000 \n",
"max 488.000000 "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# summarize the data\n",
"df.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lets select some features to explore more."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"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>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>8.5</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>9.6</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>5.9</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>11.1</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.6</td>\n",
" <td>244</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.0</td>\n",
" <td>230</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.1</td>\n",
" <td>232</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>3.7</td>\n",
" <td>6</td>\n",
" <td>11.1</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>3.7</td>\n",
" <td>6</td>\n",
" <td>11.6</td>\n",
" <td>267</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ENGINESIZE CYLINDERS FUELCONSUMPTION_COMB CO2EMISSIONS\n",
"0 2.0 4 8.5 196\n",
"1 2.4 4 9.6 221\n",
"2 1.5 4 5.9 136\n",
"3 3.5 6 11.1 255\n",
"4 3.5 6 10.6 244\n",
"5 3.5 6 10.0 230\n",
"6 3.5 6 10.1 232\n",
"7 3.7 6 11.1 255\n",
"8 3.7 6 11.6 267"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cdf = df[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB','CO2EMISSIONS']]\n",
"cdf.head(9)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can plot each of these features:"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 4 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"viz = cdf[['CYLINDERS','ENGINESIZE','CO2EMISSIONS','FUELCONSUMPTION_COMB']]\n",
"cdf.hist()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now, lets plot each of these features vs the Emission, to see how linear is their relation:"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(cdf.FUELCONSUMPTION_COMB, cdf.CO2EMISSIONS, color='blue')\n",
"plt.xlabel(\"FUELCONSUMPTION_COMB\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(cdf.ENGINESIZE, cdf.CO2EMISSIONS, color='blue')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Practice\n",
"plot __CYLINDER__ vs the Emission, to see how linear is their relation:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEHCAYAAABBW1qbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAe/ElEQVR4nO3dfXRc9X3n8fdHGuxYkIQnQYyNJUJsUptQJ1XZeN2TEiQWDuHg0N2wzirBbX1WqUU2TtrdgOvdbdpztOVs8+TtWZkqiWM30cbx5qH4sIQEy6HZUAoVgRAswuLWDwi7WEnaEjA1kfzdP+ZqGFkjaWTrzh1pPq9z5sy937n3ztcXia/uvb8HRQRmZmYAdVknYGZm1cNFwczMClwUzMyswEXBzMwKXBTMzKzARcHMzApyaR5c0kHg58AIMBwRLZLOB74KNAMHgVsj4h+S7TcB65PtPxIR357s+BdeeGE0Nzenlb6Z2Zz02GOP/SQiGkt9lmpRSLw7In5StH4n0BcRd0m6M1m/Q9JyYC2wArgE2CNpWUSMTHTg5uZm+vv708zdzGzOkXRoos+yuH20BtiRLO8A3lsU3xkRJyLiALAfuDqD/MzMalbaRSGA70h6TFJHErs4Io4CJO8XJfFFwHNF+w4mMTMzq5C0bx+tjogjki4CHpD040m2VYnYuDE4kuLSAbBkyZKZydLMzICUrxQi4kjyfgz4JvnbQS9IWgiQvB9LNh8ELi3afTFwpMQxeyKiJSJaGhtLPicxM7PTlFpRkHS2pNePLgP/CngK2A2sSzZbB9yTLO8G1kqaL+kyYCnwaFr5mZnZeGleKVwMfF/SD8n/z/3/RMT9wF3AdZKeBa5L1omIfcAuYAC4H7h9spZHZlYbent7aW5upq6ujubmZnp7e7NOaU7TbB46u6WlJdwk1Wzu6u3tpaOjg+PHjxdiDQ0N9PT00N7enmFms5ukxyKipdRn7tFsZlVr8+bNYwoCwPHjx9m8eXNGGc19LgpmVrUOHz48rbidORcFM6taEzU7d3P09LgomFnV6urqoqGhYUysoaGBrq6ujDKa+1wUzKxqtbe309PTQ1NTE5JoamryQ+aUufWRmVmNcesjMzMri4uCmZkVuCiYmVmBi4KZmRW4KJiZWYGLgpmZFbgomJlZgYuCmZkVuCiYmVmBi4KZmRW4KJiZWUHqRUFSvaTHJd2brH9C0vOSnkheNxZtu0nSfknPSLo+7dzMzGysXAW+YyPwNPCGothnIuKTxRtJWg6sBVYAlwB7JC3zPM1mZpWT6pWCpMXAe4DPl7H5GmBnRJyIiAPAfuDqNPMzM7Ox0r599Fng48DJU+IflvSkpG2Szktii4DnirYZTGJmZlYhqRUFSTcBxyLisVM+2gpcDqwEjgKfGt2lxGHGTfYgqUNSv6T+oaGhmUzZzKzmpXmlsBq4WdJBYCdwraQvR8QLETESESeBz/HaLaJB4NKi/RcDR049aET0RERLRLQ0NjammL6ZWe1JrShExKaIWBwRzeQfIO+NiA9IWli02S3AU8nybmCtpPmSLgOWAo+mlZ+ZmY1XidZHp/rvklaSvzV0EPgQQETsk7QLGACGgdvd8sjMrLIq0nktIh6MiJuS5Q9GxNsi4qqIuDkijhZt1xURl0fEFRHxrUrkZlaNent7aW5upq6ujubmZnp7e7NOyWpEFlcKZjaJ3t5ebrvtNk6ezDfaO3ToELfddhsA7e3tWaZmNUAR4xr4zBotLS3R39+fdRpmM+qcc87h5ZdfHhc/++yzeemllzLIyOYaSY9FREupzzz2kVmVKVUQJoubzSQXBTMzK3BRMDOzAhcFMzMrcFEwqzIbNmyYVtxsJrkomFWZ7u5uWltbx8RaW1vp7u7OKCOrJmn3YXFRMKsyvb297N27d0xs79697sBm9Pb20tHRwaFDh4gIDh06REdHx4z+bLifglmVmT9/Pq+++uq4+Lx58zhx4kQGGVm1aG5u5tChQ+PiTU1NHDx4sOzjuJ+C2SxSqiBMFrfacfjw4WnFT4eLgpnZLLFkyZJpxU+Hi4KZ2SzR1dVFQ0PDmFhDQwNdXV0z9h0uCmZW1To7O8nlckgil8vR2dmZdUqZaW9vp6enh6amJiTR1NRET0/PjA6U6AfNZlVGKjUzbd5s/n09HZ2dnWzdunVcfMOGDW6iewYme9DsomBWZVwUXpPL5RgZGT/XVn19PcPDwxlkNDe49ZGZzUqlCsJkcTtzqRcFSfWSHpd0b7J+vqQHJD2bvJ9XtO0mSfslPSPp+rRzM7PqVl9fP624nblKXClsBJ4uWr8T6IuIpUBfso6k5cBaYAVwA9Atyf/lzWpYR0fHtOJ25lItCpIWA+8BPl8UXgPsSJZ3AO8tiu+MiBMRcQDYD1ydZn5m1Wj+/PnTis9lq1evJpcbO2twLpdj9erVGWU096V9pfBZ4OPAyaLYxRFxFCB5vyiJLwKeK9puMImZ1ZSJhrKoxSEuNm/ePO6B8vDwMJs3b84oo7kvtaIg6SbgWEQ8Vu4uJWLjmlpI6pDUL6l/aGjojHI0q0Z1daV/LSeKz2WVGNbBxkrzp2w1cLOkg8BO4FpJXwZekLQQIHk/lmw/CFxatP9i4MipB42InohoiYiWxsbGFNM3y8bJkyenFZ/LKjGsw2yzYsUKJBVeK1asmNHjp1YUImJTRCyOiGbyD5D3RsQHgN3AumSzdcA9yfJuYK2k+ZIuA5YCj6aVn5lVv0oM6zCbrFixgoGBgTGxgYGBGS0MWVyP3gVcJ+lZ4LpknYjYB+wCBoD7gdsjwo2RreZccMEF04rPZe3t7axatWpMbNWqVTM6rMNscmpBmCp+OipSFCLiwYi4KVn+aUS0RsTS5P1nRdt1RcTlEXFFRHyrErmZVZstW7aMe35QV1fHli1bMsooO52dnfT19Y2J9fX11fT4R2mrvSdXZrPAqUNdTDb0xVzW09MzrbidORcFsyqzcePGccM4jIyMsHHjxowyyo6HuRhr+fLl04qfDhcFsyrz05/+dFrxuczDXIy1b98+FixYMCa2YMEC9u3bN2Pf4aJgZlXLw1yM1dbWxiuvvDIm9sorr9DW1jZj35GbehMzs2yMzpnQ09PDyMgI9fX1dHR01OxcCqc+dJ8qfjo8n4JZlfF8CjaRmfrZ8HwKZmZWFhcFM7NZorW1dVrx0+GiYGY2S+zZs2dcAWhtbWXPnj0z9h0uCmZms8iyZcsKTXLr6+tZtmzZjB7frY/MzGaJzs5Otm7dWlgfGRkprM9Uiyy3PjKrMm59ZBPJ5XIle3PX19ePm4xoMm59ZGazVm9vL83NzdTV1dHc3Exvb2/WKWWmEsN++PaRmVWt3t5eOjo6OH78OACHDh0q9GauxeGz6+rqSk62NJOz8vlKwcyq1ubNmwsFYdTx48drdo7mSszK56JgZlXLczRXnouCmVUtz9FceakVBUmvk/SopB9K2ifpD5P4JyQ9L+mJ5HVj0T6bJO2X9Iyk69PKzcxmh7e85S3TituZS/NB8wng2oh4SdJZwPcljU6x+ZmI+GTxxpKWA2uBFcAlwB5JyzxPs1ntevDBB6cVtzOX2pVC5L2UrJ6VvCZrZL0G2BkRJyLiALAfuDqt/Mys+nnmtbEqMelQqs8UJNVLegI4BjwQEY8kH31Y0pOStkk6L4ktAp4r2n0wiVkN6OzsJJfLIYlcLueJ2Q3wzGunqsSkQ6kWhYgYiYiVwGLgaklXAluBy4GVwFHgU8nmpbpxjruykNQhqV9S/9DQUEqZWyWNdt0f/etvtOu+C4N55rWxuru72bBhw5ixjzZs2DCjkw5VbJgLSX8AvFz8LEFSM3BvRFwpaRNARPxx8tm3gU9ExMMTHdPDXMwNM9V1f67wMBdjdXZ2eua1GZbJMBeSGiWdmywvANqAH0taWLTZLcBTyfJuYK2k+ZIuA5YCj6aVn1UP3ze2yXR3dzM8PExEMDw87IKQsjRbHy0EdkiqJ198dkXEvZK+JGkl+VtDB4EPAUTEPkm7gAFgGLjdLY9qQ319/YRXCmZWWdMuCsmD4Usj4snJtks+f3uJ+Acn2acL6JpuTja7dXR0jBkOuDhuZpVV1u0jSQ9KeoOk84EfAl+U9Ol0U7Na0d3dXXI2Kd8mMKu8cp8pvDEiXgR+A/hiRPwK+WcEZmest7eXhx8e257g4Ycfrukhks2yUm5RyCUPiG8F7k0xH6tBHgnTrHqUWxT+CPg2sD8i/kbSm4Fn00vLaolHwjSrHmUVhYj43xFxVUR0Jut/FxH/Ot3UrFZ4JEyz6lHug+ZGSb8vqScZmmKbpG1pJ2e14cYbb5xW3MzSU26T1HuA/wvsAdx3wGbUfffdN624maWn3KLQEBF3pJqJ1axDhw5NK25m6Sn3QfO9xZPhmJnZ3FRuUdhIvjD8s6SfJ68X00zMzMwqr6zbRxHx+rQTMTOz7JU99pGkm4F3JasPRoQ7sZmZzTHlNkm9i/wtpIHktTGJmZnZHFLulcKNwMqIOAkgaQfwOHBnWomZmVnlTWeSnXOLlt8404mYmVn2yr1S+GPgcUnfJT+X8ruATallZWZmmSi39dFXJD0I/Cr5onBHRPx9momZmVnlTXr7SNJbk/d3kJ9ecxB4DrgkiU227+skPSrph5L2SfrDJH6+pAckPZu8n1e0zyZJ+yU9I+n6M/3HmZnZ9Ex1pfC7QAfwqRKfBXDtJPueAK6NiJcknQV8X9K3yE/U0xcRd0m6k/zD6jskLQfWAiuAS4A9kpZ5nmYzs8qZtChEREfy/u7pHjgiAngpWT0reQWwBrgmie8AHgTuSOI7I+IEcEDSfuBqYOyUXGZmlppy+ym8T9Lrk+X/LOkbkt5exn71kp4AjgEPRMQjwMURcRQgeb8o2XwR+VtTowaTmJmZVUi5TVL/S0T8XNKvAdeT/wv/7ql2ioiRiFgJLAaulnTlJJur1CHGbSR1SOqX1D80NFRm+mZmVo5yi8Loff33AFsj4h5gXrlfEhH/SP420Q3AC8l8zyTvx5LNBoFLi3ZbDBwpcayeiGiJiJbGxsZyUzAzszKUWxSel/RnwK3AfZLmT7VvMlvbucnyAqAN+DGwG1iXbLaO/AQ+JPG1kuZLugxYCjw6nX+MmZmdmXKLwq3At4Ebkr/6zwf+0xT7LAS+K+lJ4G/IP1O4F7gLuE7Ss8B1yToRsQ/YRX5spfuB2+d6y6O2tjYkFV5tbW1Zp2RmNU75RkJTbCRdDgxGxAlJ1wBXAX+eFIjMtLS0RH9/f5YpnLa2tjb6+vrGxVtbW9mzZ08GGWVHKvU4Ka+cn8+5xufD0ibpsYhoKfVZuVcKXwdGJL0F+AJwGfC/Zii/mlSqIEwWNzOrhHKLwsmIGCbf8eyzEfEx8reHzMxsDim3KPxC0vuB24DRyXXOSiclMzPLSrlF4beAVUBXRBxIWgd9Ob20zMwsC+WOkjoAfKRo/QBJqyEzM5s7Ji0KknZFxK2SfsTY3sUiP7zRValmN4fV19czMjK+xW19fX0G2ZiZ5U11pbAxeb8p7URqTUdHB1u3bi0ZNzPLylSjpI4OXHcIQNIbptrHzMxmr3I7r30I+CPgFV67jRQR8eYUc5vSbO68VldXV7IjkiROnjyZQUbZcWetsXw+LG2TdV4r96/+/wisiIifzFxatW2iX27/0ptZlsptkvq3wPE0EzEzs+yVe6WwCfgrSY+Qn2YTgIj4yMS7mJnZbFNuUfgzYC/wI6C2bnibmdWQcovCcET8bqqZmJlZ5sp9pvDdZBrMhZLOH32lmpmZmVVcuVcK/y5531QUCyDTJqlmZjazyh376LK0EzEzs+xNNc/yx4uW33fKZ/9tin0vlfRdSU9L2idpYxL/hKTnJT2RvG4s2meTpP2SnpF0/en9k8zM7HRN9UxhbdHyplM+u2GKfYeB34uIXwLeCdwuaXny2WciYmXyug8g+WwtsCI5drckjw5nNeeCCy6YVtxsJk1VFDTBcqn1MSLiaET8IFn+OfA0sGiSXdYAOyPiRDI0937g6inyM5tztmzZwrx588bE5s2bx5YtWzLKyGrJVEUhJlgutT4hSc3A24FHktCHJT0paZuk85LYIuC5ot0GmbyImM1J7e3trF+/vjCMen19PevXr6e9vT3jzKwWTFUUflnSi5J+DlyVLI+uv62cL5B0DvB14KMR8SKwFbgcWAkcBT41ummJ3ccVnqRpbL+k/qGhoXJSMJtVent72bFjR2G+jZGREXbs2EFvb2/GmVktmLQoRER9RLwhIl4fEblkeXR9yjmaJZ1FviD0RsQ3kmO+EBEjEXES+Byv3SIaBC4t2n0xcKRETj0R0RIRLY2NjeX9K81mkc2bN3P8+Nihxo4fP87mzZszyshqSbmd16ZN+fF/vwA8HRGfLoovLNrsFuCpZHk3sFbS/GQO6KXAo2nlZ1atDh8+PK242UxKc8Kc1cAHgR9JeiKJ/T7wfkkryd8aOgh8CCAi9knaBQyQb7l0e0SMn6/SbI5bsmQJhw4dKhk3S1tqRSEivk/p5wT3TbJPF9CVVk5ms0FXVxcdHR1jbiE1NDTQ1eVfDUtfarePzOz0tLe309PTQ1NTE5Joamqip6fHrY+sIlwUalxnZye5XA5J5HI5Ojs7s07JyBeGgwcPcvLkSQ4ePOiCYBWT5jMFq3KdnZ1s3bq1sD4yMlJY7+7uziotM8uQZvOcwC0tLdHf3591GqelGiZnz+Vyhbbwxerr6xkeHq5IDlAd58Kslkh6LCJaSn3m20c1rFRBmCxuZnOfi0INGx1Gody4mc19Lgo17IorrphW3MzmPheFGjYwMDCtuJnNfS4KZmZW4KJgZmYFLgpmZlbgomBmZgUuCmZmVuCiYGZmBS4KNeyCCy6YVtzM5j4XhRq2ZcsW5s2bNyY2b948tmzZklFGZpY1F4Ua1t7ezrZt28aM279t2zYP02xWw1IbJVXSpcCfA28CTgI9EbFF0vnAV4Fm8tNx3hoR/5DsswlYD4wAH4mIb0/2HR4ldW6YP38+r7766rj4vHnzOHHiRAYZmc1tWY2SOgz8XkT8EvBO4HZJy4E7gb6IWAr0Jeskn60FVgA3AN2SPDJbDVi/fv204maWntSKQkQcjYgfJMs/B54GFgFrgB3JZjuA9ybLa4CdEXEiIg4A+4Gr08rPqsd995WetnuiuJmlpyLPFCQ1A28HHgEujoijkC8cwEXJZouA54p2G0xiNscdPnx4WnEzS0/qRUHSOcDXgY9GxIuTbVoiNu7muqQOSf2S+oeGhmYqTcvQkiVLphU3s/SkWhQknUW+IPRGxDeS8AuSFiafLwSOJfFB4NKi3RcDR049ZkT0RERLRLQ0Njaml7xVTFdXFw0NDWNiDQ0NdHV1ZZSRWe1KrSgo37zmC8DTEfHpoo92A+uS5XXAPUXxtZLmS7oMWAo8mlZ+Vj3a29tZtWrVmNiqVavcNNYsA2leKawGPghcK+mJ5HUjcBdwnaRngeuSdSJiH7ALGADuB26PCE8WXAM6Ozvp6+sbE+vr66OzszOjjMxqV2r9FCrB/RTmBp8Ls8rKqp+CmZnNMi4KZmZW4KJgZmYFLgqWudbW1mnFzSw9LgqWuT179owrAK2trezZsyejjMxql4uCVYVly5ZRX58f/7C+vp5ly5ZlnJFZbcplnYBZZ2cnW7duLayPjIwU1ru7u7NKy6wmuZ9CRtw2/zW5XI6RkfH9FOvr6xkeHs4gI7O5zf0UrKqVKgiTxc0sPS4KZmZW4KJgZmYFLgqWuaampmnFzSw9LgqWOc+nYFY9XBQsc+3t7fT09NDU1IQkmpqa6Onp8XwKZhlwk9SMuEmqmWXFTVLNzKwsLgpmZlaQ5hzN2yQdk/RUUewTkp4/ZXrO0c82Sdov6RlJ16eVl5mZTSzNK4XtwA0l4p+JiJXJ6z4AScuBtcCKZJ9uSfUp5mZmZiWkVhQi4nvAz8rcfA2wMyJORMQBYD9wdVq5mZlZaVk8U/iwpCeT20vnJbFFwHNF2wwmsVS0tbUhqfBqa2tL66vMzGaVSheFrcDlwErgKPCpJF6qfWbJdpmSOiT1S+ofGhqadgJtbW309fWNifX19VW8MIzOHVBu3MysEipaFCLihYgYiYiTwOd47RbRIHBp0aaLgSMTHKMnIloioqWxsXHaOZxaEKaKp+Xiiy+eVtzMrBIqWhQkLSxavQUYbZm0G1grab6ky4ClwKOVzK3SjhwpWfMmjJuZVUJqM69J+gpwDXChpEHgD4BrJK0kf2voIPAhgIjYJ2kXMAAMA7dHhAfTNzOrsNSKQkS8v0T4C5Ns3wWkPgLa8uXLGRgYKBk3M6t1Ndej+eWXX55W3MysltRcUTh8+PC04mZmtaTmisKSJUumFTczqyU1VxSqZUIX91Mws2pUc0WhWiZ0WbBgwbTiZmaV4El2MuJJdswsK55kx8zMyuKiYGZmBS4KZmZW4KJgZmYFLgoZOeecc6YVNzOrBBeFjNx9993kcmOHnsrlctx9990ZZWRm5qKQmfb2drZv3z6mv8T27dsr3l/CzKyYi0KGHnroIQYHB4kIBgcHeeihh7JOycxqXGpDZ9vkOjs72bp1a2F9ZGSksN7d3Z1VWmZW49yjOSN1dXUley5L4uTJkxlkZGa1wj2aq9BExXg2F2kzm/1SKwqStkk6Jumpotj5kh6Q9Gzyfl7RZ5sk7Zf0jKTr08rLzMwmluaVwnbghlNidwJ9EbEU6EvWkbQcWAusSPbpljSnx5B2PwUzq0apFYWI+B7ws1PCa4AdyfIO4L1F8Z0RcSIiDgD7gavTyq0auJ+CmVWjSj9TuDgijgIk7xcl8UXAc0XbDSaxOcv9FMysGlVLk9RSkwuUfOIqqQPogNk/hWZ7e7uLgJlVlUpfKbwgaSFA8n4siQ8ClxZttxg4UuoAEdETES0R0dLY2JhqsmZmtabSRWE3sC5ZXgfcUxRfK2m+pMuApcCjFc7NzKzmpXb7SNJXgGuACyUNAn8A3AXskrQeOAy8DyAi9knaBQwAw8DtETGSVm5mZlZaakUhIt4/wUetE2zfBXSllY+ZmU3NPZrNzKxgVo99JGkIOJR1HjPgQuAnWSdRJXwuxvL5eI3PxVhncj6aIqJkS51ZXRTmCkn9Ew1OVWt8Lsby+XiNz8VYaZ0P3z4yM7MCFwUzMytwUagOPVknUEV8Lsby+XiNz8VYqZwPP1MwM7MCXymYmVmBi0LGJNVLelzSvVnnkjVJ50r6mqQfS3pa0qqsc8qKpI9J2ifpKUlfkfS6rHOqpOlO0jWXTXAu/iT5PXlS0jclnTtT3+eikL2NwNNZJ1EltgD3R8RbgV+mRs+LpEXAR4CWiLgSqCc/CVUt2U6Zk3TVgO2MPxcPAFdGxFXA/wM2zdSXuShkSNJi4D3A57POJWuS3gC8C/gCQES8GhH/mG1WmcoBCyTlgAYmGDV4rprmJF1zWqlzERHfiYjhZPWvyY8sPSNcFLL1WeDjwMmsE6kCbwaGgC8mt9M+L+nsrJPKQkQ8D3yS/KCRR4F/iojvZJtVVZhokq5a99vAt2bqYC4KGZF0E3AsIh7LOpcqkQPeAWyNiLcDL1M7twfGSO6VrwEuAy4Bzpb0gWyzsmokaTP5kaV7Z+qYLgrZWQ3cLOkgsBO4VtKXs00pU4PAYEQ8kqx/jXyRqEVtwIGIGIqIXwDfAP5lxjlVg4km6apJktYBNwHtMYN9C1wUMhIRmyJicUQ0k3+IuDciavavwYj4e+A5SVckoVby82vUosPAOyU1SBL5c1GTD91PMdEkXTVH0g3AHcDNEXF8Jo9dLXM0mwH8B6BX0jzg74DfyjifTETEI5K+BvyA/K2Bx6mx3rzTmaRrrpvgXGwC5gMP5P9u4K8j4ndm5Pvco9nMzEb59pGZmRW4KJiZWYGLgpmZFbgomJlZgYuCmZkVuChYzZP0Jkk7Jf2tpAFJ90laNsG214yOaCvpZknT6nUtabukfzMTeZulwf0UrKYlncO+CeyIiLVJbCVwMfnRJycUEbvJd6hKM79c0cBnZqlzUbBa927gFxFx92ggIp6Q9CVJ50fEPQCSeoGvAi+ObifpN8kPb/1hSduTz1qANwEfj4ivJUXnT4FrgQOAivb/FeDTwDnAT4DfjIijkh4E/or8UCi7JR0m32FphPzgeO9K5UyY4aJgdiVQalDCzwMfA+6R9EbyYw+tA35tkmMtTD5/K/kriK8BtwBXAG8jf/UxAGyTdBb5YrEmIoYk/Vugi/yIlwDnRsSvA0j6EXB9RDw/k5OpmJXiomBWQkT8paT/Keki4DeAr0fEcDKkwET+IiJOAgOSLk5i7wK+EhEjwBFJe5P4FeQL0ugwBfXkh8ke9dWi5YeA7ZJ2kR8czyw1LgpW6/YBEz34/RLQTn7Awt+eYJtiJ4qWi6tHqbFkBOyLiImmHH25sHPE70j6F+QnZHpC0sqI+GkZ+ZhNm1sfWa3bC8yX9O9HA5J+VdKvk58G8aMAEbHvNI//PWBtMhf3QvLPMACeARpH56GWdJakFaUOIOnyiHgkIv4r+WcPl55mLmZT8pWC1bSICEm3AJ9Nmpf+M3AQ+GhEvCDpaeAvzuArvkn+IfOPyLdm+svke19Nmqb+j+SZRY78THylis+fSFpK/uqiD/jhGeRjNimPkmo2AUkN5P9n/o6I+Kes8zGrBN8+MitBUhvwY+BPXRCslvhKwczMCnylYGZmBS4KZmZW4KJgZmYFLgpmZlbgomBmZgUuCmZmVvD/AUjh26DIc1o1AAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# write your code here\n",
"plt.scatter(cdf.CYLINDERS,cdf.CO2EMISSIONS,color='black')\n",
"plt.xlabel(\"Cylinders\")\n",
"plt.ylabel(\"Emissions\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click __here__ for the solution.\n",
"\n",
"<!-- Your answer is below:\n",
" \n",
"plt.scatter(cdf.CYLINDERS, cdf.CO2EMISSIONS, color='blue')\n",
"plt.xlabel(\"Cylinders\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Creating train and test dataset\n",
"Train/Test Split involves splitting the dataset into training and testing sets respectively, which are mutually exclusive. After which, you train with the training set and test with the testing set. \n",
"This will provide a more accurate evaluation on out-of-sample accuracy because the testing dataset is not part of the dataset that have been used to train the data. It is more realistic for real world problems.\n",
"\n",
"This means that we know the outcome of each data point in this dataset, making it great to test with! And since this data has not been used to train the model, the model has no knowledge of the outcome of these data points. So, in essence, it is truly an out-of-sample testing.\n",
"\n",
"Lets split our dataset into train and test sets, 80% of the entire data for training, and the 20% for testing. We create a mask to select random rows using __np.random.rand()__ function: "
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"msk = np.random.rand(len(df)) < 0.8\n",
"train = cdf[msk]\n",
"test = cdf[~msk]"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"simple_regression\">Simple Regression Model</h2>\n",
"Linear Regression fits a linear model with coefficients $\\theta = (\\theta_1, ..., \\theta_n)$ to minimize the 'residual sum of squares' between the independent x in the dataset, and the dependent y by the linear approximation. "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Train data distribution"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Modeling\n",
"Using sklearn package to model data."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficient: [[39.07017507]]\n",
"Intercept: [125.49571162]\n"
]
}
],
"source": [
"from sklearn import linear_model\n",
"regr = linear_model.LinearRegression()\n",
"train_x = np.asanyarray(train[['ENGINESIZE']])\n",
"train_y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"regr.fit (train_x, train_y)\n",
"# The coefficients\n",
"print ('Coefficient: ', regr.coef_)\n",
"print ('Intercept: ',regr.intercept_)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As mentioned before, __Coefficient__ and __Intercept__ in the simple linear regression, are the parameters of the fit line. \n",
"Given that it is a simple linear regression, with only 2 parameters, and knowing that the parameters are the intercept and slope of the line, sklearn can estimate them directly from our data. \n",
"Notice that all of the data must be available to traverse and calculate the parameters.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Plot outputs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can plot the fit line over the data:"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Emission')"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEHCAYAAABBW1qbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO29fZwcVZXw/z3zkpBJgpAhxJCQmSiIJqi8jLAYfgiEdxHwPT7DEkUNTliF9WFdQtbXn1lZdV1xNWgQNJIRZEUFEUHeBRQwAQIkgITNJAQCCRGBkJBkZs7zx62eru6pqq7ururqmTnfz6c+XX2q7u3TPck9dc899xxRVQzDMAwDoCFrBQzDMIz6wYyCYRiGMYAZBcMwDGMAMwqGYRjGAGYUDMMwjAHMKBiGYRgDNKXZuYj0AK8CfUCvqnaIyATgF0A70AN8RFVf8u5fAHzSu/9zqnpzVP977bWXtre3p6W+YRjGsGTFihUvqurEoGupGgWPY1T1Rd/7C4HbVPViEbnQe/+vIjIDmAPMBPYBbhWRt6hqX1jH7e3tLF++PE3dDcMwhh0isi7sWhbuo9OBpd75UuAMn/xqVd2hqmuBNcBhGehnGIYxYknbKCjwBxFZISLzPNkkVd0I4L3u7cmnAM/42m7wZIZhGEaNSNt9NEtVnxORvYFbROSJiHslQDYoB4dnXOYBTJs2LRktDcMwDCDlmYKqPue9bgJ+jXMHvSAikwG8103e7RuAfX3NpwLPBfS5RFU7VLVj4sTAdRLDMAyjQlIzCiIyVkTG586BE4DHgOuBud5tc4HrvPPrgTkiMlpEpgP7Aw+kpZ9hGIYxmDRnCpOAe0RkJW5w/52q3gRcDBwvIk8Bx3vvUdVVwDXAauAm4NyoyCPDMEYW3d3Q3g4NDe61uztrjYYnMpRTZ3d0dKiFpBrG8Ke7G+bNg23b8rKWFliyBDo7s9NrqCIiK1S1I+ia7Wg2DKPuWbiw0CCAe79wYTb6DGfMKBiGUfesX1+e3KgcMwqGYdQ9YdHnFpWePGYUDMOoexYtcmsIflpanNxIFjMKhmHUPZ2dblG5rQ1E3KstMqdDLRLiGYZhVE1npxmBWmAzBcMwDGMAMwqGYRjGAGYUDMMwjAHMKBiGYRgDmFEwDMMwBjCjYBiGYQxgRsEwDMMYwIyCYRiGMYAZBcMwDGMAMwqGYRjGAGYUDMMwjAFSNwoi0igiD4nIDd77r4jIsyLysHec4rt3gYisEZEnReTEtHUzDMMwCqnFTOE84PEi2X+p6kHecSOAiMwA5gAzgZOAxSLSWAP9DMMwhg7f/jYcfzxs3ZpK96kaBRGZCrwX+HGM208HrlbVHaq6FlgDHJamfoZhGEOGb3zD5Q3/l3+BW2+FV15J5WPSnil8F/gC0F8k/ycReURErhCRPT3ZFOAZ3z0bPJlhGMbI5Wtfc8bgoovc+ze+EV54AfbZJ5WPS80oiMipwCZVXVF06VLgzcBBwEbgP3NNArrRgH7nichyEVm+efPmJFU2DMOoD1Thi190xuDLX3ayffeFzZth40bYe+/UPjrNmcIs4DQR6QGuBo4VkWWq+oKq9qlqP3AZeRfRBmBfX/upwHPFnarqElXtUNWOiRMnpqi+YRhGjVGFBQugoQG+/nUne9ObYMsWWL8e9tordRVSMwqqukBVp6pqO24B+XZVPVNEJvtuez/wmHd+PTBHREaLyHRgf+CBtPQzDMOoG1Th//5fZwwuvtjJDjgAXnoJnn4aJkyomSpZlOP8pogchHMN9QDnAKjqKhG5BlgN9ALnqmpfBvoZhmHUBlU4/3z43vfysgMPhHvugTe8IROVarJ5TVXvVNVTvfN/VNW3q+o7VPU0Vd3ou2+Rqr5ZVQ9Q1d/XQjfDMIYG3d3Q3u4eptvb3fshiyqce677MjmDcPDBLqLo0UczMwhgO5oNw4jB/PnQ1OTWPZua3Pta0t0N8+bBunVuPF23zr0fcoahvx8+/WlnDBYvdrLDDnN7Dh58EMaPz1Y/zCgYhlGC+fPh0kuhz3Pm9vW597U0DAsXwrZthbJt25x8SNDfD5/4BDQ2wo+9bVvvfje89hrcfz+MHZutfj5EdVDU55Cho6NDly9fnrUahjGsaWx0Y1oxDQ15Q5E2DQ1uhlCMSLBudUNfH5x1Fvz853nZe94Dv/89jBmTmVoiskJVO4Ku2UzBMIxIwgbdWg7G06aVJ8+c3l746Eedry1nEI47DrZvhzvvzNQglMKMgmEYdc+iRdDSUihraXHyumLXLnj/+6G5Ga65xslOPhlefx1uuQV22y1b/WJgRsEwjEjC3N21dIN3dsKSJdDW5lxGbW3ufWdn7XSIZOdOeN/7YNQo+M1vnOy002DHDrjxRhg9Olv9ysCMgmEYkfzoR86n76ehwclrSWcn9PQ4t1VPT50YhB073Exg9Gi44QYn+8AHnJG47jpnJIYYZhQMY4iTdvx+Zyf87GeFT+k/+1n1g/KQ3nfw+utujWC33eCmm5xszhznPrr2Wuc+Gqqo6pA9Dj30UDWMeqerS7WxURXca1dXcn0vW6ba0uL6zh0tLe4z2tpURdzrsmXJfWYShOldb3oOYts21aOOKlT8zDNVe3uz1qwsgOUaMq5aSKphpEguxr+Yrq783qVqaG93G7mKESkM4WxpqS8ffJjebW3ONVR3bNvmZgZ//nNedvbZcNllg31rQ4CokFQzCoaRIk1NwbH8jY0uarFawuL3g6inAXfI7DvYuhWOOQb848y8ec7SD0FjkMP2KRhGRoRt7kpq01c5cfrr11f+OaX8/+WuD9T9voNXX4WDDnJpJ3IGYf58Z7GCVt6HEcP3mxlGHSBBpaMi5OUSFL8f1nelA253N3z844V5hz7+8fzAX0leorrdd/DyyzBzJuy+O6xc6WTnn++MwQ9+kNwfrp4JW2wYCoctNBv1jn89sviIy7Jl0YvGxde7upJdxB03Llj/cePc9ba24OttbdV9r5ry0kuqb3lL4Re44ALV/v4MlUoPIhaaMx/YqznMKBjVkmZkkGr1RqHSKJ0kv1ep7yASfE2k8s+sGVu2qE6fXqj4RRcNW2OQI8oomPvIGLHUIvtnY2N58mIqyQ7a3Q1LlxZ+r6VL09sHUPfrA0G8+KKredzaCmvXOtmXvuTcRIsWjQw3UQhmFIwRy5Il5ckrYd688uTFhC0ORy0aJ51mutS6SN2uDwSxaRNMngwTJ8KGDU72ta+5OcJXvzqijUGO1I2CiDSKyEMicoP3foKI3CIiT3mve/ruXSAia0TkSRE5MW3djJFN2pFB4PYidHXlZwaNjeXtUajkKbwSQxLFZz4TLa/7vEQAzz/vZgWTJrlzgG98wxmDL34xW93qjTC/UlIH8Hng58AN3vtvAhd65xcC/+GdzwBWAqOB6cDTQGNU37amYFRDzudefDQ2Zq1ZnkrWFCpd+I0i7bWX1Hj2WdXddy/8Ib71ray1yhyyWlMQkanAe4Ef+8SnA0u986XAGT751aq6Q1XXAmuAw9LUzxjZVOvaqQWVPIUHuXOam90+rErzDC1e7DbbqbrXJHZjp8ozz7iaBVOmuLrHAN/9rvsCF1yQrW51Ttruo+8CXwD8exQnqepGAO91b08+BXjGd98GT2YYqVCta6dWlMoOWrxxDAoNSWure92yZYjXN47DunXOAk6b5pLWAXz/++6Ln3detroNEVIzCiJyKrBJVVfEbRIgG7QRXkTmichyEVm+efPmqnQ0jCH3BFxE2MYxyBuSceNcJmc/Q6q+cRzWrnWWr709nz/kRz9yP8q552aq2lAjzZnCLOA0EekBrgaOFZFlwAsiMhnAe93k3b8B2NfXfirwXHGnqrpEVTtUtWPixIkpqm8Y9U+cSKOkF55rxcyZbpzPHTNnBty0Zo27+KY35WWXX+6MQT35AYcQqRkFVV2gqlNVtR2YA9yuqmcC1wNzvdvmAtd559cDc0RktIhMB/YHHkhLP8MYDsQZ8IfiPoKZM2H16kLZ6tU+w/DXvzpjsP/++RuWLnXG4Oyza6bncCSLfQoXA8eLyFPA8d57VHUVcA2wGrgJOFdVEwwONIzhR5wBf0jtI/AoNgg5+lc/7ozBAQfkhd3dzhicdVZtlMuY+fNd9l0R95rkZkvA0lwYRrVkmcMnbshqXeUZikFxOO0MHhss/MUvslaz5nR1BYcblxsijOU+Mox0qIcKYpUM+PVuJHK/5dtZOXgE/OUvs1YvM5LaWxNlFCzNhWFUQdIpJWpBJamuS3HccYWLwscdV52OH5j+EIrwCO8ckJ3GdcycofDBD1bX+RCmFrvwM3/ar+awmYKRNVlkCG1uDv7MNHc8R+1onj07uL/Zsyv4cn/5y6COTuEG50KaUUF/wwybKRhGnVPryJ5Ro2DXruh7Ss1UgmojR8lLZZO97bbgdmHyQO67z00x3vWuvOymm0CV3+l7UYVVq8rob5hSi134ZhQMowpqHdlTyiDkiNqDUG4671Szyd57rzMGRxyRl916q3sAPtFyYhZTi134ZhQMowrqNUNo1EylXL90Kn7sP/7R/WBHHpmX3XGHMwazZ1fR8fAn7V34ZhQMY5hRaqbS1laevNpCQQXccYczBu95T152991uhDv66Ao6NJLGjIJhVEEakTxRNDeHX4s7UznllPLkifixb7nFKXjssXnZn/7kfjT/bMHIHDMKhhFBcQbS4sG+1iGpO3cONgzNzW5sDcuiWsyNN5YnL+XHjpx53HSTMwYnnJC/cP/9TmH/OoJRN5hRMIwQ4swCskg2t3NnYUDipz5VXtqDSnSO8mMHLbZ/YPQN9KwTOPnkvHD5ctfBYVYmpZ4xo2AYIcSZBUyYENw2TJ4E/tw3ItHhokEkHUbb2Qlz57oZxOn8BkW4dsf78jc89JAzBoceWtkHGDXFjIJhhFCPKaeL9wyEERUumnQYbXc3vHz5L+ntE37D+wfkv/vGI84YHHRQSTecUUeE7WobCoftaDbSJM7O31rsaPbnKYrayVx8xO2zqtxHV1896IPfxqqC36ke8kMZhWA7mg2jfOI8UYe5XBoaknkqLl7XiEtxuGhQyc6oEp8lcxktW+YuzJkzIDqAJxCUx5kB5HdIx12Mt9lEnRBmLYbCYTMFI21KPVEHPQWXm4soirDZSqnDn3eo3Cf1yFxGP/nJoAv78dfI2Uqc2ZTNJmoLETMF0XIeP+qMjo4OXb58edZqGCOc7m731Lt+vXvKDfL3t7W5J/JyaWgob4aQo7XV1WauRCcJqJb+SX7Mj/l0ofDpp+FNbwq8P4eqe+oPyqvk//w49xjJISIrVLUj6Jq5jwyjSjo7866Y/v7ge6IWp6PcJpVGBG3Zknc5hS1Kr1tX2lVzDj9EkQGD0EcD7axlbIvS/WdXF7nUjuc4brh6XNQfsYRNIao9gN1wNZZXAquAr3ryrwDPAg97xym+NguANcCTwImlPsPcR0a9MW5csKtk3Ljg+0u5TcJcOUkf/s8E1XP574IbtrGbTmV94IL7jBnBffpTXZdyw1WSztuoHLJwH4mIAGNVdauINAP3AOcBJwFbVfXbRffPAK4CDgP2AW4F3qIRdZrNfWTUG6VcKcWUcps0NSVcQCWCtjboOe+/4POfH5C9yjjeyhM8x5RB94u4mVGYjo2NbqNbHHIL6v4F6ZaW+kguOBzJxH3kGaSt3ttm74iyQKcDV6vqDlVdi5sx2NZHY1hTym0SZRByz9PLlhVmaW1tDb6/sTHcaP0L33Q7kD2D8ErTnkzmOXbn1UCDAHnXVhJZVOs12+xIJNU1BRFpFJGHgU3ALap6v3fpn0TkERG5QkT29GRTgGd8zTd4MsOoGf7dwnFSRkDhmkC5lNpdXEmG0o98JNiHv3Spe7L35yq6iEUowjf5VyfYe294/nl23/U3NurkAaMTtSaQVBZV/9pMnBxORkqE+ZWSPIA9gDuAA4FJQCPOIC0CrvDu+QFwpq/N5cAHA/qaBywHlk+bNi1hT5sxkunqCvZr+0tPFhMnJNUfnlnuZ4ZdLw7tLF4f6Ooq9OH737e2qn618SsFjZ6VffR/Fm+K/J5hawKV/G5GthCxplATo+B04MvABUWyduAx73wBsMB37WbgiKg+baHZSJJK6t/G3UfQ0FBee/8Cq78+ctzD3z5vuPr1a/xbwY1radN3Tn2x6v0AUTWcjfojyiik5j4SkYkisod3PgY4DnhCRCb7bns/8Jh3fj0wR0RGi8h0YH9c9JJh1IRKfONxQybDQlXj1Ev2ZyiNi1+vhRcpX9r2rygNfJGvA/AU+7Enf2M6PTy2sZV7743fdxB33VWYlO+uu6rrz8iOphT7ngwsFZGcq+gaVb1BRK4UkYNwi849wDkAqrpKRK4BVgO9wLkaEXlkGEnT2BhuAHILtDNmFBaQnzYtfGD3E1ZzIC2mTcNZkQsuoGf9dwbkq3kb7+ZPvMweA7JcZlWorLTjzJmwenWhbPVqJ/f/VsbQwHY0GyOa+fNdlEs5kTJ+wxAUShnE7NmuHn0x5YawRt2fo2WM8uCRn+OAW74/IFvJO/j/uJtX2T20XTkhpHF1GsLDy7DGdjQbqTDUE5iFpaEuNfD6n4qLQynDuPPOitUsYMaMYHlTEzTQz5Xjunhte0PeIBxyCL+47BXe3bIy0iBA7fZDGPWNGQWjImpdmzgNwmoOlJtvyB9KGUZSA+5FFw2WCf08PutT9NHImVt/6ISHHw5bt8KKFXz0U+NjGa5yQ0iN4YkZBaMial2bOA2S2HRVTFIx+2H4f98G+vgpc+mnkf3uutwJjzwSXnsN7rsPxo4duNdvuLq6gvueNy8ZHY2hTSyj4EUSXSQiS7wNZ1eIyBVpK2fUL8MhgVmpATzMVVMs97vRxowJbpPUgLt+vTMG3fwf+mhiLj8D4HaOge3b4e67B+80K2LWrMEb7RoanLwSwoxMmNyob+LOFK4D3oDLR/Q732GMUJKu85sWUeseYQN1Tr5q1WADUBx9VOxG27p18IA7e3Z4VE+YOydQ3tvLb8d8mD6a+D9cBcDNnMBoXufstttht92COyti4cLBrq7+/uhZXtTvOGvWYAPb2Fi5kTEyJmwDg/8AHo5zX60P27yWHUOhKEocHavddBVn81rU7xJrB/TOnapnnFFw8be8V5vZUdHvXm4J0VK/o2U4HXpQ7Y5m4Ov4UlzXy2FGIVvqfRdrEoNVqZTPcesmh31mpI47dqieckrhhTPO0O6f7qyqvnK5v0up+2tRp9pIliSMwqtAP/C6d/4q8EqctmkeZhSyo15mClGDdrWDVZzvGDfNRTlP4XuMeV2fffsJhcIPfUh1164Kf6VCys1VVOp3bG0Nvt7amoi6RgpUbRTq9TCjkB314DIoNWiPHRus49ix8fqP8x3jJsRrbIyu89zWprob2/Xe0ccUNvzYxxIzBuV8r3LuHzUq+PqoUYmqbSRIIkYBOA34tnecGrddmocZhexIw2VQylVTTNpujahBPkzv1lbV5ubotsWzjauu2Kb3jz6y8KazzlLt7Q3Uq7jSmb/CWRySXlOI8zvVu6txpJGE++hi4DbgbO+4Bbg4Tts0DzMK2ZH0TKESd1SpwS3uoB5Gpe39RiIsu2lbm6pu3aqb33x4wYXL+KQKfaHfO07py1JU8reLMtilfidLrV1/JGEUHgEafO8bgUfitE3zMKOQHUmvKYQNVK2t4YNRqcEtK6PgJ8hwjeVVXc4hBcLFfEaFvgFRWLruJHRatmywy2fUqMr/dg0Nwfrk0oVXkpLcSJcoo1DOjuY9fOdvKKOdMQxJunxi2Ka3LVvCU2ksWhRdEawe8O/bGM8rPMw72cp4DuVBAP6bf0LoZz6X4v/vmHYeIvdsF/6+HM45J1qexs5xI0XCrIX/AD4GrAN+CiwF1gJz4rRN87CZwvAhbhRPsZujGrdGKZJ6Kn/jmL/rKt5W0MHqkz+v2t9f9mfEvT/Kh59GkEDU59lMof4goYXmybjF5tOBN8Ztl+ZhRmH4sGxZ6QVa/xFnMTpOqGSUUanaf/+3v6nut19B40t3/4Iuu7J/4JZyjUIcnUr58Gu9r8DWFOqPio0C8Fbv9ZCgI6ptLQ4zCsOHID93nCNqHaOUUYjjW68o0ufFFwc/ji9cqNrfP+jWSmYjpXQq5eMfNy74+rhxMb5bhVj0UX1RjVFY4r3eEXDcHtW2FocZhWwpN4Q0inLcR3HdHqUG3MQ3XW3apLrPPgWdfecNX4n8XSoxCqUo1WfULuwk/pZG/ZOI+6jcA9gNV2N5JbAK+Konn4ALaX3Ke93T12YBsAZ4Ejix1GeYUciOpKOP4qaLKMftUcqXndiA/PzzqnvvXdDBRXw91u+ShVGI85vWWx4rI1mijELc1NkfFpHx3vm/icivROTgEs12AMeq6juBg4CTROQfgAuB21R1f9zehwu9fmcAc4CZwEnAYq++s1GHJF1PoZrsqmFtU4962bgRJkyAN74RNm0C4Bt7/AeC8u/kf4ha15kolXk1Tm2HoVYbw0iOuCGpX1TVV0XkSOBEXATSD6MaeAZpq/e22TsUt1C91JMvBc7wzk8HrlbVHaq6FjdjOCz2NzFqSlix+jhF7IMICi+NQ1QI6rhx0fLW1uDrYfIBnn0Wxo+HffaBl15ysv/8T1Bl4ctfCGyybl1yZUvnz3flN0Xc6/z5hdfdpHswOfnRR8f7nKFUG8NIjrhGIfds9V7gUlW9DhhVqpGINIrIw8Am4BZVvR+YpKobAbzXvb3bpwDP+Jpv8GRGHZJ0hbGgfQ9hg3NjY/6euXPdE23QgPvaa8Htc/JLLoHm5sJrzc1OHsgzz7gqOlOnusIJAN/7HvO7lKYvfB6R8AEZ3LV16+ATn6jcMBTXle7rc++LDUMUa9bEu6/eamMYNSLMr+Q/gBuAHwFP4zaxjQZWxmnrtd8Dtzh9IPD3omsvea8/AM70yS8HPhjQ1zxgObB82rRpifvajHjE8YWXuxA9e3Z56witrYOjh8rNyRNLx56ewSE9ixerani4ZanDHwEVdD3st4oT81/qd0tjTSHJoAMjfUggzUUL8AFgf+/9ZOCEOG19fXwZuAC3iDzZ18+T3vkCYIHv/puBI6L6tIXm7Ci1AarchehyDEKpI6k0F/r004Mazm9eUnBL2CAdZwDOUU64Zpz+qvntKhnUg/aYNDebYahnkjAKbwZGe+dHA58D9ijRZmLuHmAMcDdwKvAt4EJPfiHwTe98Ji5SaTQwHfhfoDHqM8woZEfYID57trte7q7ZpAxCbmAr1WcYXV2qb2l4alCDj3PFwNsxY+LpHed6uQNq2kahEqyewtAjCaPwMNAE7Oe5kP4LuLFEm3cAD+GS6T0GfMmTt+Kijp7yXif42iz0+n8SOLmUXmYU4pP05qFSboxyd80maRQqnSl8ec4Tg27s5MrI9tWGvZY7oNajUUi6PyN9kjAKD3qvXwA+650/FKdtmocZhXikkWag1ECQ1Uyh3DUFVVVdvXrQDR/lqljtS/22pfood0A1o2AkQZRRiBt9tEtEPgachVt0BhdiagwBliwpTx6HUtFHtc5gWlGm1scecw1nzBgQfYj/QVB+wZxYXSxeDF1d+e/d2OjeL17s3lcc9loFbW2VtZs9u7J2WXxHIz3iGoVPAEcAi1R1rYhMB5alp5bR3e1CLJOIbU9jE9ekSdHypFNrl6K/H3p64vX/DlY6pd7+9rzw179GUK7lQyXbjxlT+H7WLBelKuJeZ83KXysV9lrugNrVVVoeZJBHjXJ95v4WPjsIOINw663BfZfikktc/8WfFxraa9Q3YVOIoXAMV/dR0ikkSiVIq4SkXQZRUTyVuj2K/fUHs2Jww+uvH7g/Trhm8W8W528VFa65bNngzxWJ/lvHWR+qdYiohaQOLagiId413uujuAXj3PEoVnktNZLOd19tAfsgaumXrtQo5CKkOnhgcIMbb6xYhzi1CRob4w2QllbayIIooyDuejAiMllVN4pIoJdSVStMapAMHR0dunz58ixVSIWGBjc0FCPi3CRZ95drG0bEP6lQxo/PbxKuhKDPnNV4H/f2H1EgO4Gbub3xBHp7B9/f1BTPpdbYyED7sN/WT0tLuOss7DP9n1HM/Pmuv74+d9+8efk1DMOIg4isUNWOoGuRawqaT0exzjMALwGv+g4jBcLSC1SadiDp/tIgLCVFRdxzD4gUGIRjuQ1BuYUTQgf+efPide9vH+c3jEouV+56TxJpLtIgyTUwI2PCphD+AzgHeAHowZXiXAv8b5y2aR7D1X2UdGH1uGsU5fiF6819BKrHNNw5SHgUdwa6dsLw++vDDn/7oN+2nN+l3FKV9VjaMuk1MCN9SCAk9QJgpqq2q+p073hTCjbK8Ch2SVTikskRJxKou9slalu3zn1WtYnbgkjrafJYbkMRbu8/Oi+85x7mdyl/5D2D7o87IwhzkfnbF/+2YYSF8IbpEiZPPR14BSSdRt3ImDBr4T+Am4CWOPfW8hiuM4U0CquXIo2dtX5KPU1WMjM4npsHCQ/nzwVPzeXs5C6V3C7OTvBKZlDl6FiPM4Va13w2qodKF5pzeAV1fgLcjyuekzMon0vHVMXDFpqTo9yF43Lvb28PrrXQ1ub2F0T1V8xJ/J7fc0qB7F08wHLeFalDKZJYPB83Lnh9ZOzY6hbScxx3HNx222B5NfsMqqXU39aoPypeaPbxI+B24D5ghe8wUiCs2EwlRWjqhSSK8pzKb1GkwCAcwgoELTAIldZ0SIJiN0opebmE1UKIWyMhDWq9e91Il7hGoVdVP6+qP1HVpbkjVc1GMNu3lydPgjRSFfjXEMKIM4Cfwa9RhN9y2oDsnTyMoDzEIYPuj7tmkAZhM4qomUY5ay1h1dCyrJJW693rRsqE+ZX8B7AIV9xmMjAhd8Rpm+YxXNcUKvFLV0u5EU+ldCw3KidI/iGuGSScyaNV+fyjSMI3XslaSzmps7NYbzKGHySQJXVtwGEhqSmRhlGIE26aZEhq2OBVfOQWsv2yOfx80I1vZXVFv0s53ymJ3cXl6ljuAr+FfxpJULVRqNfDjEI8li0bnP+ooaG6gaSUjnHLPvqNwpn8bNAN+/NkrH7Cvne5A2i1dSfK1d3g2+QAABjrSURBVDFtQ1cr6lEnI5yKjQLwBd/5h4uu/XtU21ocw9UoJOEiiLMJK83cR2FPwIH3X3HFIOGbeSp2ewgejLJwtdTCKNQbNnsZekQZhVILzf6k8guKrp1U4TKGUYJqozmKUyGEkWhqiQr4FJehCJx99oBsOv+LoDzNfmX1peoimc46K79Qm8WibLkL9sOhFoFtXhtelDIKEnIe9L7wosi+InKHiDwuIqtE5DxP/hUReVZEHvaOU3xtFojIGhF5UkROLOubDCOqjeb44Q/T1S8OW7aEX/sMl6IIl+HChHbRRBs9CEoP06v63P5+OOccd55FzqdyawsMh1oE9RgRZVRB2BTCzTBcGc7i86D3AW0nA4d45+OBvwIzgK8AFwTcPwNYCYwGpuNqNTdGfcZwdR9VS1yXS1BtgKQWmoNcV5/lkgLBa4zRqawvy00U2yWl2bk1yvWvD3V/vEVEDT2oYk2hD3gFlxG11zvPvd8V1Tagr+uA4yOMwgJgge/9zcARUX0OZ6NQzUARd+D0L6KWO4CWGpD977/GvxUI/s7uOplnUzEGxf74oT7gDgVsTWHoUbFRSOoA2oH1wO6eUejBFeu5AtjTu+f7wJm+NpcDH4rqd7gahWqjhUpF/gRF1ZT7tFdqQG5tVb2O9xVc2EyrTmJjqsag2CiMVKzymhFFlFGIlfuoGkRkHHAXrr7zr0RkEvAioMD/D0xW1bNF5AfAn1V1mdfucuBGVb22qL95uI10TJs27dB15eRJGCJUmz+nkhw+5eZbivyME06EP/yhQLYv69nAvuGNEiblf9Z1TXe329XtX/yNKvRjjDySyH1U6Qc3A9cC3ar6KwBVfUFV+1S1H7gMOMy7fQMUjBpTgeeK+1TVJaraoaodEydOTFP9zAiLCkozWqj6RVnlTt7jool8BmEa6xC0pgZhpGPRQEY1pGYURERwLqDHVfU7Pvlk323vBx7zzq8H5ojIaBGZDuwPPJCWfkYhlYfBKn/iCJQG3sMfB6SHT9mAoDxDHZV3GyFYNJBRDWnOFGYB/wgcWxR++k0ReVREHgGOAf4ZQFVXAdcAq3H1G85V1QxLhwxPRFxd4OLyjeWHwSoPcjBKA0dw34B0Ms+BKp/7jymDjExzs4u/LydNtlE+Q6H8qlG/NKXVsareQ/Behhsj2izCJd8zUiRX1xcqKPiuCjNnojxeIJ7E82xiEuPGufc5Y7JwoXtCnTbNzTpy8jQNw1Da+JUGixYFrylYKmsjFmEr0EPhGK7RR9VG1cyeHS9Cp7jWcGTEU1+f6vTpgzppZXOBaMaM6r9jNUdUhtGRhEUDGVGQZfRRmtRz5bXu7vCn5FJUWwFs/Pj4Vb5y/YVFPI1r6efVPfaF5wrX/CewhZeYULGOSc4UcrqX+zsbxkglKvooNffRSKY4JHDdunzhl2oHrIaG0oNfJWUfiw1CA328wCT22rYF/JEsL70Ee+zBS3W0LrB9e3plSg1jpJFqSOpIJc2QQNW8kYmq0BWHoKf1Rnp5lXH00cRe+BIYvfyy+/A99qjuQ1OgVOI/wzDiY0YhBWoREpiEkfG7eZrYxU6a6aWZceSnDeN41d24++7VfViKZFmT2TCGG2YUUqBWIYGJGJmdO0GEXYyimd4BcQuvISivMS6BDxlMkgN5ljWZDWO4YUYhBU45pTx5pVRjZEbzutt9PHp0gXwM2xCU7bSEtEyGAw6ovo/GRujqqiCs1jCMUGyhOQVuDNmJESavhErjzndje+CAvxuvs4PRg+Rp7Sd48snK286eDbfempwuhmHksZlCCoTl6Esid18lRXfAuYMUKTAI/Qjs2AGqnN012CAAfOYz1WocTKWLww0N8IlPJKuLYRh5bKaQAo2NwYNeEn70ckMvx7KVrYwvkG1nN3bnFXppRr2qXzkXzJIlTvfGRuerT8s1E/YblaK/3y2w214Ew0gHmymkQNhg55fPn+9yEIXlIqqW8byCIgUG4SX2oIldtLCdXpoHtVm8GHp7XbBRb2+6vvpqFoctsZthpIfNFFKg1Exh/vx87iGoMhdRMX//O8qeBaLnmcQUnqWf5EJ+GhqCZy0NMR8zimcm5WCJ3QwjPWymUAHd3dDe7gbA9vbBm8hKzRSWLAm+HiaPxZYtbtqxZ94g9NBGA31M5vlYBqGc2ctb31qePAj/zGT27HhtLLGbYaSLGYUyyaWwWLcufHdx2NpBTh7HvRSbzZvdKL7XXgOiJ3kLQj/T6UFj/olzs5ecDrnZS5hhCIseqjSqaM2aYHlraznpvA3DqBZLiFcm7e3BUURtbdDT485LJbRragp3L/X2xkyI98IL8MY3Fl488EB45BGkIX4caa6/UjoVU23SvrT7MwwjnMzKcQ5H4oSbhg1wOXnYImusxdfnnnMd+Q1CR4dz8D/6aFkbC8aMyZ+XO3spNRsql6T7MwyjMswolEmcwSvsyTYnX7zY7cTNtYmzM3cqz7gdyFOm5IWzZjlj8Je/VLTLbPv2YP39hMmrMmwBJOpSMwyjYtKs0byviNwhIo+LyCoROc+TTxCRW0TkKe91T1+bBSKyRkSeFJET09KtGpIavGbNgqlT3Vg+dap7H8Q01qFIYa3jY491FuaeexLbclzuIF+JYYuira08uWEYKRFWfafaA5gMHOKdjwf+CswAvglc6MkvBP7DO58BrARGA9OBp4HGqM/IovJaW1twxa+2tvw9pSqnLVvmKoSFVQwD1UlsHNT4d5wcS8cZM+JXKvPT1eWqseWqsnV1Vf1zxaarK1i/WupgGCMFIiqvpTZTUNWNqvqgd/4q8DgwBTgdWOrdthQ4wzs/HbhaVXeo6lpgDXBYWvpVShLJ7s47D3btKpTt2uXkbNzI39iT55k8cO3XnIGgvDe8vHUBlabTqOXmtWJqkS/KMIzS1GRNQUTagYOB+4FJqroRnOEA9vZumwI842u2wZPVFWGD1JIl+X0LpdiyZbBsH56lZ8s42Gcf9uTvAFzEIgTlA/y6LB2DymrWO7WoQWEYRmlSNwoiMg64FjhfVV+JujVANmjJVkTmichyEVm+efPmpNSMTdgg1deX37dQDvuyntcZzbNMHShu81m+h6B8g4sG3R+2YW6oU6saFIZhRJOqURCRZpxB6FbVX3niF0Rksnd9MrDJk28A9vU1nwoUVosHVHWJqnaoasfEiRPTUz6EpAapNnroo4H1tDGanQB8hktBle/z2dB2SZbjrCcWLXK7lf3Y7mXDqD1pRh8JcDnwuKp+x3fpemCudz4XuM4nnyMio0VkOrA/8EBa+lXKfvtV2cHTT6MIPUynwZsIfYrLEJQfET9PdVI1n6uhVLqPcujshLlzC6OZ5s613cuGUXPCVqCrPYAjce6fR4CHveMUoBW4DXjKe53ga7MQF3X0JHByqc/IIvpIJH5kj//Yj78OEp7FTwOjgeL2KRKs49ix8do3Nlb+OyxbptrSUthfS0s+gqqS/kaNKuxv1KjK+zMMIxwioo8szUWZlLst4ACe4AneViDrZBk/J/gRWDX+Z/hTa/g57ji47bbS7ceOha1b431WMXHSfZTDXnsFL8C3tsKLL5bfn2EY4Viaiwx4G6tRpMAgfJSrQTXUIJRDlL/99tvj9VFNlFLS0UJBBiFKbhhGOphRSJgDeRRFWM3MAdkH+SWCcg0frbr/ONlCazH5s2ghwxieWJGdhHgnD/MwBxfIzuDXXDewNy8Zyi3HGUXcgjhBLFrkIqC2bcvLqokWam0Ndx8ZhlE7bKZQJYewAkUKDMKp/BZBEzcIcYm7JlGNgensdLOVpGodXHIJNBdVCG1udnLDMGqHzRQq5F08wAMcXiA7id9zMydlpFGeuO6japPNdXYmFzKa62fhQrcuMW2am3VYSKph1BabKZTJP/BnFCkwCMfzBwStC4MA8Qf7cvI1GYYxMjCjEJe77wYR/sy7B0THcDuCcivHZ6jYYIJ2BwdxzTXp6xKXOGVODcNIHzMKpbjzTuc0P+qoAdFR3IWg3MkxFXWZdpWxYn9/GPUU7rlwYeGiNdTHrm3DGGmYUQjj1lvdiHqMb+C/914E5W6OCm8Xg1KFekaNCr4eJg+is9NtIksyWilN4pQ5NQwjfcwoFHPzzc4YHO9zCd13n/NpvPvd4e3KICzMMif/5CeDr4fJSzFuXHnyLLAazYZRH5hRyHHDDc4YnORbLP7LX5wxOPzw8HZlsM8+7nXHjuDrOXnSBWf8tZjjyLPAajQbRn1gRuG665wxeN/78rIHH3TGoCMwNUjF5OLww/IN5eRJu1KGwoBrNZoNoz4YuUbhD39wxuAM3wazlSudMTj44PB2VWBVxMKxegqGUR+MXKNw4on588cec8bgHe8AYP58aGpyNqOpyb1PggkTkulnOJL0DmnDMCpj5O5ofvrpwKLK8+fDpZfm3/f15d/XspB9ksyeHZxKe/bs2usSRZI7pA3DqAyrp1BEU1Owr72xEXp7w/P+x0HEhYhG7R0oVU+h0j9XcY2F2bNd1K1hGCMPq6dQBqUWZT/ykcr7zjKt9K23FtZdM4NgGEYQadZovkJENonIYz7ZV0TkWRF52DtO8V1bICJrRORJETkxuNdkiKotXCpevtKw0Obm/KJpqX0KSWxeMwzDqIQ0Zwo/hcAMcf+lqgd5x40AIjIDmAPM9NosFpFUti2VyrEzb15wu5w8TgRRc7NzQ/nxu4QuuWTwAD9qVD5N9BVXDHYhiTi5YRhGmqRmFFT1j8DfYt5+OnC1qu5Q1bXAGuCwNPQqlWNn8WLo6srPDBob3fvcInOYC6ixMR81s/vubv3Bz86d+c/o7HQDvD/S5oor8ousnZ1w5ZWF16+80hZhDcNInyzWFP5JRB7x3Et7erIpwDO+ezZ4ssSJU1t41iyYOtUNyFOnuvc5wuLply51i8g9PfC3EFPo/wx/bqKensEDfqnrhmEYaVBro3Ap8GbgIGAj8J+ePCjeJjDORkTmichyEVm+efPmshUISymdk5dyLwXF08+d62YBuTWKsP0I5Sw0R6171KK9YRgjFFVN7QDagcdKXQMWAAt8124GjijV/6GHHqrl0tDgj8HJHw0N7npbW/D1xkZVEXd92bJ8f8uWqba0FN7b3Kw6alShrKWlsF0UQX2W277480eNit/eMIzhDbBcQ8bVVPcpiEg7cIOqHui9n6yqG73zfwYOV9U5IjIT+DluHWEf4DZgf1WNzM5TyT6FUnsAGhpK7wVoacnvtm1vD85J1NrqspBWUloyrM+2NudKKkXYXorWVnjxxXg6GIYxfInap5CaURCRq4Cjgb2AF4Ave+8PwrmGeoBzfEZiIXA20Aucr6q/L/UZlRiFUpvTwgbkYnIDdJgRyW1Uq4Rq+4wyfCJW/9gwRjqZbF5T1Y+p6mRVbVbVqap6uar+o6q+XVXfoaqn5QyCd/8iVX2zqh4QxyBUSqmQ07h1i3OLxmHrBNVsVEujzxxW6tIwjChG3I7mUiGncTen5QboMCMS17gEUW3G0LDNcX6s1KVhGEGMOKMAzgD09rqn5t7ewkR3cTan+QfopAviQPUZQy+5JF+7IQpL5W0YRjEj0ihEEWdzmn+AjrPvoRKq2afQ2Qk/+UneqISl7sgyF5NhGPWJGYUi4mxO8w/Qlfr/095H4DcqYeso1bi4DMMYnphRKKJc100l/v9SG+SSJg0Xl2EYwxMzCgGU47qpxP9fKv8SJDuTSMvFZRjG8MOK7GRAqQ10uZmE33D4N8yVS7Wb4QzDGF5YkZ06o1TNhjgziXKoNsTVMIyRgxmFDChV3S1pd0+1Ia6GYYwcmkrfYiRNW1u4Owdc5FLQ9WpCSDs7zQgYhlEamylkQCl3jrl7DMPICjMKGVDKnWPuHsMwssKijwzDMEYYFn1kGIZhxMKMQgJY6UvDMIYLFn1UJcUbzXIpK8DWAAzDGHrYTKFKkt5oZhiGkSWpGQURuUJENonIYz7ZBBG5RUSe8l739F1bICJrRORJETkxLb2SxvIKGYYxnEhzpvBT4KQi2YXAbaq6P3Cb9x4RmQHMAWZ6bRaLSEgyiPoizdKZhmEYtSbNGs1/BP5WJD4dWOqdLwXO8MmvVtUdqroWWAMclpZuSWIbzQzDGE7Uek1hkqpuBPBe9/bkU4BnfPdt8GR1j200MwxjOFEv0UdByaQDd9WJyDxgHsC0OvHRWF4hwzCGC7WeKbwgIpMBvNdNnnwDsK/vvqnAc0EdqOoSVe1Q1Y6JEyemqqxhGMZIo9ZG4Xpgrnc+F7jOJ58jIqNFZDqwP/BAjXUzDMMY8aTmPhKRq4Cjgb1EZAPwZeBi4BoR+SSwHvgwgKquEpFrgNVAL3CuqoZUHTAMwzDSIjWjoKofC7k0O+T+RYDF7BiGYWSI7Wg2DMMwBhjSqbNFZDMQUKMsNnsBLyakTlqYjslgOiaD6ZgMWevYpqqBkTpD2ihUi4gsD8spXi+YjslgOiaD6ZgM9ayjuY8MwzCMAcwoGIZhGAOMdKOwJGsFYmA6JoPpmAymYzLUrY4jek3BMAzDKGSkzxQMwzAMHyPSKAQVAKo3RGRfEblDRB4XkVUicl7WOhUjIruJyAMistLT8atZ6xSEiDSKyEMickPWuoQhIj0i8qiIPCwiy7PWJwgR2UNEfikiT3j/Lo/IWic/InKA9/vljldE5Pys9SpGRP7Z+//ymIhcJSK7Za2TnxHpPhKRo4CtwM9U9cCs9QnCSxg4WVUfFJHxwArgDFVdnbFqA4iIAGNVdauINAP3AOep6n0Zq1aAiHwe6AB2V9VTs9YnCBHpATpUtW7j60VkKXC3qv5YREYBLar696z1CsIr0vUscLiqVrOXKVFEZAru/8kMVd3upfe5UVV/mq1meUbkTCGkAFBdoaobVfVB7/xV4HHqrMaEOrZ6b5u9o66eMkRkKvBe4MdZ6zKUEZHdgaOAywFUdWe9GgSP2cDT9WQQfDQBY0SkCWghJCN0VoxIozDUEJF24GDg/mw1GYznmnkYlwb9FlWtNx2/C3wB6M9akRIo8AcRWeHVDKk33gRsBn7iueJ+LCJjs1YqgjnAVVkrUYyqPgt8G5cQdCPwsqr+IVutCjGjUOeIyDjgWuB8VX0la32KUdU+VT0IVwPjMBGpG3eciJwKbFLVFVnrEoNZqnoIcDJwrufirCeagEOAS1X1YOA1vBrr9Ybn2joN+J+sdSlGRPbElR+eDuwDjBWRM7PVqhAzCnWM56e/FuhW1V9lrU8UnivhTuCkjFXxMws4zfPXXw0cKyLLslUpGFV9znvdBPya+qtRvgHY4JsJ/hJnJOqRk4EHVfWFrBUJ4DhgrapuVtVdwK+Ad2esUwFmFOoUbxH3cuBxVf1O1voEISITRWQP73wM7h/8E9lqlUdVF6jqVFVtx7kTblfVunoqAxCRsV4wAZ5L5gSgriLjVPV54BkROcATzcbVP6lHPkYduo481gP/ICIt3v/x2bj1wrphRBoFrwDQn4EDRGSDV/Sn3pgF/CPu6TYXYndK1koVMRm4Q0QeAf6CW1Oo27DPOmYScI+IrMRVHPydqt6UsU5BfBbo9v7eBwH/nrE+gxCRFuB43BN43eHNtH4JPAg8ihuD62p384gMSTUMwzCCGZEzBcMwDCMYMwqGYRjGAGYUDMMwjAHMKBiGYRgDmFEwDMMwBjCjYIwYRKSvKItmxTtyReRPSepW1HeHiHwvrf4NIwoLSTVGDCKyVVXHZa2HYdQzNlMwRjxeLYOvisiDXk2Dt3ryiSJyiyf/kYisE5G9vGtbvdejReROX52Bbm+nKiJyqIjc5SW5u9lLh1782R/28uqvFJE/+vq8wTu/0TezeVlE5npJCL8lIn8RkUdE5Jxa/VbG8MeMgjGSGFPkPvqo79qLXkK6S4ELPNmXcakxDsHlI5oW0u/BwPnADFw20Vle3qr/Bj6kqocCVwCLAtp+CThRVd+JS+JWgKqe4iUc/CSwDviNd/6yqr4LeBfwaRGZHv9nMIxwmrJWwDBqyHZvgA0ilxZhBfAB7/xI4P0AqnqTiLwU0vYBVd0A4KURbwf+DhwI3OJNHBpxqZKLuRf4qVdsJTA1gzc7uRL4iKq+LCInAO8QkQ95t7wB2B9YG6KfYcTGjIJhOHZ4r33k/19ImW397QVYpaqRJStV9TMicjiuENDDIlJgtLwKYlcDX1PVXJI8AT6rqjfH1M8wYmPuI8MI5x7gIwDe0/meZbR9EpgoXh1jEWkWkZnFN4nIm1X1flX9EvAisG/RLRcDj6jq1T7ZzUCX56JCRN5S5wVvjCGEzRSMkcQYz72T4yZVjQpL/Spwlbf2cBfO/fNqnA9S1Z2ee+d7IvIG3P+17wKrim79lojsj3v6vw1YCbzHd/0CYJVP7y/hSou2Aw96i9qbgTPi6GUYpbCQVMMIQURGA32q2us98V8asSZhGMMCmykYRjjTgGtEpAHYCXw6Y30MI3VspmAYhmEMYAvNhmEYxgBmFAzDMIwBzCgYhmEYA5hRMAzDMAYwo2AYhmEMYEbBMAzDGOD/AdeeXpZCp3LpAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"plt.plot(train_x, regr.coef_*train_x + regr.intercept_, '-r')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Evaluation\n",
"we compare the actual values and predicted values to calculate the accuracy of a regression model. Evaluation metrics provide a key role in the development of a model, as it provides insight to areas that require improvement.\n",
"\n",
"There are different model evaluation metrics, lets use MSE here to calculate the accuracy of our model based on the test set: \n",
"<ul>\n",
" <li> Mean absolute error: It is the mean of the absolute value of the errors. This is the easiest of the metrics to understand since it’s just average error.</li>\n",
" <li> Mean Squared Error (MSE): Mean Squared Error (MSE) is the mean of the squared error. It’s more popular than Mean absolute error because the focus is geared more towards large errors. This is due to the squared term exponentially increasing larger errors in comparison to smaller ones.</li>\n",
" <li> Root Mean Squared Error (RMSE): This is the square root of the Mean Square Error. </li>\n",
" <li> R-squared is not error, but is a popular metric for accuracy of your model. It represents how close the data are to the fitted regression line. The higher the R-squared, the better the model fits your data. Best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse).</li>\n",
"</ul>"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 24.10\n",
"Residual sum of squares (MSE): 986.03\n",
"R2-score: 0.69\n"
]
}
],
"source": [
"from sklearn.metrics import r2_score\n",
"\n",
"test_x = np.asanyarray(test[['ENGINESIZE']])\n",
"test_y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"test_y_hat = regr.predict(test_x)\n",
"\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(test_y_hat - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((test_y_hat - test_y) ** 2))\n",
"print(\"R2-score: %.2f\" % r2_score(test_y_hat , test_y) )"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2>Want to learn more?</h2>\n",
"\n",
"IBM SPSS Modeler is a comprehensive analytics platform that has many machine learning algorithms. It has been designed to bring predictive intelligence to decisions made by individuals, by groups, by systems – by your enterprise as a whole. A free trial is available through this course, available here: <a href=\"http://cocl.us/ML0101EN-SPSSModeler\">SPSS Modeler</a>\n",
"\n",
"Also, you can use Watson Studio to run these notebooks faster with bigger datasets. Watson Studio is IBM's leading cloud solution for data scientists, built by data scientists. With Jupyter notebooks, RStudio, Apache Spark and popular libraries pre-packaged in the cloud, Watson Studio enables data scientists to collaborate on their projects without having to install anything. Join the fast-growing community of Watson Studio users today with a free account at <a href=\"https://cocl.us/ML0101EN_DSX\">Watson Studio</a>\n",
"\n",
"<h3>Thanks for completing this lesson!</h3>\n",
"\n",
"<h4>Author: <a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a></h4>\n",
"<p><a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a>, PhD is a Data Scientist in IBM with a track record of developing enterprise level applications that substantially increases clients’ ability to turn data into actionable knowledge. He is a researcher in data mining field and expert in developing advanced analytic methods like machine learning and statistical modelling on large datasets.</p>\n",
"\n",
"<hr>\n",
"\n",
"<p>Copyright &copy; 2018 <a href=\"https://cocl.us/DX0108EN_CC\">Cognitive Class</a>. This notebook and its source code are released under the terms of the <a href=\"https://bigdatauniversity.com/mit-license/\">MIT License</a>.</p>"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"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.10"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment