Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Pjumpod/548defb56030a7a3849384e1c1997b84 to your computer and use it in GitHub Desktop.
Save Pjumpod/548defb56030a7a3849384e1c1997b84 to your computer and use it in GitHub Desktop.
Created on Cognitive Class 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": [
"<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",
"\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": 11,
"metadata": {
"button": false,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import matplotlib.pyplot as pltt\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,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2019-04-09 03:29:39-- 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.193\n",
"Connecting to s3-api.us-geo.objectstorage.softlayer.net (s3-api.us-geo.objectstorage.softlayer.net)|67.228.254.193|: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",
"2019-04-09 03:29:39 (1.62 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,
"collapsed": true,
"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,
"collapsed": true,
"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": 6,
"metadata": {
"button": false,
"collapsed": true,
"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",
" <tr>\n",
" <th>9</th>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>9.2</td>\n",
" <td>212</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>9.8</td>\n",
" <td>225</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.4</td>\n",
" <td>239</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>5.9</td>\n",
" <td>12</td>\n",
" <td>15.6</td>\n",
" <td>359</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>5.9</td>\n",
" <td>12</td>\n",
" <td>15.6</td>\n",
" <td>359</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>4.7</td>\n",
" <td>8</td>\n",
" <td>14.7</td>\n",
" <td>338</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>4.7</td>\n",
" <td>8</td>\n",
" <td>15.4</td>\n",
" <td>354</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>4.7</td>\n",
" <td>8</td>\n",
" <td>14.7</td>\n",
" <td>338</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>4.7</td>\n",
" <td>8</td>\n",
" <td>15.4</td>\n",
" <td>354</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>5.9</td>\n",
" <td>12</td>\n",
" <td>15.6</td>\n",
" <td>359</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>8.8</td>\n",
" <td>202</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\n",
"9 2.4 4 9.2 212\n",
"10 2.4 4 9.8 225\n",
"11 3.5 6 10.4 239\n",
"12 5.9 12 15.6 359\n",
"13 5.9 12 15.6 359\n",
"14 4.7 8 14.7 338\n",
"15 4.7 8 15.4 354\n",
"16 4.7 8 14.7 338\n",
"17 4.7 8 15.4 354\n",
"18 5.9 12 15.6 359\n",
"19 2.0 4 8.8 202"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cdf = df[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB','CO2EMISSIONS']]\n",
"cdf.head(20)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can plot each of these features:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"button": false,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEICAYAAABYoZ8gAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3Xu4HFWd7vHvyx0BCTESIhc3SoZHMI6XiHFwdCugENDgAA7KQII4OaPggEYFPQyXOTqDzgEFZZwThQEkoggIUfEIRvYgngElDHIxYqJGiIRELknYgI6R3/ljrQ6VTvfu3p3u3d273s/z1LO7VlVXrapd9etVq1atUkRgZmblsUW3M2BmZmPLgd/MrGQc+M3MSsaB38ysZBz4zcxKxoHfzKxkHPjNzEqm1IFf0nsk3SlpWNJKSd+V9IY8bT9JCyWtlfSkpFsk/UXhu38m6QZJv5P0uKTvSdq3MP0cSX/My64MawrTQ9IqSVsV0raStFpSFNKGJL2vMP4JSb/Oy1sh6euFaftLuknSE5LWSFosaWaeNihpRdX2HyHpx5KekvSYpAWS9ihMn5Pz+dGq762QNJg/T5B0qaRH8n76haTTW/yXWI+pc478Qz52JxXm21bSEkn/Q9JAPm62qrG8cyRdWRgPSfdK2qKQ9klJl+XPlWVVzqFVkr4t6ZCq5S6X9EzV+faFPG2OpD/ltHWSfirpiKrvnyTp5/kYXiXpO5J2atuO7DGlDfySPgx8DvgnYDKwF/CvwCxJLwV+BNwL7A28CPgmcJOk1+dFTAAWAvvm7/8YuKFqNV+PiB0Lw4Sq6WuAwwrjM4EnRsjzbOB44OCI2BGYDiwqzPIt4Oacn12BvwfW1VnW0cBXgQuBScD+wB+A2yTtUpj1ceB0Sc+vk63PAjsCLwN2Bt4B/LLeNlj/GOEceT7wbdKxU3EmsBKY38KqXgQc22CeCfmY/3PSMf5NSXOq5nl71fl2SmHaf+bvT8jb8DVJEwAkvSlv47sjYifSsXx1C9vRPyKidAMpQA0Dx9SZ/hXgxhrpXwRurfOdiUAAL8jj5wBXjpCHIJ0s3yikXQP8z/Rv2ZA2BLwvf/4C8Lk6y5uUlzmhzvRBYEX+LOA3wMeq5tkCuA/4xzw+B7iN9INydmG+FcBg/nwfcGS3/6ce2js0cY7snI+Dw4GXkwosL83TBvKxuFWN7210XuT5TgeWVuYHPglcNtKygI8Aq4At8vhyUoGoVl7nALcVxp+Xl/nawrKu7/Y+H8uhrCX+1wPbkUrxtRwCfKNG+tXAgZKeV2PaG4FHIuKxUeTjeuCNubpkAvCXbHrVUHQ7cIKkj0qaLmnLwrTHgGXAlZKOlDR5hOXsSyq9bbSNEfEscC1p+4v+AfiQpIl18vQpSSdKmjrCOq2/jHiORMRa4P3AvwGXAudGRKtXeteRrkznjPI7u5KO5ablc+ZE4I+kwg/AHcDbJJ0r6UBJ245mmf2orIH/BcCjEbG+zvRJpMvWaitJ+6xYFUKuF78Y+HDV/O/Kde2V4Zaq6b8nlab/mnSpuzCn1RQRVwIfBN4G/AewWtIZeVoAbyaVfM4HVkq6tU4wrtTN1tvGScWEiLgbuIlUMqv2QWABcArwM0nLJB1WYz7rL43OESLiW6Qf/i2AizZjXUEqXJw1iqD7cP5bLIxcX3W+/W1h2ox8j+33wP8G/iYiVuft+CHwV8Crge8Aj0m6oKpgNa6UNfA/BkyqdfMpexSYUiN9CvAshXp4SS8kBcV/jYirqua/OiImFIY311jmFcAJebiiUcYjYkFEHEyqq/w74B8lvS1PWxERp0TES4EXA0/VWeajhe2ptY2P1kg/C3i/pN2q8vNMRPxTRLyGFCyuBr5R5+rA+kejc6TifuDn+WqxZRFxI/AgMLfJr+ye/z5eSDuy6nz7UmHa7ZHuse1CKmD9ZdX6vxsRbyf9kMwiXX28j3GqrIH/P0m//EfWmf594Jga6e8i3SR6GiDfBL0JWBgRn2oxLz8kBdvJpPr0pkTEHyPiG8A9pDrW6ukPka5CNpkGPECqn91oG3PLiqPY+IZxZXk/J11ef2KEPK0j3STbgXRT3PpXo3OkE84k3eOqVZVa7Z3AatKx3LSIGAY+ABwv6VU1pj8bEYuAH1D73BkXShn4c/3kWcDFuT78eZK2lnSYpM8A5wJ/IelTkiZK2knSB0ml8tMBciuX7wE/iogzNiMvAbwdeEf+XFdulnZ4zs8WuUplf+AOSbvkOsp98rRJwHtJl+K11vkR4MzcXG/7XJL/MqnFxmfrZOFcUv3ohtZJuWnfayVtI2k74FRSa6VRnZDWW5o4R5qxraTtCsOI8SYihkgt6WbXm0fSZEmnAGcDH2/lSiPfh/syafuQNEvSsfkckqQDgDdR49wZL0oZ+AEi4gJSnfyZwO+Ah0j11NdHxFLgDaSmY8tJ9d5HAW+LiB/lRbwTeC1wYlXb4b0Kq/nrqmnDknatkZf7I+L+JrK9jlTifpAUXD8DvD8ibgP+m9QC4vt5vvtIzTPn1Nn+r5Oahn6IVLXzM2B74MB6N6gj4tekFk87FJOBf8/LeJh0Y/jwXLKyPjbSOdLkIoaBZwrDW5r4zplsXG9fsUbSU6Qfhpmk1kaXVs3zrapzrV7jDUjNVGdKegWp6vZvSS2L1gFXAv8SEQuayG9fUoNCppmZjTOlLfGbmZWVA7+ZWck48JuZlYwDv5lZyTR6OGNMTJo0KQYGBrqdjZqeeuopdthhh8Yzlkiv7pPFixc/GhEv7HY+mtFrx3wv/k+dp8ZaPeZ7IvAPDAxw5513djsbNQ0NDTE4ONjtbPSUXt0nkn7TeK7e0GvHfC/+T52nxlo95l3VY2ZWMg78ZmYl48BvZlYyPVHH368GzvhOS99bft7hbc6JlV0rx6KPw/Jyid+sDklbSvovSd/O43tLukPSUklfl7RNTt82jy/L0we6mW+zRhz4zeo7FVhSGP808NmImErq2OuknH4S8ERE7EPq2fTTY5pLs1Fy4DerIb9V7XBS971IEql3yWvyLJfzXF/1s/I4efpBeX6znuQ6/qxeHem8aeuZ02JdvvW1zwEfA3bK4y8A1hReRbiC594CtTupy2IiYr2ktXn+jd5kJmku+Q1TkydPZmhoqG2ZnTet7hsS6yquf3h4uK35aQfnqXMc+LvAN+J6m6QjgNURsVjSYCW5xqzRxLTnEiLmA/MBpk+fHu18EKiVwsny455bf689mATOUyc58Jtt6kDgHZJmAtuR3kr2OWCCpK1yqX8Pnnvh9wpgT2BFfkftzmz8LliznuI6frMqEfHxiNgjIgaAY4EfRMRxwC3A0Xm22cAN+fNCnntd4NF5fr/hyHqWA79Z804HPixpGakO/5Kcfgnwgpz+YaDldzCbjQVX9ZiNIL8AfCh//hVwQI15fg8cM6YZM9sMLvGbmZWMA7+ZWck48JuZlYwDv5lZyTS8uStpT+AKYDfgWWB+RFwoaSLwdWAAWA68KyKeyI+qXwjMBJ4G5kTEXZ3JvpmNNT+A2P+aKfGvB+ZFxMuAGcDJkvYjNVlblDusWsRzTdgOA6bmYS7wxbbn2szMWtYw8EfEykqJPSKeJPVWuDsbd0xV3WHVFZHcTnracUrbc25mZi0ZVTv+3M/4q4A7gMkRsRLSj4OkXfNsGzqsyiqdWa2sWlbHOqxqRb1OriZv31oHWO3W7f1TNF46qjIrq6YDv6QdgWuB0yJi3Qi9zna9w6pW1Ovkat609Zx/b/efcyt2qNVt46WjKrOyaqpVj6StSUF/QURcl5NXVapw8t/VOb3SYVVFsTMrMzPrsoaBP7fSuQRYEhEXFCYVO6aq7rDqBCUzgLWVKiEzM+u+ZuowDgSOB+6VdHdO+wRwHnC1pJOAB3mur5IbSU05l5Gac57Y1hybmdlmaRj4I+I2atfbAxxUY/4ATt7MfJmZWYf4yV0zs5Jx4DczKxkHfjOzknHgNzMrGQd+M7OSceA3MysZB34zs5Jx4DczKxkHfjOzknHgNzMrGQd+M7OSceA3MysZB34zs5Lp/qulzMxquPe3a+u+Ga+e5ecd3qHcjC8u8ZuZlYwDv5lZyTjwm5mVjAO/mVnJOPCbmZWMA7+ZWck48JuZlYwDv1kVSXtKukXSEkn3Szo1p0+UdLOkpfnvLjldki6StEzSPZJe3d0tMBuZA7/ZptYD8yLiZcAM4GRJ+wFnAIsiYiqwKI8DHAZMzcNc4Itjn2Wz5jnwm1WJiJURcVf+/CSwBNgdmAVcnme7HDgyf54FXBHJ7cAESVPGONtmTXOXDWYjkDQAvAq4A5gcESsh/ThI2jXPtjvwUOFrK3LayqplzSVdETB58mSGhobals9509aP+jvF9Q8PDzedn81dV7Mmbz/6dbVzn9Yymv3Uyxz4zeqQtCNwLXBaRKyTVHfWGmmxSULEfGA+wPTp02NwcLBNOWXUfdoALD/uufUPDQ3RbH42d13N+vyCGzj/3tGFqFbWMxqj2U+9zFU9ZjVI2poU9BdExHU5eVWlCif/XZ3TVwB7Fr6+B/DwWOXVbLQaBn5Jl0paLem+QppbN9i4pVS0vwRYEhEXFCYtBGbnz7OBGwrpJ+TjfwawtlIlZNaLminxXwYcWpXm1g02nh0IHA+8RdLdeZgJnAccImkpcEgeB7gR+BWwDPgS8IEu5NmsaQ0r0CLi1nyDq2gWMJg/Xw4MAadTaN0A3C5pgqQpLv1YP4mI26hdbw9wUI35Azi5o5kya6NWb+5uVusG6GwLh1bUaz3QSsuCTuj2/ikaLy0bzMqq3a16mmrdAJ1t4dCKei0V5k1bP+qWBZ3Q6dYKozFeWjaYlVWrEW1VpQqnF1s3DLTQ3KzXtbJNfg2dmdXSanNOt24wM+tTDUv8kq4i3cidJGkFcDapNcPVkk4CHgSOybPfCMwktW54GjixA3k2M7PN0EyrnnfXmeTWDWZmfaj7dy2tY3xfwMxqcZcNZmYl48BvZlYyDvxmZiXjwG9mVjIO/GZmJePAb2ZWMg78ZmYl48BvZlYyDvxmZiXjwG9mVjIO/GZmJePAb2ZWMg78ZmYl48BvZlYyDvxmZiXj/vhtI8304T9v2vpNXk7vfvzN+odL/GZmJePAb2ZWMg78ZmYl48BvZlYyDvxmZiXjwG9mVjIO/GZmJdPz7fibaVduZmbN6/nAb/2hlR9oP/Rl1h2u6jEzKxmX+M3MxkivXBl3pMQv6VBJD0haJumMTqzDrNf4uLd+0fYSv6QtgYuBQ4AVwE8kLYyIn7V7XWa9oh+P+2Lps1bHe2XSbEm8uJ/6+R5VJ6p6DgCWRcSvACR9DZgF9OwJYNYGbTvu3ZLNOk0R0d4FSkcDh0bE+/L48cDrIuKUqvnmAnPz6L7AA23NSPtMAh7tdiZ6TK/ukxdHxAu7seJmjvseP+Z78X/qPDXW0jHfiRK/aqRt8usSEfOB+R1Yf1tJujMipnc7H73E+6Smhsd9Lx/zvfg/dZ46pxM3d1cAexbG9wAe7sB6zHqJj3vrG50I/D8BpkraW9I2wLHAwg6sx6yX+Li3vtH2qp6IWC/pFOB7wJbApRFxf7vXM4Z68tK8y7xPqoyD474X/6fOU4e0/eaumZn1NnfZYGZWMg78ZmYlU+rAL2lPSbdIWiLpfkmn5vSJkm6WtDT/3SWnS9JF+ZH8eyS9urtb0DmStpT0X5K+ncf3lnRH3idfzzcwkbRtHl+Wpw90M982MknLJd0r6W5Jd9aYPqbHuKR9c14qwzpJp1XNMyhpbWGeszqQj0slrZZ0XyGtZhyo8d3ZeZ6lkma3O2+dUOrAD6wH5kXEy4AZwMmS9gPOABZFxFRgUR4HOAyYmoe5wBfHPstj5lRgSWH808Bn8z55Ajgpp58EPBER+wCfzfNZb3tzRLyyTnv0MT3GI+KBnJdXAq8Bnga+WWPWH1bmi4h/7EBWLgMOrUqrFwc2kDQROBt4Henp7bPr/UD0klIH/ohYGRF35c9PkgLd7qRH7S/Ps10OHJk/zwKuiOR2YIKkKWOc7Y6TtAdwOPDlPC7gLcA1eZbqfVLZV9cAB+X5rT918xg/CPhlRPxmjNa3QUTcCjxelVwvDhS9Dbg5Ih6PiCeAm9n0B6TnlDrwF+UqilcBdwCTI2IlpB8HYNc82+7AQ4Wvrchp483ngI8Bz+bxFwBrImJ9Hi9u94Z9kqevzfNbbwrgJkmLcxcS1bp5jB8LXFVn2usl/VTSdyXtP0b5qRcHivoyJjjwA5J2BK4FTouIdSPNWiNtXLWHlXQEsDoiFheTa8waTUyz3nNgRLyaVKVzsqQ3Vk3vyv8z3zN6B/CNGpPvIvVJ8+fA54HrO52fUejL47/0gV/S1qSgvyAirsvJqyqXt/nv6pxehsfyDwTeIWk58DVSFc/nSJf8lQf+itu9YZ/k6Tuz6SWz9YiIeDj/XU2qSz+gapZuHeOHAXdFxKrqCRGxLiKG8+cbga0lTRqDPNWLA0V9GRNKHfhzXfQlwJKIuKAwaSEwOwe/B4G9JQ0DJwDnSZojKYDtK5eCeXkrJA0WxqdK+pqk3+XWCkslfT7XoVdaK6wozD8k6feS9iykHZzzURlfLukZScOF4Qt52jaSzs/5GJb0a0mfrfruwfnz/VXLGJb0B+D0iNgDmEO6tN2GVNc5ARiW9HpgNnBDcV/lz0cDPwg/FdiTJO0gaafKZ+CtwH1Vsy0ETsite2YAa4vHeAe9mzrVPJJ2q9w3knQAKW49NgZ5Kh7bxWO+6HvAWyXtkm/qvjWn9baIKO0AvIF0WXYPcHceZpLqqBcBfyRdZk7M84v0so3VpBZBa4DnF5a3AhjMn/chlXwvAPbIabsCpwHH5vFBYEXh+0OkA3p+Ie1gYHlhfDlwcJ3tORv4D+BFOa8DwAlNfndH0s3tcwt5+x3w7Tz+EuDHwDLS5fi2OX27PL4sT39Jt/+vvTTkff4MMFwY3lP8v1f9/9+XP5+Tj7/i99YU5g1gnzrrnEIq0KwEngR+DpwL7A/8NA+PkLoXfiYfp/8X2LZwjK/L65hdWO4+KWRsGN8fuInUymsNsBiYmafNAW6rsz8Ozp8vy+s4Oh/3O+f0z+X0y/P4V/L4n0jn3S+AI4DjCvvmGdI9qQ37q9YxTyqRL8jreyofs0eQfnRW5n0epHN5EikOLAV+DXw1L2M68OXCMt+bj/9lwPvy/25pXv5y4FJgoDD/EXm9T+V8LCDHiMK+C+CCqn13ZE6/LI8P5PHKNq8C/hXYuuFx2e0To5eH6oOm6h9zG/At4OxCejHwXwl8q8HyB9k08J9NOln3yWmjCfzfJt2nGNX25GlfI53EW9TKm4f2HUP19i2bBv4rR1huzcAPTMzr/Gol2JCqIi4EXpHHP58D0+tJ/XXtnwPRDYXlXJaD0k2FtOrA/yvgo6Srwm1I1YRvyNPm0FzgfwC4tjB9K+C3pCA6p3pZpNL+B0nNPic2sU+L66vsm38HdgO2J11prAOOrtq3jwHvKaR9khxwG/y/F5IKi6/N27IzcDJwUp5+dF7fcXn9u5F+GJYDuxS2d1neD1sVln1d3l+X5fGBnNet8viuwH8xQgyoDKWu6mmDfwA+lNvyVjuYdO9gtH4LfIl04o/W7cCHJX1A0rRmm1VK+nvSSfueiHi20fzW0z5MKjj8TUQsB4iIhyLi1Ii4R9JU4APAcRHxnxGxPlJnckcBh0p6S2FZlwOvkPSm6pXkOva9gS9FxH/n4UcRcdso8/st4MBC2/dDSVfgj9SaOR+fl5KC5ktGua4PkUrGJ0XEIxHxTERcBXwKOL/qfPkMcG7hvlZDuRr1EGBWRPwk79u1EXFxRFySl38+8MmIWJDX/wjpKmE456/iEeBeUnPRyvMCf8EIPb5Gum9zM7Bfo7w68Dd2vaQ1heFvKxMi4m5SKfn0Gt+bROHglXRK/v6wpC81WOc/A28fodlavTz9M+kBquOAO4HfNnqSMNfj/hNwTERUv1noRVXrWZPrhq13HQxcN8IP+EGkkvGPi4kR8RCp4HBIIflp0rHxqRrLeYxUKr1S0pGSJreY39+TgtmxefwE4Ip6M+dAXAmUS0e5rkNIVxfV++ZqYC/gzwpp15FK5nNGsfyDgR/nfVnLvnk9G7Vcyvm5lo33PaT9cEL+fCzpHsMf6q1c0otIPxS3N8qoA39jR0bEhMJQHbTPAt4vabeq9MdIda0ARMQXImICqf5y65FWGBG/A74A1HtCsWaeIuJPuXRxIOlm7KeASyW9rNZCcqntG8DHIz2sU+3hqvVMiIinRsq71VT8oR5NU8R3Vf3o3tLEd15AqquuZ9II01fm6UX/B9hL0mHFxEh1C28mVVGcD6yUdGu+ohitK0g3lHcG3kTt5pozJK0hFabeDbwzItaOcj31tn1lYXpFkK7oz5K0bZPLb2bfU2eeWvv+m8Bg3i8j/SA+mvfNb0n3Da6pM98GDvybKSJ+TiodfKJq0iLgrzZj0f9COrFe02K+nomIi0k33ja59JO0Bake+EcR8fnNyKc1VvyhPpJ0g7LWj//WpJuLFVdX/ei+uYl1bVTgqOHREaZPoep9shHxB+B/5UFV01ZExCkR8VLgxaSgUwlOzW4juXrohcCZpMYEz9T43u15H0yKiBkR8f0RtrGeets+pTC9mK8bSa36aj3oVksz+54689Ta988A3yHtl0kR8aM6y52UC5XPA35EulE/Igf+9jgXOJFUyq44B/hLSRdI2h02lLBrlr6rRcQaUknqY81mQtJpuYno9pK2ytU8O5Fu+FQ7h3TT733NLt/a5kFgktKDg8CGpsUvBja3u4LvA+/MP+y1/ADYMzeL3CA3IZ5BKrBU+3fSTcp31ltprt64GHh5TnqQdKWw4cdC0vNINyBrbeOVwDxGqOZpg+8DR9XYN+8iPX37ixrfORP4n6Sg2szyD6g0167hAVIDkGOKiTk/R1F7319B2i9fabTy/ENxGekp5xGfc3Dgb+xbVW3dN+lAKiJ+TfrH7FBI+wXpRNoD+KmkJ0m/xg+TLiGbcSGpCVuzeXqG9GNRaap3MnBURPyqxjLOJN0ce6RGe/698jwvqjHtqCbzbnVExIOkrkE+LWnHXJXwUVIpuWH9bME2krYrDFuSmg8/H7hc0osBJO2eCyCvyMflvwELJM1Q6oV1f1Id8/drlaQjdcVxDoV7Wbnd+rmS9pG0RQ407y3k/w5S/f0ZOW87AOeR7j3VCvwXkeq4bx3F9o/WZ0n75hKlZwO2k/RuUmD/aK6+2khEDJFusjbsdTPvu5uBb0p6TS587STp7yS9Ny//I8CZkt6TC2i7kfrEen7OX7X/IO2Xhlfl+Tg6nnT+j/ycQ6NmPx48eGh9oH6T4D1J91cqP9LfA/YrTD+HTdvxDwO75ulRY6g0BX0RqeXLIzzXjv9s4Hl5+hakIL6MVFh4iNSKZbvC+i8jtT6h8J372FC9zw6kVj/Lc74eIbWF373wnf3ydj1KamN+DbBnvXVU7Z/bqNGcc4T9PEiD5px5fK+cz8dJVVM/IbXCKX5no6aypJ43N7Sfb5CPbUg1AMvy8n9DCux7FeaZldf7VM7HVVX7pe72UmhWyqbt+NeQfihe2yiffvWimVnJuKrHzKxkHPjNzJok6bga972GJd3f7byNhqt6zMxKpunHkTtp0qRJMTAw0O1s8NRTT7HDDv3zYGq/5Rc6m+fFixc/GhEv7MjC26xXjvl6+vHYapd+2vZWj/meCPwDAwPceecm730ec0NDQwwODnY7G03rt/xCZ/MsqS2v7JO0HalZ4bakc+SaiDhb0t6kzuwmkjriOj4i/js3o7uC9LDdY8BfR+4np55eOebr6cdjq136adtbPeZdx2+2qT8Ab4n0xqdXkjovm4FfOG/jhAO/WZVIhvPo1nkI/MJ5Gyd6oqrHrNfkp2AXk/qgvxj4JU2+cF5S5YXzj1Ytcy6535fJkyczNDTU4a1o3fDwcE/nr5PKsO3jMvAPnPGdUX9n+XmHdyAn1q8i4k/AKyVNIPWSWKuPpUqTuKZeuB0R84H5ANOnT49u1yOPdJ7Mm/Ynzr+tdkes4/1c6ac6/la5qsdsBJE6yxsi9bvkF87buODAb1ZF0gtzSR9J25NesLEEuIX06jzwC+etj43Lqh6zzTSF1LvllqTC0dUR8W1JPwO+JumTpK6uL8nzXwJ8RdIyUkn/2FoLNesVDvxmVSLiHuBVNdJ/BRxQI/33VPWxbtbLHPg3Qys3kWH83xwzs97mOn4zs5Jx4DczKxkHfjOzknHgNzMrGQd+M7OSceA3MysZB34zs5Jx4DczKxkHfjOzknHgNzMrGQd+M7OSaRj4Je0p6RZJSyTdL+nUnD5R0s2Slua/u+R0SbpI0jJJ90h6dac3wszMmtdMJ23rgXkRcZeknYDFkm4G5gCLIuI8SWcAZwCnA4cBU/PwOuCL+a+ZjQN+w13/a1jij4iVEXFX/vwk6YUUu7PxC6arXzx9RX5h9e2ktxZNaXvOzcysJaPqllnSAKmf8juAyRGxEtKPg6Rd82wbXjydVV5KvbJqWR178fS8aesbz1RlaGho1C9ZbmU9lXW1Qz++FLof82w23jQd+CXtCFwLnBYR66Ra75dOs9ZIG9MXT89p5VL0uMFRv2S5lfVU1tUO/fhS6H7Mcz9o9d0QVk5NteqRtDUp6C+IiOty8qpKFU7+uzqnb3jxdFZ8KbWZmXVZM616RHqn6JKIuKAwqfiC6eoXT5+QW/fMANZWqoTMzKz7mqnqORA4HrhX0t057RPAecDVkk4CHuS5d47eCMwElgFPAye2NcdmZrZZGgb+iLiN2vX2AAfVmD+AkzczX2Zm1iF+ctesih9atPHOgd9sU5WHFl8GzABOlrQf6SHFRRExFViUx2Hjhxbnkh5aNOtZDvxmVfzQoo13o3qAy6xsxvNDiyOZvH17l9lPD+2V4SFDB36zOsb7Q4sjmTdtPeff277w0K6HFsdCGR4ydFWPWQ1+aNHGMwd+syp+aNHGO1f1mG3KDy3auObAb1bFDy3aeOeqHjOzknHgNzMrGVf1ZANnfId509a3vVmcmVmvcYnfzKxkHPjNzErGgd/MrGQc+M3MSsaB38ysZBz4zcwipsvqAAAHB0lEQVRKxoHfzKxk3I6/TwzUeL6g0XMHy887vJNZMrM+5RK/mVnJOPCbmZWMA7+ZWck48JuZlUzP39ytdVPTzMxa5xK/mVnJNAz8ki6VtFrSfYW0iZJulrQ0/90lp0vSRZKWSbpH0qs7mXkzMxu9Zkr8lwGHVqWdASyKiKnAojwOcBgwNQ9zgS+2J5tmZtYuDQN/RNwKPF6VPAu4PH++HDiykH5FJLcDEyRNaVdmzcxs87V6c3dyRKwEiIiVknbN6bsDDxXmW5HTVlYvQNJc0lUBkydPZmhoqOaK5k1b32IWR2/y9mOzvnrbOpJa+WqU31bW02nDw8M9mS/rrFYaafjJ885pd6se1UiLWjNGxHxgPsD06dNjcHCw5gLH8lWI86at5/x7O9/Qaflxg6P+Tq390Ci/rayn04aGhqj3v+4lki4FjgBWR8TLc9pE4OvAALAceFdEPCFJwIXATOBpYE5E3NWNfJs1o9VWPasqVTj57+qcvgLYszDfHsDDrWfPrGsuw/e2bJxqNfAvBGbnz7OBGwrpJ+TWPTOAtZUqIbN+4ntbNp41rNeQdBUwCEyStAI4GzgPuFrSScCDwDF59htJl7vLSJe8J3Ygz2bdsln3tpq9r9WKdt+bGqv7XSPp1r2gMtyHahj4I+LddSYdVGPeAE7e3EyZ9Zmm7m01e1+rFe2+FzZW97tG0q17VP1yH2pz9HyXDWY9ZJWkKbm073tbHeaWQJ3jLhvMmud7WzYuuMRvVoPvbdl45sBvVoPvbdl45qoeM7OScYm/C/yOATPrJpf4zcxKxoHfzKxkHPjNzErGgd/MrGR8c3cc85OPZlaLS/xmZiXjEr9tpNWmpr5SMOsfLvGbmZWMA7+ZWck48JuZlYwDv5lZyTjwm5mVjFv1mNm44VZpzXGJ38ysZFziN+sx7rbbOs0lfjOzknHgNzMrGVf1mFnpFavX5k1bz5wmqtv6+YawS/xmZiXjEr+ZWQv6udvzjpT4JR0q6QFJyySd0Yl1mPUaH/fWL9pe4pe0JXAxcAiwAviJpIUR8bN2r8usV/i4t2b0ylVCJ6p6DgCWRcSvACR9DZgF+ASwjfTKSdAmPu6tb3Qi8O8OPFQYXwG8rnomSXOBuXl0WNIDHcjLqPw9TAIe7XY+mtVL+dWnm551s/LcYD0vbnW5bdDwuO/FY76eXjq2xlqvbXsnjvlOBH7VSItNEiLmA/M7sP6WSbozIqZ3Ox/N6rf8Qn/muUkNj/tePObrGcf/p4bKsO2duLm7AtizML4H8HAH1mPWS3zcW9/oROD/CTBV0t6StgGOBRZ2YD1mvcTHvfWNtlf1RMR6SacA3wO2BC6NiPvbvZ4O6YvL8IJ+yy/0Z54b6vPjvpZx+X9q0rjfdkVsUv1uZmbjmLtsMDMrGQd+M7OSKVXgl7SnpFskLZF0v6RTa8wzKGmtpLvzcFY38lqVp+WS7s35ubPGdEm6KHcVcI+kV3cjn4X87FvYf3dLWifptKp5em4/l5WkSyWtlnRfIW2ipJslLc1/d+lmHjuhXjwoxbaXqY5f0hRgSkTcJWknYDFwZPGxekmDwEci4oguZXMTkpYD0yOi5kMlkmYCHwRmkh4aujAiNnlorhtyVwa/BV4XEb8ppA/SY/u5rCS9ERgGroiIl+e0zwCPR8R5ud+hXSLi9G7ms93qxQNgDuN820tV4o+IlRFxV/78JLCE9MRlv5tFOmkjIm4HJuSDuhccBPyyGPStt0TErcDjVcmzgMvz58tJAXFcGSEejPttL1XgL5I0ALwKuKPG5NdL+qmk70raf0wzVlsAN0lanB/7r1aru4Be+UE7FriqzrRe28/2nMkRsRJSgAR27XJ+OqoqHoz7bS9lf/ySdgSuBU6LiHVVk+8CXhwRw7kK5Xpg6ljnscqBEfGwpF2BmyX9PJfSKprqJmOs5QeZ3gF8vMbkXtzPVkLV8UCqdTqNL6Ur8UvamvRPXhAR11VPj4h1ETGcP98IbC1p0hhnszpPD+e/q4FvknqCLOrV7gIOA+6KiFXVE3pxP9tGVlWqC/Pf1V3OT0fUiQfjfttLFfiVfsovAZZExAV15tktz4ekA0j76LGxy+Um+dkh33hC0g7AW4H7qmZbCJyQW/fMANZWLlW77N3Uqebptf1sm1gIzM6fZwM3dDEvHTFCPBj/216yVj1vAH4I3As8m5M/AewFEBH/lh+7fz+wHngG+HBE/L8uZBcASS8hlfIhVc19NSI+JenvYEOeBXwBOBR4GjgxIjZp9jmWJD2PdN/hJRGxNqcV89xT+7nMJF0FDJK6I14FnE2qeruadG48CBwTEdU3gPvaCPHgDsb7tpcp8JuZWcmqeszMzIHfzKx0HPjNzErGgd/MrGQc+M3MSsaB38ysZBz4zcxK5v8DhtoJDID9LSsAAAAASUVORK5CYII=\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:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"button": false,
"collapsed": true,
"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": 12,
"metadata": {
"button": false,
"collapsed": true,
"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"
},
{
"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()\n",
"\n",
"pltt.scatter(cdf.CO2EMISSIONS, cdf.ENGINESIZE, color='blue')\n",
"pltt.ylabel(\"Engine size\")\n",
"pltt.xlabel(\"Emission\")\n",
"pltt.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": 13,
"metadata": {
"button": false,
"collapsed": true,
"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": [
"# 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",
"-->"
]
},
{
"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": 14,
"metadata": {
"button": false,
"collapsed": true,
"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": 15,
"metadata": {
"button": false,
"collapsed": true,
"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": 16,
"metadata": {
"button": false,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[39.43062892]]\n",
"Intercept: [124.77204088]\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,
"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": 17,
"metadata": {
"button": false,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Emission')"
]
},
"execution_count": 17,
"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,
"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": null,
"metadata": {
"button": false,
"collapsed": true,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [],
"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 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.6"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment