Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Alexon-Abreu/b04619716e1bda9bdaa8a560362b9c48 to your computer and use it in GitHub Desktop.
Save Alexon-Abreu/b04619716e1bda9bdaa8a560362b9c48 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,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<a href=\"https://www.bigdatauniversity.com\"><img src=\"https://ibm.box.com/shared/static/cw2c7r3o20w9zn8gkecaeyjhgw3xdgbj.png\" width=\"400\" align=\"center\"></a>\n",
"\n",
"<h1><center>Simple Linear Regression</center></h1>\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>\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Importing Needed packages\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"button": false,
"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,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Downloading Data\n",
"\n",
"To download the data, we will use !wget to download it from IBM Object Storage.\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2021-06-14 15:50:04-- https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-Coursera/labs/Data_files/FuelConsumptionCo2.csv\n",
"Resolving cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)... 169.63.118.104\n",
"Connecting to cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)|169.63.118.104|: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.002s \n",
"\n",
"2021-06-14 15:50:04 (33.2 MB/s) - ‘FuelConsumption.csv’ saved [72629/72629]\n",
"\n"
]
}
],
"source": [
"!wget -O FuelConsumption.csv https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-Coursera/labs/Data_files/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)\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"understanding_data\">Understanding the Data</h2>\n",
"\n",
"### `FuelConsumption.csv`:\n",
"\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?cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBMDeveloperSkillsNetwork-ML0101EN-Coursera-20231514&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBMDeveloperSkillsNetwork-ML0101EN-Coursera-20231514&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBMDeveloperSkillsNetwork-ML0101EN-Coursera-20231514&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBMDeveloperSkillsNetwork-ML0101EN-Coursera-20231514&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ)\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,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"reading_data\">Reading the data in</h2>\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"button": false,
"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,
"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.\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"button": false,
"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.\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"button": false,
"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": 6,
"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:\n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"button": false,
"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",
"viz.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:\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"button": false,
"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": 9,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEHCAYAAABBW1qbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAwDElEQVR4nO2df5xddXnn389MJiGTqMAksoGQGUqBdmItypTWTX+gAbHRF2i3unFHzUt9NZjQFu36smazW7XddNnWttLdJjYVJJqpLFvtyotSlERtV0ulAQFJkCUuCQSykIA/QBBI8uwf59yZM3fOuefHPeeeO3c+79fr+7r3fs/5nvPcm8z3Od/neb7PY+6OEEIIAdBXtwBCCCG6BykFIYQQk0gpCCGEmERKQQghxCRSCkIIISaRUhBCCDHJvCovbmYHgKeB48Axdx8zs1OB/wGMAAeAt7n798LzNwHvDc//bXf/UqvrL1myxEdGRqoSXwghepI777zzqLsvjTtWqVIIea27H418/jCw292vNrMPh59/18xGgbXASuB0YJeZnevux5MuPDIywp49e6qUXQgheg4zO5h0rA7z0eXAjvD9DuDNkf4b3P15d38I2A9c2HnxhBBi7lK1UnDgy2Z2p5mtD/tOc/fDAOHry8P+M4BHImMPhX1CCCE6RNXmo1Xu/piZvRy4zcy+0+Jci+mbkYMjVC7rAVasWFGOlEIIIYCKVwru/lj4+gTwtwTmoMfNbBlA+PpEePoh4MzI8OXAYzHX3O7uY+4+tnRprJ9ECCFEQSpTCma2yMxe0ngPvB64D7gJWBeetg74Yvj+JmCtmS0ws7OAc4A7qpJPCCHETKpcKZwGfN3M7iGY3P/O3W8FrgYuMbMHgUvCz7j7XuBGYB9wK3Blq8gjIcTcYmICRkagry94nZioW6LexGZz6uyxsTFXSKoQvc/EBKxfD88+O9U3OAjbt8P4eH1yzVbM7E53H4s7ph3NQoiuZ/Pm6QoBgs+bN9cjTy8jpSCE6HoefjhfvyiOlIIQoutJij5XVHr5SCkIIbqeLVsCH0KUwcGgX5SLlIIQousZHw+cysPDYBa8yslcDZ1IiCeEEG0zPi4l0Am0UhBCCDGJlIIQQohJpBSEEEJMIqUghBBiEikFIYQQk0gpCCGEmERKQQghxCRSCkIIISaRUhBCCDGJlIIQQohJpBSEEEJMUrlSMLN+M/uWmd0cfv6omT1qZneHbU3k3E1mtt/MHjCzS6uWTQghxHQ6kRDvKuB+4KWRvj9z949HTzKzUWAtsBI4HdhlZueqTrMQQnSOSlcKZrYceCPwqQynXw7c4O7Pu/tDwH7gwirlE0IIMZ2qzUefAD4EnGjq/00zu9fMrjOzU8K+M4BHIuccCvuEEEJ0iMqUgpm9CXjC3e9sOrQNOBs4HzgM/EljSMxlPOa6681sj5ntOXLkSIkSCyGEqHKlsAq4zMwOADcArzOzne7+uLsfd/cTwF8xZSI6BJwZGb8ceKz5ou6+3d3H3H1s6dKlFYovhBBzj8qUgrtvcvfl7j5C4ED+iru/w8yWRU57C3Bf+P4mYK2ZLTCzs4BzgDuqkk8IIcRM6ijH+Udmdj6BaegAcAWAu+81sxuBfcAx4EpFHgkhRGfpyOY1d/+au78pfP9Od/8Zd3+lu1/m7ocj521x97Pd/Tx3//tOyCaEmB1MTMDICPT1Ba8TE3VL1JtoR7MQIpWNG2HePDALXjdu7Oz9JyZg/Xo4eBDcg9f166UYqkBKQQjRko0bYds2OB4ac48fDz53UjFs3gzPPju979lng35RLuY+I+pz1jA2NuZ79uypWwwhepq+vuDpvBkzONG8A6mHZeglzOxOdx+LO6aVghCiJUnPjZ18nlyxIl+/KI6UghCi69myBQYHp/cNDgb9olykFIQQXc/4OGzfDsPDgcloeDj4PD5et2S9h5SCEKIlGzbk66+K8XE4cCDwIRw4IIVQFVIKQvQAVcbwb90aKID+/uBzf3/weevW9q6rfQfdiZSCEBVTdYx/XAz/u98NS5aUN+Fu3QrHjgXXP3asHIWgfQfdiUJShaiQRox/M2U8aTcYGQkm1VYMDnaXDT5J5uHhwDQkqqVVSKqUghAVMm/e1KavKP39wRN3GSTF8DfTTROu9h3Ui/YpCFETcQqhVX8RssbqP/xw8XukmcDy+ge076B7kVIQokIsrnRUi/4ixMXwx1F0wk1Lc1HEP6B9B92LlIIQFVLGbuC0p/TmGP6hIZg/f/o57Uy4n/xk6/4ieYm076B7kVIQc5q6s3+mkTUZXTSG/+hReO97p4eQrltXfMJNU2xJZqk0c5X2HXQnUgpiztKJ7J+NiTlrfzPbt+frh8Bss2PH9O+1Y0d14Z7yD/QWUgpizlJkws3L+vX5+psp4qjudJpp+Qd6i8qVgpn1m9m3zOzm8POpZnabmT0Yvp4SOXeTme03swfM7NKqZRNzm05EBrW7G7jISqOoOSeJtDQX4+OBeaosc5Wol06sFK4C7o98/jCw293PAXaHnzGzUWAtsBJ4A7DVzDIusoXIT7umnay0sxu4yEqjbHNOmmLrtLlKVEulSsHMlgNvBD4V6b4c2BG+3wG8OdJ/g7s/7+4PAfuBC6uUT8xt2jXtdIJVqwIHeJR584L+JOLMOQMD8MwzxdNetFJsqorWW1S9UvgE8CEgukfxNHc/DBC+vjzsPwN4JHLeobBPiEqoKtFbmWzePHPn87FjMyfc6OaxzZsD8000RNUMnnyymjxDZZurRL1UphTM7E3AE+5+Z9YhMX0zguHMbL2Z7TGzPUeOHGlLRiHKTvRWNlkm3LjNYzt2BCuGEydg8WJ44YXp48t8klf0UW9R5UphFXCZmR0AbgBeZ2Y7gcfNbBlA+PpEeP4h4MzI+OXAY80Xdfft7j7m7mNLly6tUHwh6ifLhJtmvqn6Sb6q6KOVK4MVTqOtXNne9UQ2KlMK7r7J3Ze7+wiBA/kr7v4O4CZgXXjaOuCL4fubgLVmtsDMzgLOAe6oSj4hZgNZJty0Sb/qJ/kqdievXAn79k3v27dPiqET1LFP4WrgEjN7ELgk/Iy77wVuBPYBtwJXunuJwYFCzD6yTLhpk34n9hGUvTu5WSGk9c8lKt+F7+6ztl1wwQUuRN3s3Ok+POxuFrzu3Nn5+w8OugcehaANDk6Xo24Z8xL9Ls1tLrNhQ/xvsmFDvusAezxhXtWOZiHaoBsqiGVZTTQ/yYNKYc5GOrELX0pBiDaYjTH6VSiysp3Co6P5+ucKndiFL6UgRBvUEaMfnXwbLW2Sj+5jWLcuvyK7+OLp97v44qljVTiF9+6dqQBGR4P+uUwnduFLKQjRBp2O0U8qztNqkm9eGSQ9VSbVeb74Yti9e3rf7t1TiqEqp/DevdMt53NdIUBnduFLKQjRBt2cIbSxWokzccWR9LTZrBDS+kV1dGIXvpSCEG3QzRXEGquVrKasMu3Sojqq3oUvpSBEDxJdrWQ1ZQ0PVyePmD1IKQjRBt0QktogabUSZ+KKY82a+P7Vq/P1i9mNlIIQLYhG7cTF83c6JLVVveSkHcXNJq4k38Ett8T379o1UwGsXh30Q+fqUojOIKUgRAJZVgF1hKTG7WlNS30Q3bx24kTsZVvKvGvX9Ps1FAKUFxFTefoGkY2krc6zoSnNhaiS4eH4lALDw1PnDA3FnzM0VJ1cGza49/cH9+nvdx8dzZf6IMv3ysvq1dOvtXp1/u9URvoGkQ2U5kKI/HRj8ZiNG2HbtumlL5P2A2zbFm/2KjuMdmICbr99et/tt880tbUyxXUifYPISJK2mA1NKwVRJVmeqM3izzErT45oMrtWieJatSoT5CX9TkNDU/cYGnKfPz9ZJiXA6yxopSBEfrI8USeFe/b1lZNsrtmvUZRnnw3SWzRkgtaprlultWgmaSf0k09Oyf3kk62rv8lZ3T1IKQiRQJaNaUnhnsePlxOimnU3chayypSW1qJMGqa4iy6KP57UL6rDvJ3Hj5oZGxvzPXv21C2GmONMTAST98MPB0/icTuDh4enUlbnoa+vvRVCK/r7g5XCihWBcmsou6T8StFx69dP7aRNO78Vjd9lZCR+xVH0dxOtMbM73X0s7phWCkK0Sbvhnq1CMatKrAfTVw7veU/21czx44ETuyFnURNP1BTXjU79uUplSsHMTjKzO8zsHjPba2YfC/s/amaPmtndYVsTGbPJzPab2QNmdmlVsglRFYsW5euPiyaKTrg/+ZPlyxjHCy/AVVflG9OIDDrvvGznDwzA0FC8Ka7T2WZFC5I80O02wIDF4fsB4JvALwAfBT4Yc/4ocA+wADgL+C7Q3+oeij4S3UDW6KA4GvsNmlt/f+vj0Xb66TPLcRZt7jP3HKSd3+p7Z41wylJSVJQHdUQfhfd+Jvw4ELZW1tHLgRvc/Xl3fwjYD1xYlXxClEG70UFplbRaZS5tTJ+PPpotjUV/fzb7f1xai6TrNeRIolWEU5RuzjY716jUp2Bm/WZ2N/AEcJu7fzM89Jtmdq+ZXWdmp4R9ZwCPRIYfCvuE6Bh5Uy20Gx2UFoqZNVTzG9+AQ4eCCfrEiUD2KIODsGNHcGxoKP6a0f5oWosNG+LPL7OwC8ysIy2FUA+VKgV3P+7u5wPLgQvN7BXANuBs4HzgMPAn4elxzzAznkHMbL2Z7TGzPUeOHKlEbjE3SbPvx5EUo5+VJHt8oz9p4j1+fGoPwfz50+V2D/LsL1489dS9bl2gwPrCv/hmpTIwANdcE3+vtMIuJ50UPy6pX3Q3HQtJNbOPAD9y949H+kaAm939FWa2CcDd/0t47EvAR9399rjrgUJSRbnMmxdvrunvDybZPGOaSQpVbYSFtjp/48bAlJK3CE5D7oaJK7qiGRiAl74UnnpqZkhqXpYsCTanNTM0BEePFrumqJZaQlLNbKmZnRy+XwhcDHzHzJZFTnsLcF/4/iZgrZktMLOzgHOAO6qST4hm0uz7eY9FSQpVzdIfrbSVh4ZscSauF18MJnL3wOz0jW/ku3aUp57K1y+6m3nppxRmGbDDzPoJlM+N7n6zmX3WzM4nMA0dAK4AcPe9ZnYjsA84Blzp7ioQKDpGf3/yJN9w0I6OTi8gPzyczYRUR1WzhrknLda/YSaDYqUdk1ZSSlExO6ky+uhed3+Vu7/S3V/h7r8f9r/T3X8m7L/M3Q9Hxmxx97Pd/Tx3//uqZBOiQdSxnOWpf98+WLly6nPWqmad2m8QpeGPyBrrXzQjaZJpLalfdDfa0SwKk1aVrNtlaHYsN0gL24ymqm4OpUzia1/LLlcrTj45vn9gINkRnFVx5fVZiB4laQPDbGjavFYf3bDZqF0Z0jaOFUnnnHdM3vOLFqPJssGu8b3zUuR3EvVCi81rSognCtENCczalaHVk717+vE48kYw5b1HkQipZhorpGaiq4s8FPmdRL20HX0URhL9BzPbHm44u87MritXTDGb6IYEZu3KkLYxbHQ0/nhzf9SEtXBh/JiyNnoViZBqZtWqqf0KDfr6gv4iJG1uS+oX3U1Wn8IXgZcBu4C/izQxR+mGBGZZZGjlc0grOL9370wF0Bx91Jzm4plnZk64q1cnP4EnPWUn9ZdRjGbz5pmhsCdOTBW8iaMb/EeiQyTZlaINuDvLeZ1u8inUx2zwKWSRccOGKd9Cf3/+QvFJpSiz/i6d8ilEyVtCNO13TPPNiO6DFj6FrErhPwNrspzbySalUC/tTqhl0KrWcJYay+1c3z173eSkexaRsSpFVlRGOZpnH62UQlbz0VXAzWb2YzN7Omw/rGTpImYFExNBgrVonqAdO7rLrNCuz6HZNBRXxjKruSzpnlnqQDcT3eF87Fh+5/CaNfn6037HvCYw0eUkaYvZ0LRSqI8ynsLbJc2ssWhRvIyLFmW7fpbvuHOn+/z56SuF/v7k1UanV1x1rRTSVl2ic9Cu+Si4BpcBHw/bm7KOq7JJKdRHXrt0FvJOGlWbNbKM37nTfWAgXSkkKa648QMDrb973Pl5KNunkPV3ar6vmRRDXbStFICrgd3Ae8J2G3B1lrFVNimF+ih7pVDEcZ02uXVCKST9Do2VQZITtvE7DQ3FHx8aipcpSQHlUQxF/u1aKewsv1PSamr+/Oxyi/IoQyncC/RFPvcD92YZW2WTUqiPsqOP0ibXuJVDN6wU2lVMeWVs9zu5x5u85s8v/m+XZeVRhtyiPFophTy5j06OvH9ZYSeG6AnKLp+Y5Mw8fjyYOuKcvEWctGWTtleijH0FVRA82yV/zsP73pevX3Q5Sdoi2oC3AweB64EdwEPA2ixjq2xaKfQOWeL940wc7Zo1WpFlfLv29qpWCq2c11UECaQ5y7VS6C4oydG8jMDZfDnwr7KOq7JJKfQOO3e69/VlUwxZI3WymDVaKZXR0fjxo6MzZS+6VyLvZJnFp5C2wa2KIIE0Vq+Ov+fq1dXdUyRTWCkAPxW+vjqutRrbiSal0DskTWRZWpJiWLw4/vzFi4PjWWzrzYqhWSGkUUbkTjNp0UdJyrWvL9vvUhXNikEKoT7aUQrbw9evxrSvtBrbiSalUC9lxp0nRelkXTnEkTbh5o38yUrz77JhQ3UmrjjSrtlqF7b2EMwNSjEf5W3ASQQ1lu8B9gIfC/tPJQhpfTB8PSUyZhOwH3gAuDTtHlIK9VF29FFRhdBqAq2iXkIaeX+XOpRClt+z03msRGdppRQy1VMws7cCt7r702b2H0Pz0R+4+7dajDFgkbs/Y2YDwNcJ0mX8GvCUu19tZh8OlcLvmtko8DngQuB0goys53qLOs2qp1AfZddTSKoTkIWitQqqqAOQ93epQoa+vvixZkE21Ky/dSdrY4jO0nY9BeA/hQrhF4FLCSKQPtlqQKiQngk/DoTNCRzVO8L+HcCbw/eXAze4+/Pu/hDBiuHCjPKJDpNUrD5LEfs42qk3kDR28eLW/UND8ceT+rOQFFp78GB5aaejdaXnzQs+R0lSJo3+iy7Kdp9O1sYQ3UNWpdB4rngjsM3dvwjMTxtkZv1mdjfwBHCbu38TOM3dDwOEry8PTz8DeCQy/FDYJ7qQsuPv4wq/xLF48fRaxKtXwy23xE+4P/pR/DUa/ddcE9Q2jjIwEPTnITpJt3q6dw+Uw7vfXVwxNNeVPn48+NysGFqxf3+28zpZG0N0EUl2pWgDbgb+EvguwSa2BcA9WcaG408mcE6/Avh+07Hvha9/Abwj0n8t8G9irrUe2APsWbFiRXlGNpGLLLbwPI7orPsUYOqaQ0Mzo4eK5ORpx1leNGqq4cwu20+Sds2sqb7z+hSU7G52QQlpLgYJfAHnhJ+XAa/PMjZyjY8AHyRwIi+LXOeB8P0mYFPk/C8Br2l1TTma6yMtcqdMh2veVmae/4ULp49buHD68VZRU2kTcJbfMc/vVMZvWWRSL5LUT9RLK6WQ1dF8NnDI3Z83s4uAVwKfcffvtxizFHjR3b9vZguBLwP/FfgV4EmfcjSf6u4fMrOVwF8z5WjeHSohOZq7kLQC8mU6XPPScKgWceJu3Bik62jliF24EJ59dupere6Rdnzx4ngz16JFQWnPZrJ8p3Z+ywzTwQyWLIEnn5zZPzQER48Wl0VURxmO5s8Dx83sJwnMOmcRTOCtWAZ81czuBf6FwKdwM0HG1UvM7EHgkvAz7r4XuBHYB9wKXNlKIfQ6ZdfETXNO5iWtgHy7BW7aoagtvNlen8Rzz029b9e3kub3mA3EKYRW/aLLSVpCRBtwV/j6IeC3wvffyjK2ytar5qOy9wCUUde3mTQzRt78OmWZjtrZLZxnA13W3zbtGnllrNp8VISyryeqhxJ8Ct8kSIp3H3BW2HdflrFVtl5VCmUnLKuisHraRNBpn0IZu4WLTp6tksGl+QyqUAp5nPbRVjTtRFU7w0V1tFIKWc1H7wZeA2xx94fM7CxgZ3nrFRGlbNNLmqmnCspOrZ3GiROBr6Kq60dZuHD651WrYPny4HsuXx58blBW2GuDDRvS++NSijdMhxCYtk4/ffrx1ath165iMl1zDcxvClCfP7/4dxQ1k6QtZkPr1ZVC2U9eaQnSilC2yaCd3EdJ98z7O2YJ12z+zbKsiFqFaxbJHpqlpnP0nkNDM6ODyk5joZDU2QVFVwpmdmP4+m0zuzfSvh06kMUsoPnJNq2/DqpYtZx/fr5+9/Rrnjgx3Um/efNUJFKDZ5+FdeumggQgWMXErWbOPTf+Pkn9AFu3BhFe7sHr1q0zzxkfn7rn4sXw4oszZdy8OfkeeYner1MrNlENLUNSzWyZux82s+G44+5eMKlBOfRqSGpa7pq6r9cYm0SWybWZl7wkPgQzK3H3TAubzXp+q/FJv22UwcFk01leGWF62Gx/f5DmI04xNKji31/MbgqHpPpUOoqDoQL4HvB0pIkKSCvxWPf1qqCKEMy8vpSs+Zei47P8hq2eyvPKWCTNRSf+/csOoRY1kmRXijbgCuBx4ABBKc6HgP+bZWyVrVd9CmUXVm/X7h1H2T6FdvwJ0RYtglMk6ipqr09q0fFxv22e3yWvjEW+U9khzp2+vigfSghJfRBYkuXcTrZeVgplpw1oNekXuV8RpVC0nnJRxVBkf0ZUKSQ5npvHR79XFkXSfL88MhZVxlU6gquo+SyqpQylcCswmOXcTrZeVQqd/iMrEu2Ud3JqpyxlkdYgS6RO9NxW10wbX+R3yStjFXtO2qWOms+iPVophay5j14FfJpgE9vzEdPTb5dmxyqAHM3lUMRpnGXMxERgS3/44eA7xdnJG7mQysx9FJUhD2U4z/PmMsrLypWwb9/M/tFR2Lu3/esXoeyCS6J6ysh99JfAV4B/Bu6MNFEBzRuP0vq7kYmJwHF78GAwoSY5TosW5elWmsNT0/rz8sAD+fo7QdxmucHBoF/MPrIqhWPu/jvu/ml339FolUo2h4kmXMvS3y5VVCCLi9+Po2hRnlaMjpZ/zawkrSharTTyRO7UsTs9jU7vXhfVklUpfNXM1pvZMjM7tdEqlWwOk2QiqiqmvIo0BVlXAGVPZu2YUZLMR2WbtqJMTASV2BorqrTKbGVXvCsLbV7rHbIqhX9HUATnn5gyHfWeMb+HaH763Lgx+Wl0fByuu276k95117X3h511kmpnNRKl4d5sVgh5nsLf9758/WVw1VUzdxu/+GLQH0fSXop2alwLMY0kD/RsaL0afVQ07LBBltj5vr72whLTZMwaJZQlW2iWlhRqmzd+Pk8kUJHfpd3zy5CxCpT7aHZB0ZBU4EOR929tOvaHrcZ2okkpxJM1dfKiRdXJmJSEr10lktaim/zqiJ/vhFLoNrR5bfbRSimkmY/WRt5vajr2hpIWK6KJdh2/We35VVb3yuP/6MtqxMzACy9MmV7qqP6W99+uCid/p0lKClhmwj3ROdL+HC3hfdzn6QfNzjSzr5rZ/Wa218yuCvs/amaPmtndYVsTGbPJzPab2QNmdmmub9JDzLX89MHCszwaZSDryPmU99+uF/6t6yy9KiogaQkRrDCCMpzN7+M+x4xdBrw6fP8S4P8Ao8BHgQ/GnD8K3AMsIKgB/V2gv9U9etV85N6ejTarqSVaG6Ds3EdZahNU2RrfqQ6zRt7fcrbb45XmYvZBC/PRvBSd8bNm9kOCVcHC8D3h55NSlM1hoJFl9Wkzux84o8WQy4Eb3P154CEz2w9cCNyeIqMoyBVXBK+NjWYNE8DBg1PRLEUjkMp++i9CQ/bGruoVK4INVVWHS46P57tH3vO7jS1bpv//AW1em9UkaYsyGzACPAy8lGClcAC4F7gOOCU8578D74iMuRb49VbX7dWVws6dM5+0zbI/QaY9RTdHrBR50kt7Sk/Kp9TJlcJcptOrj9m+2plr0G7uo3Yws8XAPxDUd/6CmZ0GHAUc+ANgmbu/x8z+Arjd3XeG464FbnH3zzddbz2wHmDFihUXHOy1PAnAggWBw7SZ+fPh+edn9jeTN4dPkVxLafdYsmTKtl8H3bBSqYvmlR+0LvQj5h5l5D4qeuMB4PPAhLt/AcDdH3f34+5+AvgrAhMRwCHgzMjw5cBjzdd09+3uPubuY0uXLq1S/NqIUwit+tulCofsU08VHyvaQ9FAoh0qUwpmZgQmoPvd/U8j/csip70FuC98fxOw1swWmNlZwDnAHVXJJ6aoIqHZqUqCUhuKBhLtUOVKYRXwTuB1TeGnf2Rm3zaze4HXAh8AcPe9wI3APoL6DVe6e41pvnoTs6AucLR8YycTmvX1VZtLSMyO8quie0mLPiqMu3+d+L0Mt7QYswVQzELFNOr6QuuC76046ST48Y/j+yHZfOQe+CmqVAyzaeNXFSgaSLRDpT4FUQ9ZU0dv3x68TkzAu941PVPnu97VOnncT/xE6/66nlYHBmbXxq8qUCpr0Q5SChWQJzNnFcRV5oqjkbb6iitmRhmdODG1jyHPPRr9a9bEH0/qb4fFi6cmv09/WpMfKJW1KE5l5qO5ShUbwaL09ZW/CSspB1I7uZFuSTASJvW3w3PPVVdrQoi5hlYKJVN1OGDDvLN+ffsrkCrt+p2MgKmz6pgQvYaUQsl0ajIsQ9FUucGrkz6FuquOCdFLSCmUTCcnw26OO0/b+1DmRK6qY0KUh5RCyXTSwdrNcedpETDnnVf82g2F0t8PGzYUD6sVQsyk8txHVTI2NuZ79nRXqeiknD9DQ3D0aLZrZLH1t8plk8dX4F5N7qM05s0r5gvImv9JCJFMbbmP5iJJSeDKSg5XRdx5HQXrizqHf+mXypVDCDEdhaTOMqoIvWyYX7ZvDybr/v7ATl+lWaa/v5hi+NrXShdFCBFBK4Ua2LgxMJ/E5SGqi61b4dixwPRz7Fj1dvqizmGFnwpRLVoplIxZsn0eAgXQyDsE5eQhqoO075lG8+okKwo/FaJatFIoQKs0FklO1kZ/I99QM0n9nSLv6uWnfzpffxzR1cnpp2cbo/BTIapFK4WctJvGIumpuE6zSJHVy/335+tPY2Cg9fFO+DmEEApJzc3ISKAImhkeDhKPpYVqJoVi9vcHT83Qfrhn3pDULDLluUeR/1JlX08IkYxCUkskqSR01lLRF12Ur79KFi4MXrth9ZLkK5APQYjOIqWQk3Ynr7vvztdfJc89F7wW+U6LF+frT6MbFJMQotoazWea2VfN7H4z22tmV4X9p5rZbWb2YPh6SmTMJjPbb2YPmNmlVcnWDu1OXlVvbitCkvO2lVP3k58MzE5R5s0L+oswPJyvXwhRDVWuFI4B/97dfxr4BeBKMxsFPgzsdvdzgN3hZ8Jja4GVwBuArWbWdcaD2TB5nXxyvvO3bg1yCOXJKTQ+DtdfPz230fXXF99l3cmcUUKIZCpTCu5+2N3vCt8/DdwPnAFcDuwIT9sBvDl8fzlwg7s/7+4PAfuBC6uSryizYfL6/vfzjymyea3M6l6dLMojhEimIz4FMxsBXgV8EzjN3Q9DoDiAl4ennQE8Ehl2KOzrKpImqe3bg30LohidLMojhEim8mnMzBYDnwfe7+4/bHVqTN+MYEQzW29me8xsz5EjR8oSMzNJUUbHj3cmdLKuus9V08k6FEKIZCpVCmY2QKAQJtz9C2H342a2LDy+DHgi7D8EnBkZvhx4rPma7r7d3cfcfWzp0qXVCZ9A3SGSZZbj7CbSivIIITpDldFHBlwL3O/ufxo5dBOwLny/DvhipH+tmS0ws7OAc4A7qpKvKN0SIllm3eeitEr3kZfxcVi3brqze9268tKDCyGyUeVKYRXwTuB1ZnZ32NYAVwOXmNmDwCXhZ9x9L3AjsA+4FbjS3btkCu5OkuztixZlG59n53MzjXQfBw+Ws3qZmAjCWRtK9/jx4HMvrYaEmA0ozUVO2plI3bOlc8h6j0ZqjWYuvhh2704fv2gRPPNMtns1k5buIy8nnRRfUW3BAvjxj/NfTwiRjNJc9CCt7O1f+Uq2a/zoR8XvX3a0UFKJTZXeFKKzSCnMMrKU4+zE4k/RQkL0JkqdPcuoohxnEbZsmZ5CHBQtJEQvoJVCD9KO3yMr4+PBaiWa5qLV6iWN1avz9QshqkGO5pzU7Wgus57C0BAcPZrt3E7Q7CBfvRp27apPHiF6FTma5xhZk/O97W3VypGXc8+dvk/h3HPrlUeIuYiUQg8Stzs4js98pnpZstIoCRrdp7BtW3qtaCFEuUgp9CDN9v4k2glJLZvt2/P1CyGqQUqhR4mmtZ4NqPKaEN2BlEKHSUpBEe0vOxInabXQiSglIcTsQkqhQzSqoWWZoPfvjz8nqV8IIcpCSqFDvOxlwWtSrqFof1LNhqT+NJLCWLspGnk2lDkVYi4gpdAhVEGsNaqnIER3IKUQw8aNMG9eYNKZN6+csMhTT23/Gr1M2TukhRDFUO6jJhrx8g0a8fKQrZh9N7J6dXwq7W5LITE+LiUgRN1opdBEWrz80FCx6z71VLFxZbBr10wFoBQSQog4pBSaSIuXL5oaou6U0rt2BY7lRpNCEELEUWWN5uvM7Akzuy/S91Eze7SpPGfj2CYz229mD5jZpVXJBa1rCzdy7zTT6L/llvz3GxiYcphmCUmdPz/+nKR+IYQoiypXCtcDb4jp/zN3Pz9stwCY2SiwFlgZjtlqZgnTc3uk1RZevz5+XKO/SBRRdMLPEh563XUzlYdZ0C+EEFVSmVJw938EslrSLwducPfn3f0hYD9wYRVybd48vTAMBJ83bw7eb90KGzZMz9a5YcOUkznJDNTfH0zccSuNF16Yun6WePzxcfjsZ6dH4nz2s3LCCiGqpw6fwm+a2b2heemUsO8M4JHIOYfCvtLJUlt41SpYvjyYkJcvDz43SIqn37EjyDOUlGuocf2s8fjR3EUHDkghCCE6Q6eVwjbgbOB84DDwJ2F/nKU91tBiZuvNbI+Z7Tly5EhuAZJSSjf608xLcfH069YFK4G+vqDF0VhhZI3Hb+X3yEK744UQcxR3r6wBI8B9aceATcCmyLEvAa9Ju/4FF1zgeenri8bgTLW+vuD48HD88f5+d7Pg+M6dU9fbudN9cDB+TKMNDk4fk0bcNfNcY+dO9/nzp4+fPz+fDEKI3gXY4wnzaqXlOM1sBLjZ3V8Rfl7m7ofD9x8Aft7d15rZSuCvCfwIpwO7gXPcvWXi5CLlONNKXfb1pecEGhycerofGYnPSdTfH5h+VqwITEN5zD9J1xweDkxJaSxZAk8+ObO/28pvCiHqoZZynGb2OeB24DwzO2Rm7wX+yMy+bWb3Aq8FPgDg7nuBG4F9wK3AlWkKoShpIadZ9hNEHdNJPoqGf6GIPyCL36MVcQqh0V9m6g4hRO9RZfTR2919mbsPuPtyd7/W3d/p7j/j7q9098saq4bw/C3ufra7n+fuf1+VXGkhp2vWxB9vpjFBJymRdjarJeVJKit/kkpdCiGSmHM7mtNCTrNuTmtM+klKJKtyqYKsqThU6lII0cycUwoQKIBjxwLfwbFj0xPdZTHRRENIk5RIkZ3PDZLyJGXNn3TNNcEu6jRU6lII0cycVAqtSNuc1hxC2q79P48MWU1S4+Pw6U9Phb0mkeRfEULMXaQUmkjbnNbsOC4ygaftISij4Ex081tSiuyLLsp+PSHE3EBKoYm8xV7yTuBpm+OKyJCGaj4LIbIipRBDnhQTeSfwtNxLVVCFiUsI0ZtIKRSg2fwD2ZVI3Ka05v4sq4k8VBE2K4ToTaQUctLuhJ22eQ7KX02U4aMQQswNpBRy0u6EnVbZDco395TtoxBC9C7z6hZgttHuhD08nJzXqMGKFfHntGPuGR+XEhBCpKOVQk7atc9nMeXI3COEqAsphZy0O2FnMeXI3COEqItKU2dXTZHU2WUwMRH4EB5+uFhqbCGEqJNaUmf3Mu2WysxSFU2V04QQdSClUAJ5JvAsIa1l71MQQoisyHzUJo0JPBqmGq3M1kyWqmrtVl4TQohWtDIfSSm0Sd4JPKncp1lgjsp6jhBCFKWucpzXmdkTZnZfpO9UM7vNzB4MX0+JHNtkZvvN7AEzu7Qqucom776FLCGtSkshhKiLKn0K1wNvaOr7MLDb3c8BdoefMbNRYC2wMhyz1cxmRbb/vBO49ikIIbqZKms0/yPQXCvscmBH+H4H8OZI/w3u/ry7PwTsBy6sSrYyyTuBa5+CEKKb6XSai9Pc/TCAux82s5eH/WcA/xw571DY1/U0Juo8+xaypJxQWgohRB10S+6juKKRsR5wM1sPrAdY0SVGdk3gQoheodP7FB43s2UA4esTYf8h4MzIecuBx+Iu4O7b3X3M3ceWLl1aqbBCCDHX6LRSuAlYF75fB3wx0r/WzBaY2VnAOcAdHZZNCCHmPJWZj8zsc8BFwBIzOwR8BLgauNHM3gs8DLwVwN33mtmNwD7gGHCluydUHhBCCFEVlSkFd397wqHVCedvARR0KYQQNaLcR0IIISaZ1WkuzOwIEJNkIjNLgKMliVMVkrEcJGM5SMZyqFvGYXePjdSZ1UqhXcxsT1L+j25BMpaDZCwHyVgO3SyjzEdCCCEmkVIQQggxyVxXCtvrFiADkrEcJGM5SMZy6FoZ57RPQQghxHTm+kpBCCFEhDmnFOKK/3QbZnammX3VzO43s71mdlXdMjVjZieZ2R1mdk8o48fqlikJM+s3s2+Z2c11y5KEmR0ws2+b2d1mVm85wQTM7GQz+xsz+074f/M1dcsUxczOC3+/Rvuhmb2/brmaMbMPhH8z95nZ58zspLplijLnzEdm9svAM8Bn3P0VdcsTR5gscJm732VmLwHuBN7s7vtqFm0SMzNgkbs/Y2YDwNeBq9z9n1OGdhwz+x1gDHipu7+pbnniMLMDwJi7d218vZntAP63u3/KzOYDg+7+/ZrFiiUs0vUo8PPu3s5eplIxszMI/lZG3f25ML3PLe5+fb2STTHnVgoJxX+6Cnc/7O53he+fBu6ny+pLeMAz4ceBsHXdE4aZLQfeCHyqbllmM2b2UuCXgWsB3P2FblUIIauB73aTQogwD1hoZvOAQRIyQtfFnFMKsw0zGwFeBXyzZlFmEJpl7iZIgX6bu3edjMAngA8BJ2qWIw0Hvmxmd4Y1Q7qNnwCOAJ8OTXGfMrNFdQvVgrXA5+oWohl3fxT4OEFC0MPAD9z9y/VKNR0phS7GzBYDnwfe7+4/rFueZtz9uLufT1D/4kIz6ypznJm9CXjC3e+sW5YMrHL3VwO/ClwZmjm7iXnAq4Ft7v4q4EeENda7jdC0dRnwP+uWpRkzO4Wg/PBZwOnAIjN7R71STUdKoUsJ7fSfBybc/Qt1y9OK0IzwNeAN9Uoyg1XAZaG9/gbgdWa2s16R4nH3x8LXJ4C/pftqlB8CDkVWg39DoCS6kV8F7nL3x+sWJIaLgYfc/Yi7vwh8AfjXNcs0DSmFLiR04l4L3O/uf1q3PHGY2VIzOzl8v5DgP/t3ahWqCXff5O7L3X2EwJzwFXfvqqcyADNbFAYUEJpkXg90VXScu/8/4BEzOy/sWk1Q/6QbeTtdaDoKeRj4BTMbDP/OVxP4DLuGOacUwuI/twPnmdmhsOBPt7EKeCfBk20jvG5N3UI1sQz4qpndC/wLgU+ha0M+u5zTgK+b2T0EFQf/zt1vrVmmOH4LmAj/zc8H/rBecWZiZoPAJQRP4F1HuNL6G+Au4NsEc3BX7W6ecyGpQgghkplzKwUhhBDJSCkIIYSYREpBCCHEJFIKQgghJpFSEEIIMYmUgpgzmNnxpiyahXfkmtk/lSlb07XHzOzPq7q+EK1QSKqYM5jZM+6+uG45hOhmtFIQc56wlsHHzOyusKbBT4X9S83strD/L83soJktCY89E75eZGZfi9QZmAh3qmJmF5jZP4RJ7r4UpkRvvvdbw7z695jZP0aueXP4/pbIyuYHZrYuTET4x2b2L2Z2r5ld0anfSvQ+UgpiLrGwyXz0byPHjoYJ6bYBHwz7PkKQGuPVBPmIViRc91XA+4FRgmyiq8LcVf8N+HV3vwC4DtgSM/b3gEvd/WcJkrhNw93XhEkH3wscBP5X+P4H7v5zwM8Bv2FmZ2X8DYRoyby6BRCigzwXTrBxNNIi3An8Wvj+F4G3ALj7rWb2vYSxd7j7IYAwlfgI8H3gFcBt4cKhnyBVcjPfAK4Pi63EpmYIVyefBd7m7j8ws9cDrzSzXw9PeRlwDvBQgnxCZEZKQYiA58PX40z9XVjOsdHxBux195YlK939fWb28wSFgO42s/Ojx8MKYjcAv+/ujSR5BvyWu38po3xCZEbmIyGS+TrwNoDw6fyUHGMfAJZaWMfYzAbMbGXzSWZ2trt/091/DzgKnNl0ytXAve5+Q6TvS8CG0ESFmZ3b5QVvxCxCKwUxl1gYmnca3OrurcJSPwZ8LvQ9/AOB+efpLDdy9xdC886fm9nLCP7WPgHsbTr1j83sHIKn/93APcCvRI5/ENgbkfv3CEqLjgB3hU7tI8Cbs8glRBoKSRUiATNbABx392PhE/+2Fj4JIXoCrRSESGYFcKOZ9QEvAL9RszxCVI5WCkIIISaRo1kIIcQkUgpCCCEmkVIQQggxiZSCEEKISaQUhBBCTCKlIIQQYpL/D/ZoRF15citXAAAAAElFTkSuQmCC\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",
"\n",
"plot **CYLINDER** vs the Emission, to see how linear is their relation:\n"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEHCAYAAABBW1qbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAc60lEQVR4nO3df3Bd9Xnn8fcHCTs4kPJLUONfcokha5PEyaresHRSgs3CEAbDzoZ1VknchqkogoW03SV4vbth//CW2YYkbGZlqgC1J1FxPCQpHkpIsAzNhqZ4ZSCAZVjctbGFXSxIW36YOrH87B/n6OpKvle+19a550r385q5c873OT/0cLH96JzvOd+vIgIzMzOAk/JOwMzM6oeLgpmZFbgomJlZgYuCmZkVuCiYmVmBi4KZmRU0Z3lySbuBt4Eh4HBEtEk6E/gu0ArsBq6PiL9P918F3JDuf2tE/Gi885999tnR2tqaVfpmZlPStm3b3oiIllLbMi0KqU9FxBtF7TuA3oi4S9IdafvLkhYCK4BFwHnAZkkXRMRQuRO3trbS19eXZe5mZlOOpFfLbcvj9tFyYH26vh64tii+ISIORcQuYCewpPbpmZk1rqyLQgA/lrRNUkcaOzci9gOky3PS+Cxgb9GxA2nMzMxqJOvbR5dExD5J5wCPS3ppnH1VInbUGBxpcekAmDt37sRkaWZmQMZXChGxL10eAH5AcjvodUkzAdLlgXT3AWBO0eGzgX0lztkdEW0R0dbSUrKfxMzMjlNmRUHS+yWdNrwO/CvgRWATsDLdbSXwcLq+CVghabqk+cACYGtW+ZmZ2dGyvFI4F/ippJ+T/OP+lxHxGHAXcLmkV4DL0zYRsR3YCPQDjwE3j/fkkZk1hp4eaG2Fk05Klj09eWc0tWkyD53d1tYWfiTVbOrq6YGODjh4cCQ2YwZ0d0N7e355TXaStkVEW6ltfqPZzOrW6tWjCwIk7dWr88mnEbgomFnd2rOnuridOBcFM6tb5Z4699Po2XFRMLO6tWZN0odQbMaMJG7ZcFEws7rV3p50Ks+bB1KydCdztmoxIJ6Z2XFrb3cRqCVfKZiZWYGLgpmZFbgomJlZgYuCmZkVuCiYmVmBi4KZmRW4KJiZWYGLgpmZFbgomJlZgYuCmZkVuCiYmVlB5kVBUpOkZyU9krbvlPSapOfSz1VF+66StFPSy5KuyDo3MzMbrRYD4t0G7AA+UBT7ekR8tXgnSQuBFcAi4Dxgs6QLPE+zmVntZHqlIGk28Gngvgp2Xw5siIhDEbEL2AksyTI/MzMbLevbR98AbgeOjInfIul5SQ9IOiONzQL2Fu0zkMbMzKxGMisKkq4GDkTEtjGb1gLnA4uB/cDdw4eUOE2UOG+HpD5JfYODgxOYsZmZZXmlcAlwjaTdwAbgMknfiYjXI2IoIo4A32LkFtEAMKfo+NnAvrEnjYjuiGiLiLaWlpYM0zczazyZFYWIWBURsyOilaQDeUtEfE7SzKLdrgNeTNc3ASskTZc0H1gAbM0qPzMzO1oe03H+D0mLSW4N7QZuBIiI7ZI2Av3AYeBmP3lkZlZbNXl5LSKejIir0/XPR8SHI+IjEXFNROwv2m9NRJwfERdGxA9rkZtZPerpgdZWOOmkZNnTk3dG1ijyuFIws3H09MAXvgBH0mf2Xn01aYMnsLfseZgLszpz440jBWHYkSNJ3CxrLgpmdebdd6uLm00kFwUzMytwUTAzswIXBTMzK3BRMKszN91UXdxsIrkomNWZri5YunR0bOnSJG6W9TssLgpmdaanB7ZsGR3bssUvsFnyZ6CjI3l3JSJZdnRM7J8NRRw1EOmk0dbWFn19fXmnYTahpk+HX/7y6Pi0aXDoUO3zsfrR2poUgrHmzYPduys/j6RtEdFWapuvFMzqTKmCMF7cGseePdXFj4eLgpnZJDF3bnXx4+GiYGY2SaxZAzNmjI7NmJHEJ4qLgpnVtc5OaG4GKVl2duadUX7a26G7O+lDkJJld/fEDpToUVLNrG51dsLatSPtoaGRdqM+otvenu1oub5SMLO61d1dXdxOnIuCmdWtoTJzL5aL24nLvChIapL0rKRH0vaZkh6X9Eq6PKNo31WSdkp6WdIVWedmZvWtqam6uJ24Wlwp3AbsKGrfAfRGxAKgN20jaSGwAlgEXAl0SfL/erMG1tFRXdxOXKZFQdJs4NPAfUXh5cD6dH09cG1RfENEHIqIXcBOYEmW+ZnVo+nTq4tPZZdckjxxVKy5OYlbNrK+UvgGcDtQPLnguRGxHyBdnpPGZwF7i/YbSGNmDaXcUBaNOMTF6tVw+PDo2OHDSdyykVlRkHQ1cCAitlV6SInYUQMzSeqQ1Cepb3Bw8IRyNKtHJ5X5W1kuPpXVYlgHGy3LP2aXANdI2g1sAC6T9B3gdUkzAdLlgXT/AWBO0fGzgX1jTxoR3RHRFhFtLS0tGaZvlo8jR6qLT2W1GNZhslm0KHlxbfizaNHEnj+zohARqyJidkS0knQgb4mIzwGbgJXpbiuBh9P1TcAKSdMlzQcWAFuzys/M6l8thnWYTBYtgv7+0bH+/oktDHlckN4FXC7pFeDytE1EbAc2Av3AY8DNEeGnka3hnHVWdfGprL0dLr54dOzii7N9o7eejS0Ix4ofj5oUhYh4MiKuTtffjIilEbEgXf6iaL81EXF+RFwYET+sRW5m9eaee47uPzjppCTeaDo7obd3dKy3t7HHP8paA3ZdmdU/afx2o/AwF7XnomBWZ2677ehhHIaGknij8TAXoy1cWF38eLgomNWZN9+sLj6VeZiL0bZvh1NOGR075ZQkPlFcFMysbnmYi9GWLYP33hsde++9JD5RPJ+CmdWt4TkTuruTW0ZNTUlBaNS5FMZ2uh8rfjxcFMysrnV1NW4RyINvH5mZWYGLgpnZJLF0aXXx4+GiYGY2SWzefHQBWLo0iU8UFwUzs0nkggtGHsltakraE8kdzWZmk0RnJ6xdO9IeGhppT1RnvK8UzMwmiVoM++GiYGZ1racHWluTQQFbW5N2o6rFsB++fWRmdaunJ3lZ7eDBpP3qqyNvMzfi8NknnVR6sqWJnJXPVwpmVrdWrx4pCMMOHmzcOZprMSufi4KZ1S3P0Vx7LgpmVrc8R3PtZVYUJL1P0lZJP5e0XdJ/S+N3SnpN0nPp56qiY1ZJ2inpZUlXZJWbmU0OH/xgdXE7cVl2NB8CLouIdySdDPxU0vAUm1+PiK8W7yxpIbACWAScB2yWdIHnaTZrXE8+WV3cTlxmVwqReCdtnpx+YpxDlgMbIuJQROwCdgJLssrPzOqfZ14brRaTDmXapyCpSdJzwAHg8Yh4Ot10i6TnJT0g6Yw0NgvYW3T4QBqzBtDZCc3NyVzEzc2emN0SnnlttFpMOpRpUYiIoYhYDMwGlki6CFgLnA8sBvYDd6e7l5qa/KgrC0kdkvok9Q0ODmaSt9XW8Kv7w7/9Db+678JgnnlttK4uuOmm0WMf3XTTxM43oYjx7uhM4A+SvgK8W9yXIKkVeCQiLpK0CiAi/jjd9iPgzoj4WblztrW1RV9fX7aJW+aam0vfDmhqgsOHa59P3lTq16NUjf661pXOTs+8NtEkbYuItlLbsnz6qEXS6en6KcAy4CVJM4t2uw54MV3fBKyQNF3SfGABsDWr/Kx++L6xjaerK/nlICJZuiBkK8unj2YC6yU1kRSfjRHxiKRvS1pMcmtoN3AjQERsl7QR6AcOAzf7yaPG0NRU/krBzGors6IQEc8DHysR//w4x6wB1mSVk9Wnjo7RwwEXx82stvxGs+Wuq6v0bFK+TWBWey4KlrueHvjZmMcJfvazxh4i2SwvLgqWO4+EaVY/KupTkNQC/B7QWnxMRHwxm7SskXgkTLP6UWlH88PA/wY2A34iyCbU3LnJ5Cml4mZWW5UWhRkR8eVMM7GGddVVpZ8+uuqqo2Nmlq1K+xQeKR7i2mwiPfpodXEzy06lReE2ksLwT5LeTj9vZZmYNY5St47Gi5tZdiq6fRQRp2WdiJmZ5a/iN5olXQN8Mm0+GRGPZJOSmZnlpaLbR5LuIrmF1J9+bktjZmY2hVR6pXAVsDgijgBIWg88C9yRVWJmZlZ71bzRfHrR+q9NcB5mZlYHKr1S+GPgWUlPkMyQ9klgVWZZmZlZLip9+uhBSU8Cv0lSFL4cEX+XZWJmZlZ7494+kvShdPlxkklzBoC9wHlpzMzMppBjXSn8IdAB3F1iWwCXTXhGZmaWm3GLQkR0pMtPVXtiSe8DfgJMT3/OQxHxFUlnAt8lGXF1N3B9RPx9eswq4AaSQfdujYgfVftzzczs+FX6nsJnJJ2Wrv9nSd+XdNRUm2McAi6LiI8Ci4ErJX2C5DHW3ohYAPSmbSQtBFYAi4Arga50fmczM6uRSh9J/S8R8bak3wKuANYD9453QCTeSZsnp58AlqfHky6vTdeXAxsi4lBE7AJ2Aksq/Q8xM7MTV2lRGJ5D4dPA2oh4GJh2rIMkNUl6DjgAPB4RTwPnRsR+gHR5Trr7LJJO7GEDaczMzGqk0qLwmqQ/Ba4HHpU0vZJjI2IoIhYDs4Elki4aZ3eVOsVRO0kdkvok9Q0ODlaWvZmZVaTSonA98CPgyoj4B+BM4D9W+kPSY54k6St4XdJMgHR5IN1tAJhTdNhsYF+Jc3VHRFtEtLW0tFSagpmZVaDSojAT+MuIeEXSpcBngK3jHSCpRdLp6fopwDLgJWATsDLdbSXJVJ+k8RWSpkuaDyw41s8wM7OJVWlR+B4wJOmDwP3AfODPj3HMTOAJSc8D/4ekT+ER4C7gckmvAJenbSJiO7CRZBTWx4CbI2LKzge9bBlII59ly/LOyMwMFHHUbfujd5KeiYiPS7odeC8ivinp2Yg41mOpmWpra4u+vr48Uzguy5ZBb+/R8aVLYfPm2ueTN5XqTUpV8MdzyvH3YVmTtC0i2kptq/RK4VeSPgt8ARieXOfkiUiuEZUqCOPFzcxqpdKi8LvAxcCaiNiV3vP/TnZpmZlZHiodJbUfuLWovYu0L8DMzKaOcYuCpI0Rcb2kFxj9zoBIXlr+SKbZmZlZTR3rSuG2dHl11omYmVn+jjVK6vBwFK8CSPrAsY6xY2tqgqESD9s2efg/M8tZpaOk3ijpdeB5YFv6mXzPgtaJjo7q4mZmtVLpb/3/AVgUEW9kmYyZmeWr0kdS/xY4mGUijeTeMoOOl4ubmdVKpVcKq4C/lvQ0yeQ5AETEreUPsXLKvZXqt1XNLG+VFoU/BbYALwBHskvHzMzyVGlROBwRf5hpJmZmlrtK+xSeSCe3mSnpzOFPppmZmVnNVXql8O/S5aqiWAC/MbHpmJlZniod+2h+1omYmVn+xr19lM6fMLz+mTHb/ntWSZmZWT6O1aewomh91ZhtV05wLmZmlrNjFQWVWS/VHr1RmiPpCUk7JG2XdFsav1PSa5KeSz9XFR2zStJOSS9LuqKq/xIzMzthx+pTiDLrpdpjHQb+KCKekXQasE3S4+m2r0fEV4t3lrSQ5MpkEXAesFnSBVN5nmazUs46C958s3TcLGvHulL4qKS3JL0NfCRdH25/eLwDI2J/RDyTrr8N7ABmjXPIcmBDRBxKJ/HZCSyp+L/EbIq45x6YNm10bNq0JG6WtXGLQkQ0RcQHIuK0iGhO14fbFc/RLKkV+BjwdBq6RdLzkh6QdEYamwXsLTpsgPGLiNmU1N4ON9wwMpR6U1PSbm/PNy9rDJW+vHbcJJ0KfA/4UkS8BawFzgcWA/uBu4d3LXH4Ubeo0pfo+iT1DQ4OZpO0WY56emD9+pE5N4aGknZPT755WWPItChIOpmkIPRExPcBIuL1iBiKiCPAtxi5RTQAzCk6fDawb+w5I6I7Itoioq2lpSXL9M1ysXo1HBwzJvHBg0ncLGuZFQVJAu4HdkTE14riM4t2uw54MV3fBKyQNF3SfGABsDWr/Mzq1Z491cXNJlKWU2teAnweeEHSc2nsPwGflbSY5NbQbuBGgIjYLmkj0E/y5NLNfvLIGtHcufDqq6XjZlnLrChExE8p3U/w6DjHrAHWZJWT2WSwZk0yNWvxLaQZM5K4WdYy72g2s+q0t0N3N8ybB1Ky7O7200dWGy4KDa6zE5qbk398mpuTtuWvvR1274YjR5KlC4LVSpZ9ClbnOjth7dqR9tDQSLurK5+czCxfvlJoYN3d1cXNbOpzUWhgQ2We7SoXN7Opz0WhgQ0Po1Bp3MymPheFBnbhhdXFzWzqc1FoYP391cXNbOpzUTAzswIXBTMzK3BRMDOzAhcFMzMrcFEwM7MCFwUzMytwUWhgZ51VXdzMpj4XhQZ2zz0wbdro2LRpSdzMGpOLQgNrb4cHHhg9bv8DD3iYZrNGluUczXMkPSFph6Ttkm5L42dKelzSK+nyjKJjVknaKellSVdklZuNqIdx+8derRwrbmbZyfJK4TDwRxHxz4BPADdLWgjcAfRGxAKgN22TblsBLAKuBLokeWi2BnDDDdXFzSw7mRWFiNgfEc+k628DO4BZwHJgfbrbeuDadH05sCEiDkXELmAnsCSr/Kx+PFpm1u5ycTPLTk36FCS1Ah8DngbOjYj9kBQO4Jx0t1nA3qLDBtKYTXF79lQXN7PsZF4UJJ0KfA/4UkS8Nd6uJWJR4nwdkvok9Q0ODk5UmpajuXOri5tZdjItCpJOJikIPRHx/TT8uqSZ6faZwIE0PgDMKTp8NrBv7Dkjojsi2iKiraWlJbvkrWbWrIEZM0bHZsxI4mZWW1k+fSTgfmBHRHytaNMmYGW6vhJ4uCi+QtJ0SfOBBcDWrPKz+tHeDhdfPDp28cV+NNYsD1leKVwCfB64TNJz6ecq4C7gckmvAJenbSJiO7AR6AceA26OCM8W3AA6O6G3d3SstzeJm1ltKeKo2/aTRltbW/T19eWdRtVUqvckNYn/dxw3fx9mtSVpW0S0ldrmN5rNzKzARcHMzApcFMzMrMBFwXK3dGl1cTPLjouC5W7z5qMLwNKlSdzMastFwerCBRdAUzr8YVNT0jaz2mvOOwGzzk5Yu3akPTQ00u7qyicns0blKwXLXXd3dXEzy46LguVuqMx76+XiZpYdFwUzMytwUTAzswIXBcvdvHnVxc0sOy4KljvPp2BWP1wULHft7cmTRvPmJSOmzpuXtD2fglnt+T0Fqwvt7S4CZvXAVwpmZlbgomBmZgVZztH8gKQDkl4sit0p6bUx03MOb1slaaeklyVdkVVeZmZWXpZXCuuAK0vEvx4Ri9PPowCSFgIrgEXpMV2SmjLMzczMSsisKETET4BfVLj7cmBDRByKiF3ATmBJVrmZmVlpefQp3CLp+fT20hlpbBawt2ifgTSWiWXLkkcfhz/LlmX1k8zMJpdaF4W1wPnAYmA/cHcaV4l9o9QJJHVI6pPUNzg4WHUCy5ZBb+/oWG9vbQtDU5kbY+XiZma1UtOiEBGvR8RQRBwBvsXILaIBYE7RrrOBfWXO0R0RbRHR1tLSUnUOYwvCseJZOPfc6uJmZrVS06IgaWZR8zpg+MmkTcAKSdMlzQcWAFtrmVst7StZ7srHzcxqJbM3miU9CFwKnC1pAPgKcKmkxSS3hnYDNwJExHZJG4F+4DBwc0R4NH0zsxrLrChExGdLhO8fZ/81QOZDoC1cCP39peNmZo2u4d5ofvfd6uJmZo2k4YrCnj3Vxc3MGknDFYW5c6uLm5k1koYrCvUwoYvfUzCzetVwRaEeJnQ55ZTq4mZmtdKQk+zkPaHLO+9UFzczq5WGu1IwM7PyXBTMzKzARcHMzApcFMzMrMBFIQennlpd3MysVlwUcnDvvdA85rmv5uYkbmaWJxeFHLS3w7p1o9+VWLcu38dkzczARSE3Tz0FAwMQkSyfeirvjMzMGvTltbx1dsLatSPtoaGRdldXPjmZmYGvFHJRru/AfQpmljcXhRxEVBc3M6uVzIqCpAckHZD0YlHsTEmPS3olXZ5RtG2VpJ2SXpZ0RVZ5mZlZeVleKawDrhwTuwPojYgFQG/aRtJCYAWwKD2mS9KUHUja7ymYWb3KrChExE+AX4wJLwfWp+vrgWuL4hsi4lBE7AJ2Akuyyi1vfk/BzOpVrfsUzo2I/QDp8pw0PgvYW7TfQBqbkvyegpnVq3p5JFUlYiW7XSV1AB0AcyfxHJp5z+lgZlZKra8UXpc0EyBdHkjjA8Ccov1mA/tKnSAiuiOiLSLaWlpaMk3WzKzR1LoobAJWpusrgYeL4iskTZc0H1gAbK1xbmZmDS+z20eSHgQuBc6WNAB8BbgL2CjpBmAP8BmAiNguaSPQDxwGbo6IoaxyMzOz0jIrChHx2TKblpbZfw2wJqt8zMzs2PxGs5mZFSgm8dgKkgaBV/PO4wSdDbyRdxJ1xN/HaP4+Rvi7GO1Evo95EVHySZ1JXRSmAkl9EdGWdx71wt/HaP4+Rvi7GC2r78O3j8zMrMBFwczMClwU8teddwJ1xt/HaP4+Rvi7GC2T78N9CmZmVuArBTMzK3BRyJmkJknPSnok71zyJul0SQ9JeknSDkkX551TXiT9gaTtkl6U9KCk9+WdUy1VO0nXVFfm+/iT9O/K85J+IOn0ifhZLgr5uw3YkXcSdeIe4LGI+BDwURr0e5E0C7gVaIuIi4AmkkmoGsk6Kpykq0Gs4+jv43Hgooj4CPB/gVUT8YNcFHIkaTbwaeC+vHPJm6QPAJ8E7geIiF9GxD/kmlS+moFTJDUDMygzavBUVeUkXVNeqe8jIn4cEYfT5t+QjC59wlwU8vUN4HbgSM551IPfAAaBP0tvp90n6f15J5WHiHgN+CrJoJH7gX+MiB/nm1VdKDdJl8EXgR9OxIlcFHIi6WrgQERsyzuXOtEMfBxYGxEfA96lsW4PFKT3ypcD84HzgPdL+ly+WVm9krSaZHTpnok4n4tCfi4BrpG0G9gAXCbpO/mmlKsBYCAink7bD5EUiUa0DNgVEYMR8Svg+8C/zDmnelBukq6GJWklcDXQHhP0foGLQk4iYlVEzI6IVpJOxC0R0bC/DUbE3wF7JV2YhpaSzK/RiPYAn5A0Q5JIvouG7HQfo9wkXQ1J0pXAl4FrIuLgRJ23XuZoNgP490CPpGnA/wN+N+d8chERT0t6CHiG5LbAszTY27zVTNLVCMp8H6uA6cDjye8O/E1E/P4J/yy/0WxmZsN8+8jMzApcFMzMrMBFwczMClwUzMyswEXBzMwKXBSs4Un6dUkbJP2tpH5Jj0q6oMy+lw6PaCvpGklVvXUtaZ2kfzMReZtlwe8pWENLXw77AbA+IlakscXAuSQjT5YVEZtIXqjKMr/mokHPzDLnomCN7lPAryLi3uFARDwn6duSzoyIhwEk9QDfBd4a3k/S75AMb32LpHXptjbg14HbI+KhtOh8E7gM2AWo6Ph/DnwNOBV4A/idiNgv6Ungr0mGQtkkaQ/Jy0pDJIPjfTKTb8IMFwWzi4BSgxLeB/wB8LCkXyMZe2gl8FvjnGtmuv1DJFcQDwHXARcCHya5+ugHHpB0MkmxWB4Rg5L+LbCGZLRLgNMj4rcBJL0AXBERr03URCpm5bgomJUQEX8l6X9JOgf418D3IuJwOpxAOX8REUeAfknnprFPAg9GxBCwT9KWNH4hSUEaHqKgiWSY7GHfLVp/ClgnaSPJ4HhmmXFRsEa3HSjX8fttoJ1kwMIvltmn2KGi9eLqUWosGQHbI6LclKPvFg6O+H1J/4JkQqbnJC2OiDcryMesan76yBrdFmC6pN8bDkj6TUm/TTIF4pcAImL7cZ7/J8CKdC7umSR9GAAvAy3D81BLOlnSolInkHR+RDwdEf+VpO9hznHmYnZMvlKwhhYRIek64Bvp46X/BOwGvhQRr0vaAfzFCfyIH5B0Mr9A8jTTX6U/95fpo6n/M+2zaCaZia9U8fkTSQtIri56gZ+fQD5m4/IoqWZlSJpB8o/5xyPiH/POx6wWfPvIrARJy4CXgG+6IFgj8ZWCmZkV+ErBzMwKXBTMzKzARcHMzApcFMzMrMBFwczMClwUzMys4P8DCtcA4yCJx9IAAAAASUVORK5CYII=\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='blue')\n",
"plt.xlabel(\"Cylinders\")\n",
"plt.ylabel(\"Emission\")\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",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Creating train and test dataset\n",
"\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: \n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"button": false,
"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,
"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. \n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Train data distribution\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"button": false,
"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,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Modeling\n",
"\n",
"Using sklearn package to model data.\n"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[38.34438853]]\n",
"Intercept: [127.36488205]\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 ('Coefficients: ', 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,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Plot outputs\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can plot the fit line over the data:\n"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Emission')"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
},
{
"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.plot(train_x, regr.coef_[0][0]*train_x + regr.intercept_[0], '-r')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Evaluation\n",
"\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",
"\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>\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 24.72\n",
"Residual sum of squares (MSE): 1047.22\n",
"R2-score: 0.57\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,
"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"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n",
"| ----------------- | ------- | ---------- | --------------------- |\n",
"| 2020-08-4 | 0 | Nayef | Upload file to Gitlab |\n",
"| | | | |\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<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>\n"
]
}
],
"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.13"
},
"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