Skip to content

Instantly share code, notes, and snippets.

@saidmrad
Created October 1, 2020 17:29
Show Gist options
  • Save saidmrad/30c122e76c155069c58ce4ec15add849 to your computer and use it in GitHub Desktop.
Save saidmrad/30c122e76c155069c58ce4ec15add849 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": {},
"source": [
"<center>\n",
" <img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/Logos/organization_logo/organization_logo.png\" width=\"300\" alt=\"cognitiveclass.ai logo\" />\n",
"</center>\n",
"\n",
"# Model Development\n",
"\n",
"Estaimted time needed: **30** minutes\n",
"\n",
"## Objectives\n",
"\n",
"After completing this lab you will be able to:\n",
"\n",
"- Develop prediction models\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>In this section, we will develop several models that will predict the price of the car using the variables or features. This is just an estimate but should give us an objective idea of how much the car should cost.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Some questions we want to ask in this module\n",
"\n",
"<ul>\n",
" <li>do I know if the dealer is offering fair value for my trade-in?</li>\n",
" <li>do I know if I put a fair value on my car?</li>\n",
"</ul>\n",
"<p>Data Analytics, we often use <b>Model Development</b> to help us predict future observations from the data we have.</p>\n",
"\n",
"<p>A Model will help us understand the exact relationship between different variables and how these variables are used to predict the result.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Setup</h4>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Import libraries\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"load data and store in dataframe df:\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This dataset was hosted on IBM Cloud object click <a href=\"https://cocl.us/DA101EN_object_storage\">HERE</a> for free storage.\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>symboling</th>\n",
" <th>normalized-losses</th>\n",
" <th>make</th>\n",
" <th>aspiration</th>\n",
" <th>num-of-doors</th>\n",
" <th>body-style</th>\n",
" <th>drive-wheels</th>\n",
" <th>engine-location</th>\n",
" <th>wheel-base</th>\n",
" <th>length</th>\n",
" <th>...</th>\n",
" <th>compression-ratio</th>\n",
" <th>horsepower</th>\n",
" <th>peak-rpm</th>\n",
" <th>city-mpg</th>\n",
" <th>highway-mpg</th>\n",
" <th>price</th>\n",
" <th>city-L/100km</th>\n",
" <th>horsepower-binned</th>\n",
" <th>diesel</th>\n",
" <th>gas</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>alfa-romero</td>\n",
" <td>std</td>\n",
" <td>two</td>\n",
" <td>convertible</td>\n",
" <td>rwd</td>\n",
" <td>front</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>...</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>13495.0</td>\n",
" <td>11.190476</td>\n",
" <td>Medium</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>alfa-romero</td>\n",
" <td>std</td>\n",
" <td>two</td>\n",
" <td>convertible</td>\n",
" <td>rwd</td>\n",
" <td>front</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>...</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>16500.0</td>\n",
" <td>11.190476</td>\n",
" <td>Medium</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1</td>\n",
" <td>122</td>\n",
" <td>alfa-romero</td>\n",
" <td>std</td>\n",
" <td>two</td>\n",
" <td>hatchback</td>\n",
" <td>rwd</td>\n",
" <td>front</td>\n",
" <td>94.5</td>\n",
" <td>0.822681</td>\n",
" <td>...</td>\n",
" <td>9.0</td>\n",
" <td>154.0</td>\n",
" <td>5000.0</td>\n",
" <td>19</td>\n",
" <td>26</td>\n",
" <td>16500.0</td>\n",
" <td>12.368421</td>\n",
" <td>Medium</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>audi</td>\n",
" <td>std</td>\n",
" <td>four</td>\n",
" <td>sedan</td>\n",
" <td>fwd</td>\n",
" <td>front</td>\n",
" <td>99.8</td>\n",
" <td>0.848630</td>\n",
" <td>...</td>\n",
" <td>10.0</td>\n",
" <td>102.0</td>\n",
" <td>5500.0</td>\n",
" <td>24</td>\n",
" <td>30</td>\n",
" <td>13950.0</td>\n",
" <td>9.791667</td>\n",
" <td>Medium</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>audi</td>\n",
" <td>std</td>\n",
" <td>four</td>\n",
" <td>sedan</td>\n",
" <td>4wd</td>\n",
" <td>front</td>\n",
" <td>99.4</td>\n",
" <td>0.848630</td>\n",
" <td>...</td>\n",
" <td>8.0</td>\n",
" <td>115.0</td>\n",
" <td>5500.0</td>\n",
" <td>18</td>\n",
" <td>22</td>\n",
" <td>17450.0</td>\n",
" <td>13.055556</td>\n",
" <td>Medium</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 29 columns</p>\n",
"</div>"
],
"text/plain": [
" symboling normalized-losses make aspiration num-of-doors \\\n",
"0 3 122 alfa-romero std two \n",
"1 3 122 alfa-romero std two \n",
"2 1 122 alfa-romero std two \n",
"3 2 164 audi std four \n",
"4 2 164 audi std four \n",
"\n",
" body-style drive-wheels engine-location wheel-base length ... \\\n",
"0 convertible rwd front 88.6 0.811148 ... \n",
"1 convertible rwd front 88.6 0.811148 ... \n",
"2 hatchback rwd front 94.5 0.822681 ... \n",
"3 sedan fwd front 99.8 0.848630 ... \n",
"4 sedan 4wd front 99.4 0.848630 ... \n",
"\n",
" compression-ratio horsepower peak-rpm city-mpg highway-mpg price \\\n",
"0 9.0 111.0 5000.0 21 27 13495.0 \n",
"1 9.0 111.0 5000.0 21 27 16500.0 \n",
"2 9.0 154.0 5000.0 19 26 16500.0 \n",
"3 10.0 102.0 5500.0 24 30 13950.0 \n",
"4 8.0 115.0 5500.0 18 22 17450.0 \n",
"\n",
" city-L/100km horsepower-binned diesel gas \n",
"0 11.190476 Medium 0 1 \n",
"1 11.190476 Medium 0 1 \n",
"2 12.368421 Medium 0 1 \n",
"3 9.791667 Medium 0 1 \n",
"4 13.055556 Medium 0 1 \n",
"\n",
"[5 rows x 29 columns]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# path of data \n",
"path = 'https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/automobileEDA.csv'\n",
"df = pd.read_csv(path)\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>1. Linear Regression and Multiple Linear Regression</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Linear Regression</h4>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>One example of a Data Model that we will be using is</p>\n",
"<b>Simple Linear Regression</b>.\n",
"\n",
"<br>\n",
"<p>Simple Linear Regression is a method to help us understand the relationship between two variables:</p>\n",
"<ul>\n",
" <li>The predictor/independent variable (X)</li>\n",
" <li>The response/dependent variable (that we want to predict)(Y)</li>\n",
"</ul>\n",
"\n",
"<p>The result of Linear Regression is a <b>linear function</b> that predicts the response (dependent) variable as a function of the predictor (independent) variable.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
" Y: Response \\\\ Variable\\\\\n",
" X: Predictor \\\\ Variables\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" <b>Linear function:</b>\n",
"$$\n",
"Yhat = a + b X\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<ul>\n",
" <li>a refers to the <b>intercept</b> of the regression line0, in other words: the value of Y when X is 0</li>\n",
" <li>b refers to the <b>slope</b> of the regression line, in other words: the value with which Y changes when X increases by 1 unit</li>\n",
"</ul>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Lets load the modules for linear regression</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.linear_model import LinearRegression"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Create the linear regression object</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm = LinearRegression()\n",
"lm"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"<h4>How could Highway-mpg help us predict car price?</h4>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For this example, we want to look at how highway-mpg can help us predict car price.\n",
"Using simple linear regression, we will create a linear function with \"highway-mpg\" as the predictor variable and the \"price\" as the response variable.\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"X = df[['highway-mpg']]\n",
"Y = df['price']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Fit the linear model using highway-mpg.\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.fit(X,Y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We can output a prediction \n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([16236.50464347, 16236.50464347, 17058.23802179, 13771.3045085 ,\n",
" 20345.17153508])"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Yhat=lm.predict(X)\n",
"Yhat[0:5] "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>What is the value of the intercept (a)?</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"38423.3058581574"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.intercept_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>What is the value of the Slope (b)?</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"array([-821.73337832])"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.coef_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>What is the final estimated linear model we get?</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As we saw above, we should get a final linear model with the structure:\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
"Yhat = a + b X\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Plugging in the actual values we get:\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<b>price</b> = 38423.31 - 821.73 x <b>highway-mpg</b>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #1 a): </h1>\n",
"\n",
"<b>Create a linear regression object?</b>\n",
"\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"lm1 = LinearRegression()\n",
"lm1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"lm1 = LinearRegression()\n",
"lm1 \n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #1 b): </h1>\n",
"\n",
"<b>Train the model using 'engine-size' as the independent variable and 'price' as the dependent variable?</b>\n",
"\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"X = df[['engine-size']]\n",
"Y = df['price']\n",
"lm1.fit(X,Y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"lm1.fit(df[['engine-size']], df[['price']])\n",
"lm1\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #1 c):</h1>\n",
"\n",
"<b>Find the slope and intercept of the model?</b>\n",
"\n",
"</div>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Slope</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([166.86001569])"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"lm1.coef_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Intercept</h4>\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"-7963.338906281042"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"lm1.intercept_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"# Slope \n",
"lm1.coef_\n",
"# Intercept\n",
"lm1.intercept_\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #1 d): </h1>\n",
"\n",
"<b>What is the equation of the predicted line. You can use x and yhat or 'engine-size' or 'price'?</b>\n",
"\n",
"</div>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Write your code below and press Shift+Enter to execute \n",
"\n",
"\n",
"<b>price</b> = -7963.3389 +166.86 x <b>engine-size</b>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"# using X and Y \n",
"Yhat=-7963.34 + 166.86*X\n",
"\n",
"Price=-7963.34 + 166.86*engine-size\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Multiple Linear Regression</h4>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>What if we want to predict car price using more than one variable?</p>\n",
"\n",
"<p>If we want to use more variables in our model to predict car price, we can use <b>Multiple Linear Regression</b>.\n",
"Multiple Linear Regression is very similar to Simple Linear Regression, but this method is used to explain the relationship between one continuous response (dependent) variable and <b>two or more</b> predictor (independent) variables.\n",
"Most of the real-world regression models involve multiple predictors. We will illustrate the structure by using four predictor variables, but these results can generalize to any integer:</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
"Y: Response \\\\ Variable\\\\\n",
"X_1 :Predictor\\\\ Variable \\\\ 1\\\\\n",
"X_2: Predictor\\\\ Variable \\\\ 2\\\\\n",
"X_3: Predictor\\\\ Variable \\\\ 3\\\\\n",
"X_4: Predictor\\\\ Variable \\\\ 4\\\\\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
"a: intercept\\\\\n",
"b_1 :coefficients \\\\ of\\\\ Variable \\\\ 1\\\\\n",
"b_2: coefficients \\\\ of\\\\ Variable \\\\ 2\\\\\n",
"b_3: coefficients \\\\ of\\\\ Variable \\\\ 3\\\\\n",
"b_4: coefficients \\\\ of\\\\ Variable \\\\ 4\\\\\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The equation is given by\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
"Yhat = a + b_1 X_1 + b_2 X_2 + b_3 X_3 + b_4 X_4\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>From the previous section we know that other good predictors of price could be:</p>\n",
"<ul>\n",
" <li>Horsepower</li>\n",
" <li>Curb-weight</li>\n",
" <li>Engine-size</li>\n",
" <li>Highway-mpg</li>\n",
"</ul>\n",
"Let's develop a model using these variables as the predictor variables.\n"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"Z = df[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Fit the linear model using the four above-mentioned variables.\n"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.fit(Z, df['price'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What is the value of the intercept(a)?\n"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"-15806.62462632922"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.intercept_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What are the values of the coefficients (b1, b2, b3, b4)?\n"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([53.49574423, 4.70770099, 81.53026382, 36.05748882])"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm.coef_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" What is the final estimated linear model that we get?\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As we saw above, we should get a final linear function with the structure:\n",
"\n",
"$$\n",
"Yhat = a + b_1 X_1 + b_2 X_2 + b_3 X_3 + b_4 X_4\n",
"$$\n",
"\n",
"What is the linear function we get in this example?\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<b>Price</b> = -15678.742628061467 + 52.65851272 x <b>horsepower</b> + 4.69878948 x <b>curb-weight</b> + 81.95906216 x <b>engine-size</b> + 33.58258185 x <b>highway-mpg</b>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #2 a): </h1>\n",
"Create and train a Multiple Linear Regression model \"lm2\" where the response variable is price, and the predictor variable is 'normalized-losses' and 'highway-mpg'.\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"lm2 = LinearRegression()\n",
"Z = df[['normalized-losses', 'highway-mpg']]\n",
"lm2.fit(Z, df['price'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"lm2 = LinearRegression()\n",
"lm2.fit(df[['normalized-losses' , 'highway-mpg']],df['price'])\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #2 b): </h1>\n",
"<b>Find the coefficient of the model?</b>\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([ 1.49789586, -820.45434016])"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"lm2.coef_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"lm2.coef_\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>2) Model Evaluation using Visualization</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now that we've developed some models, how do we evaluate our models and how do we choose the best one? One way to do this is by using visualization.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"import the visualization package: seaborn\n"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"# import the visualization package: seaborn\n",
"import seaborn as sns\n",
"%matplotlib inline "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Regression Plot</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>When it comes to simple linear regression, an excellent way to visualize the fit of our model is by using <b>regression plots</b>.</p>\n",
"\n",
"<p>This plot will show a combination of a scattered data points (a <b>scatter plot</b>), as well as the fitted <b>linear regression</b> line going through the data. This will give us a reasonable estimate of the relationship between the two variables, the strength of the correlation, as well as the direction (positive or negative correlation).</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Let's visualize **highway-mpg** as potential predictor variable of price:\n"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.0, 48279.293237794154)"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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Y8xBYANwjTHmu8DxbFkJ2du27Ne3Ao2Drm8AjmTXG86wPuQaY4wHqAI6T92ItfZea+1Ka+3K2bNnT8yzExEREREZh0kLwK21f22tbbDWLiJzuHKTtfbDwEbgluyX3QL8JPv5RuDGbGeTxWQOW27LlqmEjTGXZ+u7bz7lmoH7uiH7GKdlwEVERERESkUxBvF8EXjUGPNR4HXgjwCstbuNMY8CLwMp4E5rbTp7zSeBB4Ag8PPsB8B3gIeNMfvIZL5vLNSTEBEREREZDzPTEsYrV660O3bsKPY2RERERGSaM8bstNauPHVdkzBFRERERApIAbiIiIiISAEpABcRERERKSAF4CIiIiIiBaQAXERERESkgBSAi4iIiIgUkAJwEREREZECUgAuIiIiIlJACsBFRERERApIAbiIiIiISAEpABcRERERKSAF4CIiIiIiBaQAXERERESkgBSAi4iIiIgUkAJwEREREZECUgAuIiIiIlJACsBFRERERApIAbiIiIiISAEpABcRERERKSAF4CIiIiIiBaQAXERERESkgBSAi4iIiIgUkAJwEREREZECUgAuIiIiIlJACsBFRERERApIAbiIiIiISAF5ir0BERnZlj1trN/aTEtXhMaaEOvWNLF2eX2xtyUiIiLjpAy4SAnbsqeNuzbupi0cozropS0c466Nu9myp63YWxMREZFxUgZcJp0yuOO3fmszXrch5Mv8Uw35PEQSKdZvbdZ/QxERkSlKGXCZVMrg5qelK0LQ6x6yFvS6ae2KFGlHIiIiki8F4DKpBmdwjcncet2G9Vubi721KaGxJkQ0mR6yFk2maagJFWlHIiIiki8F4DKplMHNz7o1TSTTlkgihbWZ22Tasm5NU7G3JiIiIuOkAFwmlTK4+Vm7vJ67r19BfUWAnmiS+ooAd1+/QvXfIiIiU5gOYcqkWremibs27iaSSBH0uokm08rgjtHa5fUKuEVERKYRZcBlUimDKyIiIjKUMuAy6ZTBFREREXmDMuAiIiIiIgWkDPgUoEE2IiIiItOHMuAlToNsRERERKYXBeAlToNsRERERKYXBeAlToNsRERERKYXBeAlToNsRERERKYXBeAlTqPIRURERKYXdUEpcWuX13M3mVrw1q4IDUXogqIuLCIiIiITRwH4FFDMQTYDXVi8bjOkC8vd2X2JiIiIyNioBEVGpC4s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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"width = 12\n",
"height = 10\n",
"plt.figure(figsize=(width, height))\n",
"sns.regplot(x=\"highway-mpg\", y=\"price\", data=df)\n",
"plt.ylim(0,)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>We can see from this plot that price is negatively correlated to highway-mpg, since the regression slope is negative.\n",
"One thing to keep in mind when looking at a regression plot is to pay attention to how scattered the data points are around the regression line. This will give you a good indication of the variance of the data, and whether a linear model would be the best fit or not. If the data is too far off from the line, this linear model might not be the best model for this data. Let's compare this plot to the regression plot of \"peak-rpm\".</p>\n"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(0.0, 47414.1)"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(width, height))\n",
"sns.regplot(x=\"peak-rpm\", y=\"price\", data=df)\n",
"plt.ylim(0,)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Comparing the regression plot of \"peak-rpm\" and \"highway-mpg\" we see that the points for \"highway-mpg\" are much closer to the generated line and on the average decrease. The points for \"peak-rpm\" have more spread around the predicted line, and it is much harder to determine if the points are decreasing or increasing as the \"highway-mpg\" increases.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #3:</h1>\n",
"<b>Given the regression plots above is \"peak-rpm\" or \"highway-mpg\" more strongly correlated with \"price\". Use the method \".corr()\" to verify your answer.</b>\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>peak-rpm</th>\n",
" <th>highway-mpg</th>\n",
" <th>price</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>peak-rpm</th>\n",
" <td>1.000000</td>\n",
" <td>-0.058598</td>\n",
" <td>-0.101616</td>\n",
" </tr>\n",
" <tr>\n",
" <th>highway-mpg</th>\n",
" <td>-0.058598</td>\n",
" <td>1.000000</td>\n",
" <td>-0.704692</td>\n",
" </tr>\n",
" <tr>\n",
" <th>price</th>\n",
" <td>-0.101616</td>\n",
" <td>-0.704692</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" peak-rpm highway-mpg price\n",
"peak-rpm 1.000000 -0.058598 -0.101616\n",
"highway-mpg -0.058598 1.000000 -0.704692\n",
"price -0.101616 -0.704692 1.000000"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"df[[\"peak-rpm\",\"highway-mpg\",\"price\"]].corr()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"The variable \"highway-mpg\" has a stronger correlation with \"price\", it is approximate -0.704692 compared to \"peak-rpm\" which is approximate -0.101616. You can verify it using the following command:\n",
"df[[\"peak-rpm\",\"highway-mpg\",\"price\"]].corr()\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Residual Plot</h3>\n",
"\n",
"<p>A good way to visualize the variance of the data is to use a residual plot.</p>\n",
"\n",
"<p>What is a <b>residual</b>?</p>\n",
"\n",
"<p>The difference between the observed value (y) and the predicted value (Yhat) is called the residual (e). When we look at a regression plot, the residual is the distance from the data point to the fitted regression line.</p>\n",
"\n",
"<p>So what is a <b>residual plot</b>?</p>\n",
"\n",
"<p>A residual plot is a graph that shows the residuals on the vertical y-axis and the independent variable on the horizontal x-axis.</p>\n",
"\n",
"<p>What do we pay attention to when looking at a residual plot?</p>\n",
"\n",
"<p>We look at the spread of the residuals:</p>\n",
"\n",
"<p>- If the points in a residual plot are <b>randomly spread out around the x-axis</b>, then a <b>linear model is appropriate</b> for the data. Why is that? Randomly spread out residuals means that the variance is constant, and thus the linear model is a good fit for this data.</p>\n"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"width = 12\n",
"height = 10\n",
"plt.figure(figsize=(width, height))\n",
"sns.residplot(df['highway-mpg'], df['price'])\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<i>What is this plot telling us?</i>\n",
"\n",
"<p>We can see from this residual plot that the residuals are not randomly spread around the x-axis, which leads us to believe that maybe a non-linear model is more appropriate for this data.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Multiple Linear Regression</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>How do we visualize a model for Multiple Linear Regression? This gets a bit more complicated because you can't visualize it with regression or residual plot.</p>\n",
"\n",
"<p>One way to look at the fit of the model is by looking at the <b>distribution plot</b>: We can look at the distribution of the fitted values that result from the model and compare it to the distribution of the actual values.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First lets make a prediction \n"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [],
"source": [
"Z = df[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']]\n",
"Y_hat = lm.predict(Z)"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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IiIiIhG0Y8cOGjRooGAcMDOjQYMGJR7BVzgWERERiTAF4/hQmvdB4VhEREREJEThWERERKQCGjt2LGbGzz//fMDnPvLII2zbtq3U93ruuee46qqr9jqXmZlJixYtyM/P3+t89+7d+f7774u8TmZmJl26dCl1HZGgcCwiIiJSAY0ZM4aBAwfy6quvHvC5ZQ3HRWndujUtW7bk66+/3n3u559/ZvPmzfTt2zei94okhWMRERGRCmbLli188803PPPMM3uF47y8PP74xz/StWtX0tPTeeyxx3j00UdZvnw5gwcPZvDgwQDUrFlz92vefPNNLrjgAgDef/99+vXrR48ePTj66KNZuXJlsXWcddZZe93/1Vdf5ayzziIzM5PDDz+cnj170rNnT7799tvfvHbf0ejjjz+eiRMnAvDZZ59x6KGH0rNnT04//XS2bNlS4u/R/mgpNxEREZFoue46mDEjstfs3h0eeaTYp7zzzjuMGDGC9u3bU79+faZPn07Pnj156qmnyMjI4McffyQpKYl169ZRv359HnroISZMmEDDhg2Lve7AgQOZPHkyZsbTTz/Nfffdx4MPPrjf559xxhn06NGDxx57jKSkJF577TXeeOMNGjduzOeff05KSgoLFy7krLPOYurUqWF9+WvWrOHOO+/kiy++oEaNGtx777089NBD3HbbbWG9/kAUjkVEREQqmDFjxnDdddcBMGrUKMaMGUPPnj354osvuPzyy0lK8hGwfv36JbpuVlYWZ555JitWrGDXrl0HXD/4oIMO4pBDDmHcuHE0adKE5ORkunTpwsaNG7nqqquYMWMGiYmJLFiwIOwaJk+ezE8//cSAAQMA2LVrF4ceemiJvo7iKByLiIiIRMsBRnijYe3atYwfP545c+ZgZuTl5WFm3HfffTjnwlrerPBzCq8TfPXVV3PDDTdw4oknMnHiRO64444DXqugtaJJkyacddZZADz88MM0adKEmTNnkp+fT0pKym9el5SUtNdkvoI6nHMMHTqUMWPGHPDepaGeYxEREZEK5M033+T8889nyZIlZGZmsmzZMtLS0pg0aRLDhg3jiSeeIDc3F4B169YBUKtWLTZv3rz7Gk2aNGHevHnk5+czduzY3ec3btxI8+bNAXj++efDqufUU0/lo48+4rXXXmPUqFG7r9O0aVMSEhJ48cUXycvL+83rWrduzYwZM8jPz2fZsmW7V7jo378/33zzDYsWLQJg27ZtJRp5PhCFYxEREZEKZMyYMYwcOXKvc6eeeiqvvPIKl1xyCa1atSI9PZ1u3brxyiuvAHDppZdyzDHH7J6Qd88993D88cczZMgQmjZtuvs6d9xxB6effjqHH374AfuTC9StW5f+/fvTpEmT3W0YV155Jc8//zz9+/dnwYIF1KhR4zevGzBgAGlpaXTt2pU//vGP9OzZE4BGjRrx3HPPcdZZZ5Genk7//v3DWq4uXOaci9jFyqp3794u3GZsERERkXg0b948OnXqFHQZElLU+2Fm05xzvYt6vkaORURERERCFI5FREREREIUjkVEREREQhSORURERERCFI5FREREREIUjkVEREREQhSORaJp2jS4/HIYOxa2bQu6GhERqSQSExPp3r377iMzM5PDDjsMgMzMzN3rGwPMmDGDjz76qMT3GDRoEPsuwXvHHXdw880373VuxowZxS5td8cdd/DAAw+U+P7RonAsEi15eXDhhfDkk3DKKdCoEZx2GrzyCmzcGHR1IiJSgVWrVo0ZM2bsPlq3bs23334LRC4cF+Wss87itdde2+vcq6++ytlnnx2R68eCwrFItDzzDMye7cPwF1/ABRfAt9/COef4oLzPT9YiIiLRVLNmTQD+/Oc/8/XXX9O9e3fuvfdebrvtNl577TW6d+/Oa6+9xtatW7nooovo06cPPXr04N133wVg+/btjBo1ivT0dM4880y2b9/+m3t06NCBunXrMmXKlN3nXn/9dUaNGsV///tf+vTpQ7du3Tj11FPZVsRvVAuPRq9Zs4bWrVsDkJeXx4033kifPn1IT0/nySefBGDFihUcccQRdO/enS5duvD111+X+fuUVOYriMhvbdoEf/0rDBwIo0aBGRx1FDz2GEyeDPffD/fe6wNzhw5BVysiIlFy3XUwY0Zkr9m9OzzySPHP2b59O927dwcgLS2NsWPH7v7cPffcwwMPPMAHH3wAQJMmTZg6dSr/+te/APjLX/7CkCFDePbZZ9mwYQN9+/bl6KOP5sknn6R69erMmjWLWbNm7d7OeV9nnXUWr776Kv369WPy5Mk0aNCAdu3aUb9+fX73u98BcOutt/LMM89w9dVXh/U1P/PMM9SpU4cffviBnTt3MmDAAIYNG8bbb7/N8OHDueWWW8jLyysycJeUwrFINNx1F6xaBR9+6INxgYQEOOww32rxySfwwAPw3/8GV6eIiFRIBW0VpfHZZ5/x3nvv7e4D3rFjB0uXLuWrr77immuuASA9PZ309PQiXz9q1CgOO+wwHnzwQV599VXOOussAObMmcOtt97Khg0b2LJlC8OHDy9RTbNmzeLNN98EYOPGjSxcuJA+ffpw0UUXkZOTw8knn7z7B4KyUDgWibTFi+Hhh+H886F3kdu2Q+PGcNFF8PTT8Le/QbNmsa1RRERi4kAjvPHIOcdbb71FhyJ+s2mFB3z2o2XLlrRu3Zovv/ySt956i++++w6ACy64gHfeeYdu3brx3HPPMXHixN+8Nikpifz8fMCH8sI1PfbYY0UG6q+++ooPP/yQ8847jxtvvJHzzz8/3C+1SOo5Fom0P/0JkpL86HFx/vAHyM0tn39ziohIuVWrVi02b9683z8PHz6cxx57DOccAD/++CMARxxxBC+//DLgR4FnzZq133ucddZZXH/99bRp04YWLVoAsHnzZpo2bUpOTs7u6+yrdevWTJs2DWD3KHFBTY8//jg5OTkALFiwgK1bt7JkyRIaN27M7373Oy6++GKmT59e4u/HvhSORSLp66/hzTd9QG7evPjnHnwwnHkmPPEEbNgQk/JERETS09NJSkqiW7duPPzwwwwePJiffvpp94S8v/71r+Tk5JCenk6XLl3461//CsAVV1zBli1bSE9P57777qNv3777vcfpp5/O3LlzGTVq1O5z//jHP+jXrx9Dhw6lY8eORb7uj3/8I48//jiHHXYYa9as2X3+kksuoXPnzvTs2ZMuXbpw2WWXkZuby8SJE+nevTs9evTgrbfe4tprry3z98cKfiqIB71793b7rpcnUm7k50PfvrByJcyfD9WrH/g1M2ZAjx5+lFmrV4iIVAjz5s0rdl1fia2i3g8zm+acK7L3USPHIpHy4ot+04977gkvGIOfcjxiBPzzn1DEkjgiIiISWwrHIpGwdSv85S/Qrx+EZuWG7U9/8qPNzz8fndpEREQkbArHIpHwwQewfDncfbdfrq0kjjzSh+r77/cT9EREpNyLp7bVyqw074PCsUgkjB8PderA4YeX/LVmfvR48WJ4663I1yYiIjGVkpLC2rVrFZAD5pxj7dq1pKSklOh1mpAnEgnt20PHjvDee6V7fX4+dO7se5WnTdt74xAR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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(width, height))\n",
"\n",
"\n",
"ax1 = sns.distplot(df['price'], hist=False, color=\"r\", label=\"Actual Value\")\n",
"sns.distplot(Y_hat, hist=False, color=\"b\", label=\"Fitted Values\" , ax=ax1)\n",
"\n",
"\n",
"plt.title('Actual vs Fitted Values for Price')\n",
"plt.xlabel('Price (in dollars)')\n",
"plt.ylabel('Proportion of Cars')\n",
"\n",
"plt.show()\n",
"plt.close()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>We can see that the fitted values are reasonably close to the actual values, since the two distributions overlap a bit. However, there is definitely some room for improvement.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Part 3: Polynomial Regression and Pipelines</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p><b>Polynomial regression</b> is a particular case of the general linear regression model or multiple linear regression models.</p> \n",
"<p>We get non-linear relationships by squaring or setting higher-order terms of the predictor variables.</p>\n",
"\n",
"<p>There are different orders of polynomial regression:</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<center><b>Quadratic - 2nd order</b></center>\n",
"$$\n",
"Yhat = a + b_1 X +b_2 X^2 \n",
"$$\n",
"\n",
"<center><b>Cubic - 3rd order</b></center>\n",
"$$\n",
"Yhat = a + b_1 X +b_2 X^2 +b_3 X^3\\\\\n",
"$$\n",
"\n",
"<center><b>Higher order</b>:</center>\n",
"$$\n",
"Y = a + b_1 X +b_2 X^2 +b_3 X^3 ....\\\\\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>We saw earlier that a linear model did not provide the best fit while using highway-mpg as the predictor variable. Let's see if we can try fitting a polynomial model to the data instead.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>We will use the following function to plot the data:</p>\n"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
"def PlotPolly(model, independent_variable, dependent_variabble, Name):\n",
" x_new = np.linspace(15, 55, 100)\n",
" y_new = model(x_new)\n",
"\n",
" plt.plot(independent_variable, dependent_variabble, '.', x_new, y_new, '-')\n",
" plt.title('Polynomial Fit with Matplotlib for Price ~ Length')\n",
" ax = plt.gca()\n",
" ax.set_facecolor((0.898, 0.898, 0.898))\n",
" fig = plt.gcf()\n",
" plt.xlabel(Name)\n",
" plt.ylabel('Price of Cars')\n",
"\n",
" plt.show()\n",
" plt.close()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"lets get the variables\n"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [],
"source": [
"x = df['highway-mpg']\n",
"y = df['price']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's fit the polynomial using the function <b>polyfit</b>, then use the function <b>poly1d</b> to display the polynomial function.\n"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" 3 2\n",
"-1.557 x + 204.8 x - 8965 x + 1.379e+05\n"
]
}
],
"source": [
"# Here we use a polynomial of the 3rd order (cubic) \n",
"f = np.polyfit(x, y, 3)\n",
"p = np.poly1d(f)\n",
"print(p)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Let's plot the function \n"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"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": [
"PlotPolly(p, x, y, 'highway-mpg')"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([-1.55663829e+00, 2.04754306e+02, -8.96543312e+03, 1.37923594e+05])"
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.polyfit(x, y, 3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>We can already see from plotting that this polynomial model performs better than the linear model. This is because the generated polynomial function \"hits\" more of the data points.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #4:</h1>\n",
"<b>Create 11 order polynomial model with the variables x and y from above?</b>\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" 11 10 9 8 7\n",
"-1.243e-08 x + 4.722e-06 x - 0.0008028 x + 0.08056 x - 5.297 x\n",
" 6 5 4 3 2\n",
" + 239.5 x - 7588 x + 1.684e+05 x - 2.565e+06 x + 2.551e+07 x - 1.491e+08 x + 3.879e+08\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAZoAAAEWCAYAAABfdFHAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAABFCUlEQVR4nO3deXxU1dnA8d+TyR6ys4UEBAUXdgQRtSouVWytUOtCN2m1tbVatXvta6tdfKt2sfq6tLa24i5aF2qLSkW0KoogKptKCghhD5CQhJBkZp73j3sGJsNkkpBMZpI8389nPjP33HvunLmZ3GfOcs8VVcUYY4yJl5REF8AYY0zPZoHGGGNMXFmgMcYYE1cWaIwxxsSVBRpjjDFxZYHGGGNMXFmg6SZEZL2InJnocoQTkXkiMquN27a7/O3Zfzv3u1JEpsZYv1BEvtbZ79uZRGSoiKiIpB5i/v2fUUS+KCIvhq1TERnexv2IiPxNRHaLyOJDKUtHiMjJIvJhV79vMhORG0XkoUSXI5wFmi7mTrj1IlIrItvcP2mfRJfrUKjqOao6u6P7EZH7RaTRHZPQ4+Lw/YvIV0TktY6XGlR1lKoudPvt0D+liEx1J+anItLHufSFbdxP3E4Ore1bVR9W1bMOcfefAD4JlKnq5EPcx35hATT0PVgvIj9uaXtV/Y+qHtXR9+0M7rtQ0dPf81BYoEmMz6hqH+BY4Djg+gSXJxncqqp9wh6PJ7pA7bADOFFEisPSZgEfJag8XekwYL2q1rU3Yyu1sQL3P/J54GciMq2d+U0SsUCTQKq6CZgHjAYQkfNcs06Va9o4JjKPiAwUkb3hJzURmSgiO0QkLfTLX0R+65oz1onIOWHbDhKRuSKyS0TKReTrYetuFJEnROQhEakRkeUicqSIXCci20Vko4icFbZ9ePPLESKyQER2ikiliDwsIgUdOT6h/bvj8EfgBPcrtyrKtqeJyPKw5X+HN+W4YzLDvV4vIme6k9dPgIvdft8L2+VhIvK6Ow4vikjfGEVtBJ4BZrr9+4CLgIcjyni7O4Z7RGSpiJzs0qOWw33+X4vIYhGpFpFnRaSohWMV9e/aymcM5Y1WW/yUiKx1f8vfiMhB5woRuQz4Cwf+Lj936V93ZdjlyjQoLI+KyJUisgZYE+OYAqCqi4CVwOjQr3cR+ZGIbAX+FvmLXkQGi8hT7v9hp4jcGbbuUhFZ7f4vXhCRw1p7/87i/j5/d+VaJyJXh627UUTmiMgD7vu2UkQmha0/VkSWuXVPiMjjIvIrEcnBO38MkgM1wNCxTm9pf4lggSaBRGQw8ClgmYgcCTwKXAv0A/4F/ENE0sPzqOpWYCHeiSzkS8Bjqtrklo8HPgT6ArcC94mIuHWPAhXAIOAC4H9F5IywfX0GeBAoBJYBL+B9T0qBXwB/aunjAL92+z0GGAzc2KYD0QpVXQ18E1jkajsFUTZbBAwXkb7i/dIdDZSJSK6IZAETgf9E7Pd54H+Bx91+x4Wt/gLwVaA/kA58v5ViPgBc4l6fjXdy3ByxzdvAeKAIeAR4QkQyWynHJcCleMfVD9zRwvtH/bu2su9YPgtMwqt1T3dlaEZV76P53+UGETkd73twEVACfAw8FpF1Bt53dGSsAojnJGAU3ncRYCDe8TsMuDxiex/wnHvPoXjf2cfcuhl4Afd8vP+v/+Ads3YL+19q6/YpwD+A91yZzgCuFZGzwzY7z5W1AJgL3OnypgNPA/fjfe5H8f42uFrkOcDmsJaAzbH2lygWaBLjGfer/DXgFbwTwcXAP1V1vgsYvwWygBOj5J+NF1xC/1yfxwsOIR+r6p9VNeC2LQEGuMD2CeBHqrpPVd/F+0X65bC8/1HVF1TVDzyB9095syvTY8BQiVJTUdVyV/YGVd0B/B44tR3H5Pvi1eSqRKSyHflC778PWAKcgneCfB/v+J4ETAHWqOrOduzyb6r6karWA3PwAkSs938DKBKRo/CCwwNRtnlIVXeqql9VfwdkAK31LzyoqivcSeWnwEXub75fG/+u7XWLqu5S1Q3AH/C+Y23xReCvqvqOqjYA1+HVeIaGbfNrt+/6GPupBHbhfY4fq+pLLj0I3OC+Z5H5J+MF2h+oap07FqGa2jfc+6523+3/Bca3VKsRka+KyHvi9aM+KCKnikh/EfkqcE0bj0XIcUA/Vf2Fqjaq6lrgz7gasPOaqv7L/c8+CIR+EEwBUoE7VLVJVZ8C2jLooqX9JYS1cSbGDFX9d3iCq/J+HFpW1aCIbMT7BRTpWeCPInI4cCRQrarhX76tYfvZ636A9QGKgV2qWhO27cd4J+aQbWGv64FK92UNLYf2VRVR/v54v7ZPBnLxfsTsjlL2lvxWVTvaV/UKMBXvl/0r7v1PBRrccntsDXu9F+8zt+ZB4CrgNLwawBfCV4rI94Cv4Z0MFcjDq3XGsjHs9cdAWpQ8g2j979peke87qKUNo5TlndCCqtaKyE687/H6KPtuSV8XECLtcD8qohmM9yMrWr7DgNtF5HdhaeLK9XGU7T8NTAPq8P6Ot+H9YHuR1mu30d57kDRv8vXRvIYd+X3LdDXzQcAmbT77cVuOX9T9tXBs4s4CTfLYDIwJLbjq+WBgU+SGqrpPRObg/Xo8mua1mdbeo0hEcsNOSkOivcch+DXeyXOsqu50TRWdWV1vyzTjrwC/AzYAN+MFmj/jBZq7OrDftnoQKAceCAvwgDcMF/gRXrPJSvdDYjfeyS5WOQaHvR4CNOH92g9Pb+3veiifcTBe819oX5HNgC3ZjHdiBcD1IxTT/DvWkWMeK+9GYEgLJ9SNwE2q+nCUfNFcpKpB9/qP7nGoNgLrVHXEIeTdApSKiIQFm8HAf93rbjH9vjWdJY85wKdF5AwRSQO+h3eCfKOF7R8AvoLXFtumYbGqutHt79cikikiY4HLiOi0PkS5QC1QJSKlwA86YZ/htuH1uaTH2OYNvKaoycBiVV2Jd9I7Hng1xn6HSpTO7vZS1XV4Naj/ibI6F6+PZQeQKiI/w6vRtFaOL4nISBHJxusjezKshhl639b+rofyGX8gIoWuWe4aoK2jAB8Bvioi40UkA6+J6i1VXd+O9z5Ui/FOzDeLSI47Fie5dX8ErhORUQAiki8iF7a0o7Ag027uffc/XLn2iDeIIUtEfCIyWkSOa8PuFgEB4CoRSRWR6Xjf75BtQLGI5B9qebuCBZokoaof4vW7/B/eL9bP4A2Dbmxh+9fx2qvfaec/8efxOko343Uy3qCq8w+95Pv9HK/juBr4J/BU7M3bbQHeL+ytLfXhuH6Md/BqDKHjtgivOWV7C/t9wj3vFJF3WtimzVT1tbAO2XAv4I0Q+givqWYfzZtAWirHg3gdwVuBTOBqoov1dz2Uz/gssBR4F+/veV9bMrm+lJ8Cf8c76R9B876IuHEB+DPAcLxabQVe3yeq+jRwC/CYiOwBVuB1pHe2Urwm5vDHMFeu8cA6vP/vvwCtBgf3PT4f74dDFd454jm8H6Go6gd4AwTWuv7NtjZxdilRu/FZtyUiC4BHVPUviS6L6XziXez5kP19TTgReQv4o6r+LdFlaSur0XRTrtp9LG1v0jDGdENuxNtA13Q2CxgLPJ/ocrWHDQbohkRkNt61CNdEjDQyxvQ8R+H14fbBGwRwgapuSWyR2seazowxxsSVNZ0ZY4yJK2s6i1BUVKSDBw9ufUNjjDH7vf/++5Wq2i/aOgs0EQYPHsy8efMSXQxjjOlWSktLo82wAFjTmTHGmDizQGOMMSauLNAYY4yJKws0xhhj4soCjTHGmLiyQGOMMSauLNAYY4yJKws0nUQaqumz9C7SdqxsfWNjjOlF7ILNziIp5C29kz0paTT1G5Xo0hhjTNKwGk0n0fRc/LmlpO76MNFFMcaYpGKBphM1FR1FmgUaY4xpxgJNJ/IXjSC1aj34GxJdFGOMSRoWaDpRU9FRiAZIrfpvootijDFJwwJNJ/IXHwVA2q6PElwSY4xJHgkNNCKyXkSWi8i7IrLEpRWJyHwRWeOeC8O2v05EykXkQxE5Oyx9ottPuYjcISLi0jNE5HGX/paIDI3n5/HnDUF9GRZojDEmTDLUaE5T1fGqOskt/xh4SVVHAC+5ZURkJDATGAVMA+4WEZ/Lcw9wOTDCPaa59MuA3ao6HLgNuCWunyQllabC4aTutAEBxhgTkgyBJtJ0YLZ7PRuYEZb+mKo2qOo6oByYLCIlQJ6qLlJVBR6IyBPa15PAGaHaTrz4i46yGo0xxoRJdKBR4EURWSoil7u0Aaq6BcA993fppcDGsLwVLq3UvY5Mb5ZHVf1ANVAcWQgRuVxElojIkp07d3boAzUVjcBXX0nK3soO7ccYY3qKRM8McJKqbhaR/sB8EfkgxrbRaiIaIz1WnuYJqvcC9wKMGzfuoPXt0eQGBKTu+ojG7L4d2ZUxxvQICa3RqOpm97wdeBqYDGxzzWG45+1u8wpgcFj2MmCzSy+Lkt4sj4ikAvnArnh8lhB/kY08M8aYcAkLNCKSIyK5odfAWcAKYC4wy202C3jWvZ4LzHQjyYbhdfovds1rNSIyxfW/XBKRJ7SvC4AFrh8nboJZRQSy+lqgMcYYJ5FNZwOAp13ffCrwiKo+LyJvA3NE5DJgA3AhgKquFJE5wCrAD1ypqgG3ryuA+4EsYJ57ANwHPCgi5Xg1mZld8cGaio+yOc+MMcZJWKBR1bXAuCjpO4EzWshzE3BTlPQlwOgo6ftwgaor+YuOJGflwxD0Q0qiu8GMMSaxEj3qrEdqKjoSCTSSWv1xootijDEJZ4EmDpqKQiPPrPnMGGMs0MSBv/AINCWN9G3vJrooxhiTcBZo4sGXTkPZiWSufwniO8jNGGOSngWaOKkfdhaptZtJq1yV6KIYY0xCWaCJk32HnYaKj8x18wFYvqWOB97eyvItdQkumTHGdC0bexsnmllI46DjyFz3Im+UfY2rnymnKaCk+bZyx2dHMKYkJ9FFNMaYLmE1mjiqH/pJ0qrXsaF8BU0BJajQFFCWVdQkumjGGNNlLNDE0b5hZ6IIU/Ut0nxCikCaT5hQlpvoohljTJexprM4Cmb3p2nAeIZWvsIdn/0ayypqmFCWa81mxphexQJNnNUP+yT5b97K+JxdjDlucOsZjDGmh7GmszjbN/STAGStfT7BJTHGmMSwQBNngbwyGkqn0Oe9+5B9uxNdHGOM6XIWaLpA9QnXIY215C35v0QXxRhjupwFmi7gLzqSupGfJ3v146TujHW3amOM6Xks0HSRmklXEczIJ/+Nm7rV/Gc2o4ExpqMs0HSR93el8mK/S8nYsoSs8ucSXZw2Wb6ljqufXsO9b27h6qfXWLAxxhwSCzRdIHTC/nb5BJbpCPJe+SnpmxcnulitWlZRYzMaGGM6LOGBRkR8IrJMRJ5zy0UiMl9E1rjnwrBtrxORchH5UETODkufKCLL3bo7RERceoaIPO7S3xKRoV3+ATlwwvZrCl9v/B670gdS9PwVpG1blojitNmEslyb0cAY02EJDzTANcDqsOUfAy+p6gjgJbeMiIwEZgKjgGnA3SLic3nuAS4HRrjHNJd+GbBbVYcDtwG3xPejRBd+wq7x5bPi5D8RzO5L8bxvkLZjZSKK1CZjSnK447MjuHxKiU0Eaow5ZAkNNCJSBnwa+EtY8nRgtns9G5gRlv6Yqjao6jqgHJgsIiVAnqouUlUFHojIE9rXk8AZodpOV4o8YR817DB2nvs3gum5FD93CRkbXunqIrXZmJIcLjluoAUZY8whS3SN5g/AD4FgWNoAVd0C4J77u/RSYGPYdhUurdS9jkxvlkdV/UA1UBxZCBG5XESWiMiSnTt3dvAjRRd5wg70GUTleQ/jzzuMohe+Rc7yB7rVaDRjjGmrhAUaETkX2K6qS9uaJUqaxkiPlad5guq9qjpJVScVFx8Uh+Im2GcgO897iH2HnUb+ol+T//ovIRjosvc3xpiukMgazUnAeSKyHngMOF1EHgK2ueYw3PN2t30FED4rZRmw2aWXRUlvlkdEUoF8YFc8Psyh0rRsdn/yDmrHXkrOqkcpfOl7EGhMdLGMMabTJCzQqOp1qlqmqkPxOvkXqOqXgLnALLfZLOBZ93ouMNONJBuG1+m/2DWv1YjIFNf/cklEntC+LnDvkXztU5LCnik/oHrKj8ha9wLF876BNNYmulTGGNMpEt1HE83NwCdFZA3wSbeMqq4E5gCrgOeBK1U11M50Bd6AgnLgv8A8l34fUCwi5cB3cSPYklXd2K+w+7RbSN+yhOJ/Xoo02gWSxpjuT5LxB34ijRs3TufNm9f6hnGUsX4BRfOvpqF0CrvOvht86QktjzHGtKa0tHSpqk6Kti4ZazS9XsPQ06k65RdkVrxOwSvXgwZbzxRDss5XlqzlMsZ0LrvDZpKqP+p8fHt3kPf2Hwhm92PPlB8c0n5C0980BZQ039akufAyWctljOl8VqNJYrXjL6du5Bfo8/5fyVz7wiHtI1nnK0vWchljOp8FmiQRtRlJhOoTf0xj/3EUvHI9vj0b2r3fZJ2vLFnLZYzpfDYYIEIiBgM0b0aSg5qRfDWb6PfU5/DnllE5/ZGDBgcs31LHsooaJpTlRm1+am19oiRruYwx7RdrMID10SSBaM1I4Sfed2sLqB30fT637qfkvfVb9pz4k/3r2tLXMaYkJylP5MlaLmNM57KmsyQQqxkpFEh+8MERzA5Oo8+KB0nftGj/euvrMMYkOws0SSDWdPzhgeTmppnsyiij4NUbkKa9gPV1GGOSnzWdJYmWmpEmlOXiS9mKBhR/SgblE3/G5DcuJ3fJHew54cf7g1R37OuwPhpjegcLNN2C7n/eXXwsdcdcTM7yB6g/fBpNA8Z3y74Ou47GmN7Dms6S3LKKGgJBL9QEgt7ynuO/TzBnAAWv/rTbzvRsfUvG9B4WaJJctD4YTe9D1Sd+RtrucnJWPJjoIh4S61sypvewprMk11IfTMNhp7FvyFRy37mb+uHnEswZkOCSts+YkhyuOaWMheVVTB1eYM1mxvRgVqPpBiJvAx1SfeJ1SNBPcOHN3W5yyuVb6rj91QqWbKzh9lcrulXZjTHtY4GmGwvkDWHt4ZcwaNPzLHtrAVc/vabbnLCtj8aY3sMCTTf3dPbn2KR9uTH1foIBf7c5YXvDtgUBfCnWR2NMT2aBppsbM6Qfvw5+mWNSNvKl1AXd7IStEc/GmJ7IAk03N6Ykh89M/wIf95nAdZlPMbbI36n7j9fNyaIN2zbG9EwJCzQikikii0XkPRFZKSI/d+lFIjJfRNa458KwPNeJSLmIfCgiZ4elTxSR5W7dHSIiLj1DRB536W+JyNAu/6BdYMygPmSdfQNp/hpyl97VafsNXVR575tbOr3/x4Y3G9N7JLJG0wCcrqrjgPHANBGZAvwYeElVRwAvuWVEZCQwExgFTAPuFhGf29c9wOXACPeY5tIvA3ar6nDgNuCWLvhcCeEvPoq9R19IzspHSa1a2yn7jGeHfaz53YwxPUvCAo16at1imnsoMB2Y7dJnAzPc6+nAY6raoKrrgHJgsoiUAHmquki9m+s8EJEntK8ngTNCtZ2eqGbSt9HUTPIW3dwp+4t3raOlYdvGmJ4loX00IuITkXeB7cB8VX0LGKCqWwDcc3+3eSmwMSx7hUsrda8j05vlUVU/UA0URynH5SKyRESW7Ny5s5M+XdcLZhVTM/FbZG78DxkbXunw/qzWYYzpDAkNNKoaUNXxQBle7WR0jM2j1UQ0RnqsPJHluFdVJ6nqpOLig+JQt1I36ov484eSv+jmTpkHzWodxpiOSopRZ6paBSzE61vZ5prDcM/b3WYVwOCwbGXAZpdeFiW9WR4RSQXygV3x+AxJw5dO9Qk/JrV6PTkrH0l0aYwxJqGjzvqJSIF7nQWcCXwAzAVmuc1mAc+613OBmW4k2TC8Tv/FrnmtRkSmuP6XSyLyhPZ1AbDA9eP0aA1DTmXf4JPJXXoXKXsrE12cFj2zopJrnynnmRXJW0ZjTMclclLNEmC2GzmWAsxR1edEZBEwR0QuAzYAFwKo6koRmQOsAvzAlaoacPu6ArgfyALmuQfAfcCDIlKOV5OZ2SWfLAlUn3Ad/Z84j9wlt1N9yi8TXZyDPLOiklsXeF1uizd4o9lmjO6byCIZY+IkYYFGVd8HJkRJ3wmc0UKem4CboqQvAQ7q31HVfbhA1dsECoZRN/pL5Cyfzd5jZtLUb1Sii9TMwvKqg5Yt0BjTM7Wr6UxECkVkbLwKYzpXzcRvEcwqJv+1n0Mw0HqGLjR1eEHMZWNMz9FqoBGRhSKSJyJFwHvA30Tk9/EvmukoTc9lzwk/In3HcrI/eCLRxWlmxui+/PD0wUwekssPTx9stRljerC21GjyVXUPcD7wN1WdiNdxb7qB+iM+TcOgKeQtvo2U+uS6RmjG6L78YcZwCzLG9HBtCTSpbpjxRcBzcS6P6WwiVH/ip4i/nrw3f5Po0hhjeqG2BJqfAy8A5ar6togcDqyJb7FMZ/IXHE7t2EvJXvMs6ZsXJ7o4+8VrZmhjTHKJGWjc0OPBqjpWVb8FoKprVfVzXVI602lqj/0G/rwhFLxyPdKU+BN7PGeGNsYkl5iBxl2ncl4XlcXEkaZmUXXqTfhqKsh7K/FjOZZV1NDodzND++1Wzsb0ZG1pOntDRO4UkZNF5NjQI+4lM52usWQSdaO/TM6qR0jf9GZCy5KXlbp/0rmgWzbG9Ext+e8+0T3/IixNgdM7vzgmHpZvqWNZRQ0TynIZO/laMje+QsEr/8OOC+ai6YmZLHNPvR/hwKyoe+o7986gxpjk0WqgUdXTuqIgJj5CfSFNASXNt5U7PjuCY0/9NX3nfpH8139B1dSbIQG36JlQlkt66lZXLrvDpjE9WZvaK0Tk03h3tswMpanqL1rOYZJFtLtkjjluAjUTryRv6Z00DpzI3mMu6vJyhe51E6pp2W0IjOm5Wg00IvJHIBs4DfgL3izIyTNG1sTk3SXz4JpD7bFXkL5tGflv3ERTv1E09e36udDGlORYgDGmF2jLYIATVfUSYLeq/hw4geb3hTFJrMW7ZEoKVafdSjCziML51yIN1V1eto5cR2PX4BjTfbSl6azePe8VkUHATmBY/IpkOltLNYdgVhG7zvw9fedeQtG/r2XntD+BL71LyhSt76ittZvlW+q46qk1+ANKqm8rd55vt5k2Jpm1pUbznLtB2W+Ad4D1wGNxLJPpQk0DJlB16i/J2PQmhS//qMtmeY7Wd9RW81bvoimgKF7eeat79k1Tjenu2jLqLHTXrL+LyHNApqp2fTuLiZv6I2eQUr+L/Ld+QzCzkOqTftrmkWjhQ6fbU6toqe+obSJvktrjb5pqTLfWYqARkS8BoqoPhtJUtUFELhGROlW1G9L3IHXjLsVXv5M+7/+VYFo2NZO/12qw6UjzV0dGnZ1zTDH/XL0TfwBSfd5ypGdWVLKwvIqpwwtsdmhjEixWjeZ7wClR0h8DFgIdCjQiMhh4ABiId3H4vap6u7vvzePAULxmuotUdbfLcx1wGRAArlbVF1z6RA7cyvlfwDWqqiKS4d5jIl7f0sWqur4j5e7J9hz/faSpjtz37sO3dwdVp/wyZp9N1KHT7QgYhzrqbExJDneef2SLQcpuE21MconVR+NT1YMazl1aWie8tx/4nqoeA0wBrhSRkcCPgZdUdQTwklvGrZuJdz3PNOBuN+knwD3A5cAI95jm0i/DGy03HLgNuKUTyt1ziVD9iRvYM+kastfMpfj5byCNLfedeM1fQorQ5RddjinJ4ZLjBkYNVNFuE22MSZxYgSZNRA76LxaRXKDDQ5NUdYuqvuNe1wCrgVJgOjDbbTYbmOFeTwceU9UGVV0HlAOT3b1y8lR1kaoqXg0mPE9oX08CZ4gk4DL47kSE2mO/ye6pvyZ98xL6PXUB6VuXRt10TEkO15xSxqTBuVxzSlnSjPyy20Qbk1xiNZ3dBzwpIleEmptEZChwl1vXadx+JwBvAQNUdQt4wUhE+rvNSoHwmSArXFqTex2ZHsqz0e3LLyLVQDFQ2Znl74nqj5xBILeMgoXXUTz3y9SNmcWe466B1P2TQ7B8Sx23v1pBU0B5b3MtRxRnJUWwCTWTWR+NMcmhxUCjqr8VkVrgFRHpgze0pw64WVXv6awCuH3/HbhWVffEqHBEW6Ex0mPliSzD5XhNb5SWlh6UobdqLJnEwk88QuHbv2Pi8vvJXPsCteMvY+9RF0BqRof7aA51xFpbzBjd1wKMMUki5vBmVf0j8EcXDCRan01HiEgaXpB5WFWfcsnbRKTE1WZKgO0uvYLmMxKUAZtdelmU9PA8FSKSCuQDB110oar3AvcCjBs3zsbKOsu31HH1PzbRFLiYk1LHckf6sxS+/ity3/kjdaO+yEkFp/A3nxzSEOXWLrqMZxAyxnSttlywiarWxiHICF4T3GpVDb8T11xglns9C3g2LH2miGSIyDC8Tv/FrpmtRkSmuH1eEpEntK8LgAWuH8e0QfjNyV5vOoY/HfYHKs+djb9oOHlLbufklz/HksLreXjIczw2ZSPj+1RBGw9vrIsu23L3TZuCpuvYsTYdlci7TZ0EfBlYLiLvurSfADcDc0TkMmADcCGAqq4UkTnAKrwRa1e6O4ACXMGB4c3z3AO8QPagiJTj1WRmxvkz9SgH3ZwsO43GQZPZOWgyKbVbyFo3n8x1LzJl2+PItkdgCQTT+hDoM5BAzgB2UsjmhgwKC4voV1SIpmahqZloWjYlu2sYK8oestmhBeza27j/fUMBTjlw983I2s6hXr+TaN2tptadj7VJHrEu2LxQVZ8QkWFulFenUtXXiN6HAnBGC3luAm6Kkr4EGB0lfR8uUJn2C78ZWeTNyYJ9Sqgbcwl1Yy4B/z7Sdn1EWuVKUnf/F1/dNhqrNpOyezVHU0/ujvqD9v0jgIwDy/u2ZJH6+AD8+UM5yz+I7Sl5vKvDWaslB919s6N9Q62JVzDojifteB9r0zvEqtFcBzyB14dit27uhcJP8EqM2y2nZtLUfyxN/cfuT3rg7a3cu20LQQWfBLnquHw+PzYPaapHmvby+oebeG7ZevLYSz+p4tND/ByZuYfUqrWMq3qNY9O9oFapeVSumkBW2lnsO+x0NLOgg9PXxBbPYNAdT9rxPNam94gVaHaKyMvAMBGZG7lSVc+LX7FMMujI7ZYnlOXiS9mKBpSUFB8jDyshmH3gpPr0m+m8GjwwdcwHksfNnzwCgBWbqvnDs/9hnH7IFN8HnLXvA7JeeQWVVBpKj2fyiPP4v/NO5p0tDS3WOmLVSmKti2cwCD8mvpTucdK2G9SZzhAr0HwarybzIPC7rimOSSYdvd2y33X2+wMHDxCorPO3uDy6NJ9zT5nCwvKjGTx8FrtHFVNbuZLMtS+QtfZ5Cl/+EVPTC8gt/BSNxV8Ajmi2r1gj2lob7Rb/X/Aa8Zz87AZ1pqNiXUfTCLwpIieq6g43I4Cqam3XFc8kUkd+zd7z+qZmp9R7Xt/E3RccuX/9uaOKWbVtb7PlkOgXgo6mqd9oaiZ/h83LX2b3G/dz+tZHCWx9nG1Dp5N+4rcI5HrXQIVGtMGBEW2hssda19HP3JplFTUEgt7xCATpFk1nxnSGtow6GyAiLwJFeKOSdwCzVHVFfItmkkFrv2Zbaob6ePe+ZttFLse6ej9m85Wk8O+GUdzb9F1KdAffSpvLzA1zSdn4D/YefQE1E69i196mZu/VfLn1WwzE6xe89XeY3qotgeZe4Luq+jKAiEx1aSfGr1imO4jVce5LaT6gMHIZ4IjiLPbU+zmiOKtZemsn5ND6LYF+/EK/RtkZ32HS5ofIXj2HrPLn+FzuxbzJyTS6uV+Lsg98zdtyi4F4sf4O01u1JdDkhIIMgKoujDbZpul9YtU8UiKmEopcjhWkWjshR64fUZJD9eE3UDfqS+S9eQvTN/6F0en/5Hr/pSwKjuLI/tnN8sa6xUC8WX+H6Y3aEmjWishP8QYFAHwJ6PTrakz3E6vmMb60Dy9+uLvZcrjWRne1dkKOtt5feAS7zrmXf/zj70zbdAePpt/Ek4FTWLbl2xDWNGcne2O6VlumoLkU6Ac85R59ga/Gs1AmecSafiRUs7h8SslB15tkpzX/akUux/NeNqtzjuOsxlu5y38e01Ne57qPv0bm2uc7bf/GmPZptUbj7m55dReUxSSZtly82HLtILJPpvly6F42ocEAnVnDCPXD/NY/k3/piTxSMJuif3+H+sNfoPqknxLMKoqZv7tNE9MZeuNnNl0nkXOdmSTX2pxj0PIJ6pxjilynu5LqE845puigfLe9UoE/oCzb1P572cQ6MY4pyeE7pw52Qewk6kZ+GnnvPnKX3kX65sVUn/IL9g2NOstRt5wmpqN642c2XatNszeb3umgSTUjpqCJNcvymJIcLhrfj9L8dC4a3++gE1es2Ztb09rszqHrcJZsrOH2VytYvq2B2gnfYMf5TxLMGUDRi1dRsPAnSOPBl4RF6zvqTMk4E3K8P7MxFmhMi0JT0ED0KWhinaCeWVHJw0u3U1HdyMNLt/PMisibmrZ+PUtLWjsxht/eoNF/YL2/6Eh2zHiMmgnfIGvNs/R78jzSNy9uljeefUdtuf1BIsTzMxsDbQg0InKkiLwkIivc8lgRuT7+RTOJ5k1B452A0lNbup4l+glqzrLtzbaNXD7nmGLSfF4AS2vn9SytnRhrGgPNZiWoaQwcWOlLp+a4a6k872FISaP4ua+Qt+gW8DcAsQc4QMdqJMlac2jtMxvTUW3po/kz8APgTwCq+r6IPAL8Kp4FM4nXlutZWurQ3+cPNts2crkj17O0Vq41EbcliFwGaBownh2fe5q8N2+lz/L7yah4jaqpN9PUb1SLAxw62peRzDMD2JBvE09tCTTZqrpYml9w1/ZpfE23FusE5HXob8QfgGWbapp16A/MTWdrzYGpXwbmprdr3x0pV0FEX1LkcrOBBCffyL7DTqfg1Z/S95mLqZ3wDRaVfJl3Nu87KIh1dGZnmxnA9FZt6aOpFJEjcI3oInIBsCWupTLdwrzVO2kK4Dr0veWQoUWZzbaNXI6nqoi+pPDl0OzNf1q0haue8vpJGoacwvYL51J/xKfIfeduyp6byWtvvrF/fUhb+jKeWVHJtc+UR+mT8owpyeGS4wZakDG9SlsCzZV4zWZHi8gm4Fq8WyebXq/la2U60gfTUVOHF7S43NJoN83Ip+r0W7lv4A30o4pn0n/K9+Rh/r1y8/68rfVlPLOiklsXbGTxhhpuXbCxxWBjDkjGUXim87Xlgs21wJlufrMUVe20HkwR+StwLrBdVUe7tCLgcWAosB64yF00iohcB1wGBICrVfUFlz4RuB/IAv4FXKOqKiIZwAPARGAncLGqru+s8vd2R/bPanE5kXOKxZoZOvbMzrC8z4nc3lDKdamP8s3U56jcsBTZ8DMahkxt9X2fW7nzoOXw9wa7MDKcXb/Te7Rl1Nn/ikiBqtapao2IFIpIZw0EuB+YFpH2Y+AlVR0BvOSWEZGRwExglMtzt4j4XJ57gMuBEe4R2udlwG5VHQ7cBtzSSeU2tD78OZHNRDNG9+UPM4YfdKIPn8k52vI5xxRTl9KH6/xf5wtN15OZkU7x81dQ9Pw3+e+a1Vz11Eeu2e2jg36Fp/sk5nK0ZrveLFlH4ZnO15ams3NUtSq04GoXn+qMN1fVV4HIK/WmA7Pd69nAjLD0x1S1QVXXAeXAZBEpAfJUdZGqKl4NZkaUfT0JnCERoxrMoWtt+HMyCp/JOdoysP+SnreCI3lj6mNUH/8D0re8zQkvX8xPZDbFVB/UJwVQ1+iPudyRi1R7Irt+p/doy6gzn4hkqGoDgIhkARlxLNMAVd0CoKpbRKS/Sy8F3gzbrsKlNbnXkemhPBvdvvwiUg0UA80az0XkcrwaEaWlpZi26egoqkQ0I4XXuqLVwh5euo3QnacDCg8t28Xocy+lfsS5fPDUTXy5bj4X+xby18A0VtXOBIbsz7ujtvm+Ipdbu0j1mRWVUZv7eqp4zndnkktbAs1DwEsi8je8/4xLOVBL6ErRaiIaIz1WnuYJqvfi3cyNcePGdZ+buSeBQx2inKj2+fCLNw+6mBP4aMfeqMvB7P78teAafr77bL6T+iRXpT5Lw7bn8b/2WWrHzCKQP5ShRZm8u/lAc1jkSLtzjinmHyt3ElDwSfMBEqGBBACLN3hNSD092ES/ZXcXBZtgE2mVq0jfvhxf7WZ8NZtJqa+ElFTUl4GmZdNUNIKmfmNo7DcazSzsmnL1UG0ZDHCriCwHzsA7cf8y1AkfJ9tEpMTVZkqA0CXlFcDgsO3KgM0uvSxKenieChFJBfI5uKnOJEBHr0k5VK1dzNkYCLa4XJSdyqtawtVN3+YO/2f5Zb8FTPng72SvepyG0hO4qvh0vr35cOrxAsxZRzefSPS/O+ub1Zb+u7N+/2eONpNCTw80Xf0dSNm7ncy188nc8DLpW5eR4vd+RKgvA3+fQQSz+0HQT0pjLSnV68lc+wLifpc2lExm79EXUD/sk5DadUP1e4o2zd6sqvOAeXEuS8hcYBZws3t+Niz9ERH5PTAIr9N/saoGRKRGRKYAbwGXAP8Xsa9FwAXAAtePYxIsUVfJTx1esL/GEFoOl+FLwRvUGL7sCb8N9McpZew59Vdsy/8JOaseJ2vNM5y56Ve8nZHJwuB4Xg6M561VU5oFi4XlVc3ea2F51f71rc2k0FHJONqtK74D0rSXzLXPk/3Rs6RveRtBaSo4gvojZ9Aw6DgaB0wgmN0fonTdSmOtV+vZ8jbZa+ZS+PIPyX89j9oxl1A39qtoWpT+PRNVi4FGRF5T1U+ISA3Nm5sEUFXN6+ibi8ijwFSgr4hUADfgBZg5InIZsAG4EO8NV4rIHGAV3swEV6pq6IxwBQeGN4cHxfuAB0WkHK8mM7OjZTadI1FXyc8Y3ZdN1Q28Ul7FqVH6QgbkprElbEaDAblpzcocOWQ7SA41k66iZuK3uP7Pc/hk4FXO8C3jXN+bUPVHmuYcQVO/0TT2G8MX+vVn4wZhG4UESWkW5FJTmp/oIpcBCDSS0lDtHnuQhmpSGmuQxlq279rNjl3VDOoj9MsCNACSAuJjx94gqz6sZ59mMf/tHIpPGsmQwUMI5AxA0/OinmS7Qjy/A6m7PnI/AOaS0lSLP38otcdeQf3h0/AXjQBcn9j8KqYO9x30PTjQX3Y4MyZOpvbYK0jfsoScFQ+Rt/ROcj54gj3HXUv9iPO842xiEvuB39y4ceN03ryuqryZrta8b0gO6hu64smPeC+sn2XcoBzuueDIZvlbOjHOemQ1ayr3Acoo+Zjzc1fyxYGbSNuxAl/9gfEnjepjO4Vk5hSQm1+EpmXz+se1NAUFQUmniewUPxMG+JDG2v3BJMV/8Jxt4YIqNJJKalo6Kb5UUAX1429qIp2m6HnS8/AXDGVFwwAW1Q4ks2wMnzr1ZDSzoB1HNUkE/WSuX0DOyofJ2LIY9aVTP+xs9h5zEY0DJzYLqOF9YgA/PH3w/mATax1A+tal5C26mfQdK2gYdDy7T7uFYM6ALviA7aBBMj9+mca+Iwn2KemStywtLV2qqpOirYvZdCYiKcD7oYspjenuWusXqI4YhVYdZfoa72ZuW7nz/OZBqiQvwwUaYaUOpbjvOM6ZdjioklK3lT//6zXqd3zMENlOP6niMH8DYzRAyt7tDJY6guI1l+0jDVLSCablozklBNP7oOl9CGYUEMzMJ5ieh2bkE8zII5iey5xV9fxxaTV1mkGKCJcfW8Ilxw3cX64vPLiKit115LKXPNnL2Ny9/PzkLHx120jds4GtH39ISe1SrpRd8DHwAPjzhtA4YDyNA46lceCx+AuHJ6zm05qUvZVkf/AEOavn4Kvbir/PIPZM/h51R3+uxU78WM2YsdYBNA6cSOWMx8n+8O/kvXEz/Z+cTtWpv2Lf0DPbVN54N2P6qj+m4NWfkrHlbYJp2eyZ/F32jvx8QmteMQONqgZF5D0RGaKqG7qqUMbEy4SyXHwpW9GA4ks5uF9gSGEm63c3NFsOCV0HAweug2nTiUKEYJ8Sikee1vyX8smDGeROYNc/U96s72jykFz+8OnhbfpMRw6rw//uGlJa6OuobQzgJ5Xd5LFb86gLpLLviDH718/670oqGhopoIZRKev5RNYGvlK0jYyK18leMxeAQGYRjSXH0TBoMo2lU/DnD0ts4NEg6ZveJPvDv5O1bj4SbGJf6YlUn3Q9+4ZMhRRfzOyx+upa68cDQFLYe/SFNAycROGCH1D04repHf1l9kz5IaS0fFqN62hLVXJWPEju4tvAl0b1iT8hY8OrFLz+K7LK/0XV6bcSyE3M5RttGQxQAqwUkcXA/jYFVT0vbqUyJq404vmAL04cwOvrqwkEwZfiLR+cL/pya7MOxJoaZ3N1Q7NtI5djaa2vY/def8zlvU1eV2cVubweHMNqHc/0s8aCKr6ajaRvWUrG5rdI37yYrHXegNNAdn8aBh1PQ+kUGgcdH7cTWLNri0YVk7p7DVlrnyfro2dJrd1MMCOfupEzqRv5eQIFw9q831h/i1jrIgUKhlE5/RHy3votfVY8SGrVWnaf8Xs0I3oXdjxH2uUsv5/8N29l35DTqDr5RoI5/akb9SWy1jxL/mu/JPjKrTww4LqEDAhpS6D5edxLYUwXWVZRQyDohYhAkIP+0ceU5HD356LP0RY+6iw1ykShra0H7yQW7cQ1cmAOFdWNzZbbI9b1TCI0i4mRFZFdewPRl0UI5A2hPm8I9Ud9dn/gydj0pveoeJ3s8n8A4O8ziMaBE2kceCyNAybgLzwi5i/7tnhmRSW3L/gvE1M+gs0ryFr2LoX1G1CExtLjqZn8XeqHngmph3b9eEt/i9bWHcSXzp4Tf4K/6Ejy//Nz+j4zk13T7iGQf9hBm8ZrpF3m+n+T9+ZvqD98GrvP+N2BZjIR6o+cQe3axRR9PI/7132Bv/kyunxeuVijzjKBbwLDgeXAfapq96Ex3Vpb/tFbOmm3NlFoRyYSPTzi4s7I5Y44fUQhL364u9lyuIg4FPUqZ2+FF3j25g1h7zEXgSqpu8u92s6Wt8nYtGh/4FFfBk1FR9JUfDTv1ffj9aoChgwdwaljDieYUQC+sPsTqSJNe0mpr8S3dwepu/9L2q6POG3Nu1yWsYYMacKvKXzgH4184ivsG3qmd81Lktl79AX484ZQOP8a+j77eXZN+yNN/cc22yYeI+3SKldSsOCHNPUbw+6pv47aF/NG2hQulqc5UVawMHBsl123FhLrJ8dsvOld/gOcA4wErumKQhkTL/EeVn2oMyVMKMslI/XQf+nG6mD+3Nh+zP9w9/5pND43tvlJOs0H4RMkpEV0b7S4bxH8RSPwF42gbvSXXI2ngvRt75K2czVplatIKX+RE/3VnAjwnnsAQV8mSAoaDKAaJFWbj4oLpuVQkDmM2fVn8UZwJG8Hj+bKk45kxsjkvoi1cdBkKmc8SvG/Lqf4ua+w+8zfHzTzd2fezTSlbhtFz3+LYGYBu86+k+U7Aiyr2HrQ36rw6FOoKc/iHN/bvK4Tu3xeuViBZqSqjgEQkfuAxV1TJGPiKxmnzelIAGytXMsqahDxRjuLHNxcOHV48xrP1OGFbd53MyIE8gZTnzeY+hGfAeBrj39IxbbtHCbbGSzbGZnXyCVjMklp2MOO2kYWlFfhDwp7pA/TJh7FoJJS/AXDCPQZ5AWyFZXsLa/iym40/1sgfyiV0x+h6PlvUvTCVVSffAN7j76w099H/PUUvXAl0lTLzvMe4b3q7Bb/VqNLC6gpm8q5W18nf9owRidRH83+nxhuQsouKI4xySveU6YcagBsrVytNRfeePZQAN5cv4cpQ/P2L7dl363pm5PGKvqwXPuwXA+ntiif8yccDsDjb2/l3qYtBBVSBAJSwiWDBzbL366+kiQSzO7Lzs/MpvDf36Hg1Z/hq9lEzaRrOm+knioFC39CWuUqdp19F/7io1j29taYf6vMkeeQtWkex7KKRk7onHK0UaxAM05E9rjXAmS55U6bGcCY7iRR0+a0prVytaW2FB5c2rPv1sQaxZesx7OzaFoOu86+i/zXfknusj/hq9lE1ak3Ne+fOkR93rmbrLXPU33892k47DSg9ePZMPgTBH2ZZK2bT2Np1wYamxkggs0MYGJJxjnDIL7l6ui+Y+VP1uPZqVTp8+6fyXv7NhoGTmT3Gb8nmNO/9XwtyF75CAWv/5K9R86g6tT/bVZLau14Fr54Nenb32XbFxd2+gWcsWYGsEATwQKNMSYeMv/7LwpeuR5Ny2b36b+lsXRKu/fR590/k7f49+wbchq7PvmHdteOssqfo3DBD9gx/RGaBkxo9/vHEivQ2GxwxhjTBfYd8SkqPzuHYEYBxf+6jNwld4B/X9syq5K7+PfkLf49e4efy66zbj+kJrh9Q05FU9LIWvfvduftCAs0xhjTRfyFw6n87OPUDz+X3HfuYcDj55D10TOgLd8WIn3rO/Sd+wVy3/0zdcdcTNXUmyElrcXtY9H0XJqKjyJ114eH+AkOTccu3TXGGNMumpZD1Wm3sPfoC8h78zcULryO3GV/Yt/gk2ksOY6mwuH46raSWlNBxoZXyVr/bwLZ/dh9yq+oP+r8Do9c8+cNIX378k76NG1jgcYYYxKgseQ4Kmc8RtZ/55H94d/JXv0EfVY82GybYFoOeyZdTd2YWZ12o7VA3mB8a1+AYNMh14zaywKNMcYkiqRQP/zT1A//NAQaSd+xHF/1BgJ9SgjklhHoM7DDc8ZF8ucNQTSAr2Zz1PnY4sECjTHGJANfuneDtoET4/o2gbwhAKTu2dhlgcYGAxhjTC/id4HGt6frbjHWKwKNiEwTkQ9FpFxEfpzo8hhjTKIEs/sR9GWSaoGm84iID7iLAzNQf15ERia2VMYYkyBu8lPfno2tb9tJenygASYD5aq6VlUbgceA6QkukzHGJIw/fwipez7usvfrDYGmFAgP3RUubT8RuVxElojIkp07d3Zp4YwxpqsF8oaQuqci5oWinak3BJpoVzc1m+BNVe9V1UmqOqm4+ODb7xpjTE/izxuCBBpIqdveJe/XGwJNBTA4bLkM2JygshhjTMIF8rxTYlcNCOgNgeZtYISIDBORdGAmMDfBZTLGmITx53nXz3RVoOnxF2y6u4NeBbwA+IC/qurKBBfLGGMSJtBnICqpXTbyrMcHGgBV/Rfwr0SXwxhjkkJKKoHcQdZ0ZowxJn78+Yd12ewAFmiMMaYXCuQOJnXPRuiCuyxboDHGmF7Inz+ElMYaUhqq4v5eFmiMMaYX6srJNS3QGGNML7T/dgHVFmiMMcbEgT+3DEWsRmOMMSZOUjMI5AzskiHOFmiMMaaXCvYZiK8L5juzQGOMMb1UMKPARp0ZY4yJn2BmASn7quL+PhZojDGmlwpmFiAWaIwxxsRLMKOAlMA+8O+L6/tYoDHGmF4qmJEPQEpDdVzfxwKNMcb0UsHMAoC499NYoDHGmF5qf6CJ88gzCzTGGNNLBTMKAKvRGGOMiRNrOjPGGBNXPXowgIhcKCIrRSQoIpMi1l0nIuUi8qGInB2WPlFElrt1d4iIuPQMEXncpb8lIkPD8swSkTXuMavLPqAxxnQHqZkEfZk9to9mBXA+8Gp4ooiMBGYCo4BpwN0i4nOr7wEuB0a4xzSXfhmwW1WHA7cBt7h9FQE3AMcDk4EbRKQwjp/JGGO6He2C2QESEmhUdbWqfhhl1XTgMVVtUNV1QDkwWURKgDxVXaSqCjwAzAjLM9u9fhI4w9V2zgbmq+ouVd0NzOdAcDLGGEPXTEOTbH00pcDGsOUKl1bqXkemN8ujqn6gGiiOsa+DiMjlIrJERJbs3LmzEz6GMcZ0D10xsWbcAo2I/FtEVkR5TI+VLUqaxkg/1DzNE1XvVdVJqjqpuLg4RvGMMaZn6Yr5zlLjtWNVPfMQslUAg8OWy4DNLr0sSnp4ngoRSQXygV0ufWpEnoWHUCZjjOmxghn5PXPUWQxzgZluJNkwvE7/xaq6BagRkSmu/+US4NmwPKERZRcAC1w/zgvAWSJS6AYBnOXSjDHGOF7TWTVo1AafThG3Gk0sIvJZ4P+AfsA/ReRdVT1bVVeKyBxgFeAHrlTVgMt2BXA/kAXMcw+A+4AHRaQcryYzE0BVd4nIL4G33Xa/UNVd8f90xhjTfQQzCxANII01aEZeXN4jIYFGVZ8Gnm5h3U3ATVHSlwCjo6TvAy5sYV9/Bf7aocIaY0wPFj7fWSBOgSbZms6MMcZ0of2zA8RxQIAFGmOM6cUO1GjiNyDAAo0xxvRiXTGDswUaY4zpxbQL7kljgcYYY3qxYHoeiliNxhhjTJyk+NCMPAs0xhhj4ieYkY9Y05kxxph4CWYW2KgzY4wx8RPMyLemM2OMMfET71sFWKAxxpheLt43P7NAY4wxvVwws4CUpjoINMZl/xZojDGml9s/O0CcBgRYoDHGmF4u3vOdWaAxxpheTuM8g7MFGmOM6eWCcZ7vzAKNMcb0cvGewdkCjTHG9HL7azQ9KdCIyG9E5AMReV9EnhaRgrB114lIuYh8KCJnh6VPFJHlbt0dIiIuPUNEHnfpb4nI0LA8s0RkjXvM6srPaIwx3YWmZqMpaXGb7yxRNZr5wGhVHQt8BFwHICIjgZnAKGAacLeI+Fyee4DLgRHuMc2lXwbsVtXhwG3ALW5fRcANwPHAZOAGESmM/0czxphuRsSbhqYnjTpT1RdV1e8W3wTK3OvpwGOq2qCq64ByYLKIlAB5qrpIVRV4AJgRlme2e/0kcIar7ZwNzFfVXaq6Gy+4hYKTMcaYMPGcHSAZ+mguBea516XAxrB1FS6t1L2OTG+WxwWvaqA4xr4OIiKXi8gSEVmyc+fODn0YY4zpjrwZnKvisu/UuOwVEJF/AwOjrPofVX3WbfM/gB94OJQtyvYaI/1Q8zRPVL0XuBdg3LhxUbcxxpierKH0JMRfH5d9xy3QqOqZsda7zvlzgTNccxh4tY7BYZuVAZtdelmU9PA8FSKSCuQDu1z61Ig8Cw/hoxhjTI9Xe+w347bvRI06mwb8CDhPVfeGrZoLzHQjyYbhdfovVtUtQI2ITHH9L5cAz4blCY0ouwBY4ALXC8BZIlLoBgGc5dKMMcZ0objVaFpxJ5ABzHejlN9U1W+q6koRmQOswmtSu1JVAy7PFcD9QBZen06oX+c+4EERKcerycwEUNVdIvJL4G233S9UdVfcP5kxxphm5ECrlQGvj2bevHmtb2iMMWa/0tLSpao6Kdq6ZBh1ZowxpgezQGOMMSauLNAYY4yJKws0xhhj4soCjTHGmLiyUWcRRGQH8HEHdtEXqOyk4nQmK1f7WLnax8rVPj2xXIepar9oKyzQdDIRWdLSEL9EsnK1j5Wrfaxc7dPbymVNZ8YYY+LKAo0xxpi4skDT+e5NdAFaYOVqHytX+1i52qdXlcv6aIwxxsSV1WiMMcbElQUaY4wxcWWB5hCJyF9FZLuIrAhLu1FENonIu+7xqQSUa7CIvCwiq0VkpYhc49KLRGS+iKxxz4VJUq6EHjMRyRSRxSLynivXz116oo9XS+VK+HfMlcMnIstE5Dm3nNDjFaNcCT9eIrJeRJa791/i0hJ+vFooV1yOl/XRHCIROQWoBR5Q1dEu7UagVlV/m8BylQAlqvqOiOQCS4EZwFeAXap6s4j8GChU1R8lQbkuIoHHzN1IL0dVa0UkDXgNuAY4n8Qer5bKNY0Ef8dc+b4LTALyVPVcEbmVBB6vGOW6kcT/T64HJqlqZVhawo9XC+W6kTgcL6vRHCJVfRXvRmtJRVW3qOo77nUNsBooBaYDs91ms/FO8slQroRST61bTHMPJfHHq6VyJZyIlAGfBv4SlpzQ4wUtlitZJfx4dSULNJ3vKhF53zWtJaT5IEREhgITgLeAAe6W2Ljn/klSLkjwMXPNLe8C24H5qpoUx6uFckHiv2N/AH4IBMPSEn68WigXJP54KfCiiCwVkctdWjIcr2jlgjgcLws0nese4AhgPLAF+F2iCiIifYC/A9eq6p5ElSNSlHIl/JipakBVxwNlwGQRGd3VZYimhXIl9HiJyLnAdlVd2pXv25oY5Ur49ws4SVWPBc4BrnTN7skgWrnicrws0HQiVd3mTg5B4M/A5ESUw7Xp/x14WFWfcsnbXD9JqL9kezKUK1mOmStLFbAQrx8k4ccrWrmS4HidBJzn2vcfA04XkYdI/PGKWq4kOF6o6mb3vB142pUh0ccrarnidbws0HSi0BfH+SywoqVt41gGAe4DVqvq78NWzQVmudezgGeToVyJPmYi0k9ECtzrLOBM4AMSf7yilivRx0tVr1PVMlUdCswEFqjql0jw8WqpXIk+XiKS4wa/ICI5wFmuDIn+fkUtV7yOV2pn7KQ3EpFHgalAXxGpAG4AporIeLy2z/XANxJQtJOALwPLXfs+wE+Am4E5InIZsAG4MEnK9fkEH7MSYLaI+PB+eM1R1edEZBGJPV4tlevBJPiORZPo71dLbk3w8RoAPO39ziIVeERVnxeRt0ns8WqpXHH5ftnwZmOMMXFlTWfGGGPiygKNMcaYuLJAY4wxJq4s0BhjjIkrCzTGGGPiygKNMW0kIkMlbLbusPRfiMiZreS9UUS+H7/SGZO87DoaYzpIVX+W6DIYk8ysRmNM+/hE5M/i3SPmRRHJEpH7ReQCABH5lIh8ICKvicgd4u6L4owUkYUislZErnbb/zDs9W0issC9PsNN7YKI3CMiS6T5fWnOEJGnQzsWkU+KyFNEcDWp2a6s60XkfBG5Vbz7kDzvpgUK3ZvkFvHugbNYRIa79CNE5E0RedvV3Goj38OY1ligMaZ9RgB3qeoooAr4XGiFiGQCfwLOUdVPAP0i8h4NnI03f9QN7iT/KnCyWz8J6OPSPwH8x6X/j6pOAsYCp4rIWGABcIyIhN7jq8DfWijzEXjT508HHgJeVtUxQL1LD9mjqpOBO/FmQga4HbhdVY8DNsc+NMZEZ4HGmPZZp6rvutdLgaFh644G1qrqOrf8aETef6pqg7vR1Ha8aUCWAhPdvFMNwCK8gHMyBwLNRSLyDrAMGAWMVG9KjweBL7k50U4A5rVQ5nmq2gQsB3zA8y59eUT5Hw17PsG9PgF4wr1+pIX9GxOT9dEY0z4NYa8DQFbYsrQzb6qqNrkZh78KvAG8D5yGVwtZLSLDgO8Dx6nqbhG5H8h0+/gb8A9gH/CEqvpF5Erg62596Da8DQCqGhSRJj0w71SQ5ucAbeG1MR1iNRpjOs8HwOHi3dgN4OI25nsVL5i8ileL+SbwrgsIeUAdUC0iA/DuHQLsn+Z9M3A9cL9Lu0tVx7tHe5u6Lg57XuRev8mB5sGZ7dyfMYDVaIzpNKpaLyLfAp4XkUpgcRuz/gf4H2CRqtaJyD6Xhqq+JyLLgJXAWuD1iLwPA/1UdVUnfIQMEXkL7wfo513atcBDIvI94J9AdSe8j+llbPZmYzqRiPRR1Vp3/527gDWqelsc3+9OYJmq3tfB/awHJrn+o/D0bKBeVVVEZgKfV9XpHXkv0/tYjcaYzvV1EZkFpON13v8pXm8kIkvxmtW+F6/3ACYCd7rAWQVcGsf3Mj2U1WiMMcbElQ0GMMYYE1cWaIwxxsSVBRpjjDFxZYHGGGNMXFmgMcYYE1f/DzRHjISRgDLPAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"f1 = np.polyfit(x, y, 11)\n",
"p1 = np.poly1d(f1)\n",
"print(p1)\n",
"PlotPolly(p1, x, y, 'highway-mpg')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"# calculate polynomial\n",
"# Here we use a polynomial of the 11rd order (cubic) \n",
"f1 = np.polyfit(x, y, 11)\n",
"p1 = np.poly1d(f1)\n",
"print(p1)\n",
"PlotPolly(p1,x,y, 'Highway MPG')\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>The analytical expression for Multivariate Polynomial function gets complicated. For example, the expression for a second-order (degree=2)polynomial with two variables is given by:</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$\n",
"Yhat = a + b_1 X_1 +b_2 X_2 +b_3 X_1 X_2+b_4 X_1^2+b_5 X_2^2\n",
"$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can perform a polynomial transform on multiple features. First, we import the module:\n"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.preprocessing import PolynomialFeatures"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We create a <b>PolynomialFeatures</b> object of degree 2: \n"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"PolynomialFeatures(degree=2, include_bias=True, interaction_only=False)"
]
},
"execution_count": 47,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pr=PolynomialFeatures(degree=2)\n",
"pr"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [],
"source": [
"Z_pr=pr.fit_transform(Z)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The original data is of 201 samples and 4 features \n"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(201, 4)"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Z.shape"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"after the transformation, there 201 samples and 15 features\n"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(201, 15)"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Z_pr.shape"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Pipeline</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Data Pipelines simplify the steps of processing the data. We use the module <b>Pipeline</b> to create a pipeline. We also use <b>StandardScaler</b> as a step in our pipeline.</p>\n"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.pipeline import Pipeline\n",
"from sklearn.preprocessing import StandardScaler"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We create the pipeline, by creating a list of tuples including the name of the model or estimator and its corresponding constructor.\n"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [],
"source": [
"Input=[('scale',StandardScaler()), ('polynomial', PolynomialFeatures(include_bias=False)), ('model',LinearRegression())]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we input the list as an argument to the pipeline constructor \n"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Pipeline(memory=None,\n",
" steps=[('scale', StandardScaler(copy=True, with_mean=True, with_std=True)), ('polynomial', PolynomialFeatures(degree=2, include_bias=False, interaction_only=False)), ('model', LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False))])"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pipe=Pipeline(Input)\n",
"pipe"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can normalize the data, perform a transform and fit the model simultaneously. \n"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/preprocessing/data.py:625: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" return self.partial_fit(X, y)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/base.py:465: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" return self.fit(X, y, **fit_params).transform(X)\n"
]
},
{
"data": {
"text/plain": [
"Pipeline(memory=None,\n",
" steps=[('scale', StandardScaler(copy=True, with_mean=True, with_std=True)), ('polynomial', PolynomialFeatures(degree=2, include_bias=False, interaction_only=False)), ('model', LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False))])"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pipe.fit(Z,y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Similarly, we can normalize the data, perform a transform and produce a prediction simultaneously\n"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/pipeline.py:331: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" Xt = transform.transform(Xt)\n"
]
},
{
"data": {
"text/plain": [
"array([13102.74784201, 13102.74784201, 18225.54572197, 10390.29636555])"
]
},
"execution_count": 55,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ypipe=pipe.predict(Z)\n",
"ypipe[0:4]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1>Question #5:</h1>\n",
"<b>Create a pipeline that Standardizes the data, then perform prediction using a linear regression model using the features Z and targets y</b>\n",
"</div>\n"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/preprocessing/data.py:625: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" return self.partial_fit(X, y)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/base.py:465: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" return self.fit(X, y, **fit_params).transform(X)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/pipeline.py:331: DataConversionWarning: Data with input dtype int64, float64 were all converted to float64 by StandardScaler.\n",
" Xt = transform.transform(Xt)\n"
]
},
{
"data": {
"text/plain": [
"array([13699.11161184, 13699.11161184, 19051.65470233, 10620.36193015,\n",
" 15521.31420211, 13869.66673213, 15456.16196732, 15974.00907672,\n",
" 17612.35917161, 10722.32509097])"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"Input=[('scale',StandardScaler()),('model',LinearRegression())]\n",
"\n",
"pipe=Pipeline(Input)\n",
"\n",
"pipe.fit(Z,y)\n",
"\n",
"ypipe=pipe.predict(Z)\n",
"ypipe[0:10]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"</div>\n",
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"Input=[('scale',StandardScaler()),('model',LinearRegression())]\n",
"\n",
"pipe=Pipeline(Input)\n",
"\n",
"pipe.fit(Z,y)\n",
"\n",
"ypipe=pipe.predict(Z)\n",
"ypipe[0:10]\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Part 4: Measures for In-Sample Evaluation</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>When evaluating our models, not only do we want to visualize the results, but we also want a quantitative measure to determine how accurate the model is.</p>\n",
"\n",
"<p>Two very important measures that are often used in Statistics to determine the accuracy of a model are:</p>\n",
"<ul>\n",
" <li><b>R^2 / R-squared</b></li>\n",
" <li><b>Mean Squared Error (MSE)</b></li>\n",
"</ul>\n",
" \n",
"<b>R-squared</b>\n",
"\n",
"<p>R squared, also known as the coefficient of determination, is a measure to indicate how close the data is to the fitted regression line.</p>\n",
" \n",
"<p>The value of the R-squared is the percentage of variation of the response variable (y) that is explained by a linear model.</p>\n",
"\n",
"<b>Mean Squared Error (MSE)</b>\n",
"\n",
"<p>The Mean Squared Error measures the average of the squares of errors, that is, the difference between actual value (y) and the estimated value (ŷ).</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Model 1: Simple Linear Regression</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's calculate the R^2\n"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The R-square is: 0.7609686443622008\n"
]
}
],
"source": [
"#highway_mpg_fit\n",
"lm.fit(X, Y)\n",
"# Find the R^2\n",
"print('The R-square is: ', lm.score(X, Y))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can say that ~ 49.659% of the variation of the price is explained by this simple linear model \"horsepower_fit\".\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's calculate the MSE\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can predict the output i.e., \"yhat\" using the predict method, where X is the input variable:\n"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The output of the first four predicted value is: [13728.4631336 13728.4631336 17399.38347881 10224.40280408]\n"
]
}
],
"source": [
"Yhat=lm.predict(X)\n",
"print('The output of the first four predicted value is: ', Yhat[0:4])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"lets import the function <b>mean_squared_error</b> from the module <b>metrics</b>\n"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.metrics import mean_squared_error"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we compare the predicted results with the actual results \n"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The mean square error of price and predicted value is: 15021126.025174143\n"
]
}
],
"source": [
"mse = mean_squared_error(df['price'], Yhat)\n",
"print('The mean square error of price and predicted value is: ', mse)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Model 2: Multiple Linear Regression</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's calculate the R^2\n"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The R-square is: 0.8093562806577457\n"
]
}
],
"source": [
"# fit the model \n",
"lm.fit(Z, df['price'])\n",
"# Find the R^2\n",
"print('The R-square is: ', lm.score(Z, df['price']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can say that ~ 80.896 % of the variation of price is explained by this multiple linear regression \"multi_fit\".\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's calculate the MSE\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" we produce a prediction \n"
]
},
{
"cell_type": "code",
"execution_count": 63,
"metadata": {},
"outputs": [],
"source": [
"Y_predict_multifit = lm.predict(Z)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" we compare the predicted results with the actual results \n"
]
},
{
"cell_type": "code",
"execution_count": 64,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The mean square error of price and predicted value using multifit is: 11980366.87072649\n"
]
}
],
"source": [
"print('The mean square error of price and predicted value using multifit is: ', \\\n",
" mean_squared_error(df['price'], Y_predict_multifit))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Model 3: Polynomial Fit</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's calculate the R^2\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"let’s import the function <b>r2_score</b> from the module <b>metrics</b> as we are using a different function\n"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.metrics import r2_score"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We apply the function to get the value of r^2\n"
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The R-square value is: 0.674194666390652\n"
]
}
],
"source": [
"r_squared = r2_score(y, p(x))\n",
"print('The R-square value is: ', r_squared)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can say that ~ 67.419 % of the variation of price is explained by this polynomial fit\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>MSE</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can also calculate the MSE: \n"
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"20474146.426361218"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mean_squared_error(df['price'], p(x))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Part 5: Prediction and Decision Making</h2>\n",
"<h3>Prediction</h3>\n",
"\n",
"<p>In the previous section, we trained the model using the method <b>fit</b>. Now we will use the method <b>predict</b> to produce a prediction. Lets import <b>pyplot</b> for plotting; we will also be using some functions from numpy.</p>\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"%matplotlib inline "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create a new input \n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"new_input=np.arange(1, 100, 1).reshape(-1, 1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Fit the model \n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"lm.fit(X, Y)\n",
"lm"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Produce a prediction\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"yhat=lm.predict(new_input)\n",
"yhat[0:5]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can plot the data \n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"plt.plot(new_input, yhat)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Decision Making: Determining a Good Model Fit</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Now that we have visualized the different models, and generated the R-squared and MSE values for the fits, how do we determine a good model fit?\n",
"<ul>\n",
" <li><i>What is a good R-squared value?</i></li>\n",
"</ul>\n",
"</p>\n",
"\n",
"<p>When comparing models, <b>the model with the higher R-squared value is a better fit</b> for the data.\n",
"<ul>\n",
" <li><i>What is a good MSE?</i></li>\n",
"</ul>\n",
"</p>\n",
"\n",
"<p>When comparing models, <b>the model with the smallest MSE value is a better fit</b> for the data.</p>\n",
"\n",
"<h4>Let's take a look at the values for the different models.</h4>\n",
"<p>Simple Linear Regression: Using Highway-mpg as a Predictor Variable of Price.\n",
"<ul>\n",
" <li>R-squared: 0.49659118843391759</li>\n",
" <li>MSE: 3.16 x10^7</li>\n",
"</ul>\n",
"</p>\n",
" \n",
"<p>Multiple Linear Regression: Using Horsepower, Curb-weight, Engine-size, and Highway-mpg as Predictor Variables of Price.\n",
"<ul>\n",
" <li>R-squared: 0.80896354913783497</li>\n",
" <li>MSE: 1.2 x10^7</li>\n",
"</ul>\n",
"</p>\n",
" \n",
"<p>Polynomial Fit: Using Highway-mpg as a Predictor Variable of Price.\n",
"<ul>\n",
" <li>R-squared: 0.6741946663906514</li>\n",
" <li>MSE: 2.05 x 10^7</li>\n",
"</ul>\n",
"</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Simple Linear Regression model (SLR) vs Multiple Linear Regression model (MLR)</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Usually, the more variables you have, the better your model is at predicting, but this is not always true. Sometimes you may not have enough data, you may run into numerical problems, or many of the variables may not be useful and or even act as noise. As a result, you should always check the MSE and R^2.</p>\n",
"\n",
"<p>So to be able to compare the results of the MLR vs SLR models, we look at a combination of both the R-squared and MSE to make the best conclusion about the fit of the model.\n",
"<ul>\n",
" <li><b>MSE</b>The MSE of SLR is 3.16x10^7 while MLR has an MSE of 1.2 x10^7. The MSE of MLR is much smaller.</li>\n",
" <li><b>R-squared</b>: In this case, we can also see that there is a big difference between the R-squared of the SLR and the R-squared of the MLR. The R-squared for the SLR (~0.497) is very small compared to the R-squared for the MLR (~0.809).</li>\n",
"</ul>\n",
"</p>\n",
"\n",
"This R-squared in combination with the MSE show that MLR seems like the better model fit in this case, compared to SLR.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Simple Linear Model (SLR) vs Polynomial Fit</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<ul>\n",
" <li><b>MSE</b>: We can see that Polynomial Fit brought down the MSE, since this MSE is smaller than the one from the SLR.</li> \n",
" <li><b>R-squared</b>: The R-squared for the Polyfit is larger than the R-squared for the SLR, so the Polynomial Fit also brought up the R-squared quite a bit.</li>\n",
"</ul>\n",
"<p>Since the Polynomial Fit resulted in a lower MSE and a higher R-squared, we can conclude that this was a better fit model than the simple linear regression for predicting Price with Highway-mpg as a predictor variable.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>Multiple Linear Regression (MLR) vs Polynomial Fit</h3>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<ul>\n",
" <li><b>MSE</b>: The MSE for the MLR is smaller than the MSE for the Polynomial Fit.</li>\n",
" <li><b>R-squared</b>: The R-squared for the MLR is also much larger than for the Polynomial Fit.</li>\n",
"</ul>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Conclusion:</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Comparing these three models, we conclude that <b>the MLR model is the best model</b> to be able to predict price from our dataset. This result makes sense, since we have 27 variables in total, and we know that more than one of those variables are potential predictors of the final car price.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Thank you for completing this lab!\n",
"\n",
"## Author\n",
"\n",
"<a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a>\n",
"\n",
"### Other Contributors\n",
"\n",
"<a href=\"https://www.linkedin.com/in/mahdi-noorian-58219234/\" target=\"_blank\">Mahdi Noorian PhD</a>\n",
"\n",
"Bahare Talayian\n",
"\n",
"Eric Xiao\n",
"\n",
"Steven Dong\n",
"\n",
"Parizad\n",
"\n",
"Hima Vasudevan\n",
"\n",
"<a href=\"https://www.linkedin.com/in/fiorellawever/\" target=\"_blank\">Fiorella Wenver</a>\n",
"\n",
"<a href=\" https://www.linkedin.com/in/yi-leng-yao-84451275/ \" target=\"_blank\" >Yi Yao</a>.\n",
"\n",
"## Change Log\n",
"\n",
"| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n",
"| ----------------- | ------- | ---------- | --------------------------------------------- |\n",
"| 2020-09-09 | 2.1 | Lakshmi | Fixes made in Polynomial Regression Equations |\n",
"| 2020-08-27 | 2.0 | Lavanya | Moved lab to course repo in GitLab |\n",
"\n",
"<hr>\n",
"\n",
"## <h3 align=\"center\"> © IBM Corporation 2020. All rights reserved. <h3/>\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.11"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment