Created
May 20, 2019 03:41
-
-
Save iskmz/08ebab79a971f1e8cdc87eaadc44adb4 to your computer and use it in GitHub Desktop.
Created on Cognitive Class Labs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n", | |
| " <a href=\"https://cocl.us/DA0101EN_edx_link_Notebook_link_top\">\n", | |
| " <img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/TopAd.png\" width=\"750\" align=\"center\">\n", | |
| " </a>\n", | |
| "</div>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<a href=\"https://www.bigdatauniversity.com\"><img src = \"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/CCLog.png\" width = 300, align = \"center\"></a>\n", | |
| "\n", | |
| "<h1 align=center><font size = 5>Data Analysis with Python</font></h1>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Exploratory Data Analysis" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Welcome!</h3>\n", | |
| "In this section, we will explore several methods to see if certain characteristics or features can be used to predict car price. " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2>Table of content</h2>\n", | |
| "\n", | |
| "<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n", | |
| "<ol>\n", | |
| " <li><a href=\"#import_data\">Import Data from Module</a></li>\n", | |
| " <li><a href=\"#pattern_visualization\">Analyzing Individual Feature Patterns using Visualization</a></li>\n", | |
| " <li><a href=\"#discriptive_statistics\">Descriptive Statistical Analysis</a></li>\n", | |
| " <li><a href=\"#basic_grouping\">Basics of Grouping</a></li>\n", | |
| " <li><a href=\"#correlation_causation\">Correlation and Causation</a></li>\n", | |
| " <li><a href=\"#anova\">ANOVA</a></li>\n", | |
| "</ol>\n", | |
| " \n", | |
| "Estimated Time Needed: <strong>30 min</strong>\n", | |
| "</div>\n", | |
| " \n", | |
| "<hr>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>What are the main characteristics which have the most impact on the car price?</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 id=\"import_data\">1. Import Data from Module 2</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h4>Setup</h4>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Import libraries " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 1, | |
| "metadata": { | |
| "collapsed": true | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "import pandas as pd\n", | |
| "import numpy as np" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " load data and store in dataframe df:" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "This dataset was hosted on IBM Cloud object click <a href=\"https://cocl.us/edx_DA0101EN_objectstorage\">HERE</a> for free storage." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 2, | |
| "metadata": { | |
| "collapsed": 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>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='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": [ | |
| "<h2 id=\"pattern_visualization\">2. Analyzing Individual Feature Patterns using Visualization</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "To install seaborn we use the pip which is the python package manager." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 3, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "%%capture\n", | |
| "! pip install seaborn" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Import visualization packages \"Matplotlib\" and \"Seaborn\", don't forget about \"%matplotlib inline\" to plot in a Jupyter notebook." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 4, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "import matplotlib.pyplot as plt\n", | |
| "import seaborn as sns\n", | |
| "%matplotlib inline " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h4>How to choose the right visualization method?</h4>\n", | |
| "<p>When visualizing individual variables, it is important to first understand what type of variable you are dealing with. This will help us find the right visualization method for that variable.</p>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 5, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "symboling int64\n", | |
| "normalized-losses int64\n", | |
| "make object\n", | |
| "aspiration object\n", | |
| "num-of-doors object\n", | |
| "body-style object\n", | |
| "drive-wheels object\n", | |
| "engine-location object\n", | |
| "wheel-base float64\n", | |
| "length float64\n", | |
| "width float64\n", | |
| "height float64\n", | |
| "curb-weight int64\n", | |
| "engine-type object\n", | |
| "num-of-cylinders object\n", | |
| "engine-size int64\n", | |
| "fuel-system object\n", | |
| "bore float64\n", | |
| "stroke float64\n", | |
| "compression-ratio float64\n", | |
| "horsepower float64\n", | |
| "peak-rpm float64\n", | |
| "city-mpg int64\n", | |
| "highway-mpg int64\n", | |
| "price float64\n", | |
| "city-L/100km float64\n", | |
| "horsepower-binned object\n", | |
| "diesel int64\n", | |
| "gas int64\n", | |
| "dtype: object\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "# list the data types for each column\n", | |
| "print(df.dtypes)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n", | |
| "<h3>Question #1:</h3>\n", | |
| "\n", | |
| "<b>What is the data type of the column \"peak-rpm\"? </b>\n", | |
| "</div>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Double-click <b>here</b> for the solution.\n", | |
| "\n", | |
| "<!-- The answer is below:\n", | |
| "\n", | |
| "float64\n", | |
| "\n", | |
| "-->" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 11, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Help on method corr in module pandas.core.frame:\n", | |
| "\n", | |
| "corr(method='pearson', min_periods=1) method of pandas.core.frame.DataFrame instance\n", | |
| " Compute pairwise correlation of columns, excluding NA/null values.\n", | |
| " \n", | |
| " Parameters\n", | |
| " ----------\n", | |
| " method : {'pearson', 'kendall', 'spearman'} or callable\n", | |
| " * pearson : standard correlation coefficient\n", | |
| " * kendall : Kendall Tau correlation coefficient\n", | |
| " * spearman : Spearman rank correlation\n", | |
| " * callable: callable with input two 1d ndarrays\n", | |
| " and returning a float\n", | |
| " .. versionadded:: 0.24.0\n", | |
| " \n", | |
| " min_periods : int, optional\n", | |
| " Minimum number of observations required per pair of columns\n", | |
| " to have a valid result. Currently only available for pearson\n", | |
| " and spearman correlation\n", | |
| " \n", | |
| " Returns\n", | |
| " -------\n", | |
| " y : DataFrame\n", | |
| " \n", | |
| " See Also\n", | |
| " --------\n", | |
| " DataFrame.corrwith\n", | |
| " Series.corr\n", | |
| " \n", | |
| " Examples\n", | |
| " --------\n", | |
| " >>> histogram_intersection = lambda a, b: np.minimum(a, b\n", | |
| " ... ).sum().round(decimals=1)\n", | |
| " >>> df = pd.DataFrame([(.2, .3), (.0, .6), (.6, .0), (.2, .1)],\n", | |
| " ... columns=['dogs', 'cats'])\n", | |
| " >>> df.corr(method=histogram_intersection)\n", | |
| " dogs cats\n", | |
| " dogs 1.0 0.3\n", | |
| " cats 0.3 1.0\n", | |
| "\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "help(df.corr)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "for example, we can calculate the correlation between variables of type \"int64\" or \"float64\" using the method \"corr\":" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 10, | |
| "metadata": { | |
| "collapsed": 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>symboling</th>\n", | |
| " <th>normalized-losses</th>\n", | |
| " <th>wheel-base</th>\n", | |
| " <th>length</th>\n", | |
| " <th>width</th>\n", | |
| " <th>height</th>\n", | |
| " <th>curb-weight</th>\n", | |
| " <th>engine-size</th>\n", | |
| " <th>bore</th>\n", | |
| " <th>stroke</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>diesel</th>\n", | |
| " <th>gas</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>symboling</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.466264</td>\n", | |
| " <td>-0.535987</td>\n", | |
| " <td>-0.365404</td>\n", | |
| " <td>-0.242423</td>\n", | |
| " <td>-0.550160</td>\n", | |
| " <td>-0.233118</td>\n", | |
| " <td>-0.110581</td>\n", | |
| " <td>-0.140019</td>\n", | |
| " <td>-0.008245</td>\n", | |
| " <td>-0.182196</td>\n", | |
| " <td>0.075819</td>\n", | |
| " <td>0.279740</td>\n", | |
| " <td>-0.035527</td>\n", | |
| " <td>0.036233</td>\n", | |
| " <td>-0.082391</td>\n", | |
| " <td>0.066171</td>\n", | |
| " <td>-0.196735</td>\n", | |
| " <td>0.196735</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>normalized-losses</th>\n", | |
| " <td>0.466264</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.056661</td>\n", | |
| " <td>0.019424</td>\n", | |
| " <td>0.086802</td>\n", | |
| " <td>-0.373737</td>\n", | |
| " <td>0.099404</td>\n", | |
| " <td>0.112360</td>\n", | |
| " <td>-0.029862</td>\n", | |
| " <td>0.055563</td>\n", | |
| " <td>-0.114713</td>\n", | |
| " <td>0.217299</td>\n", | |
| " <td>0.239543</td>\n", | |
| " <td>-0.225016</td>\n", | |
| " <td>-0.181877</td>\n", | |
| " <td>0.133999</td>\n", | |
| " <td>0.238567</td>\n", | |
| " <td>-0.101546</td>\n", | |
| " <td>0.101546</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>wheel-base</th>\n", | |
| " <td>-0.535987</td>\n", | |
| " <td>-0.056661</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.876024</td>\n", | |
| " <td>0.814507</td>\n", | |
| " <td>0.590742</td>\n", | |
| " <td>0.782097</td>\n", | |
| " <td>0.572027</td>\n", | |
| " <td>0.493244</td>\n", | |
| " <td>0.158502</td>\n", | |
| " <td>0.250313</td>\n", | |
| " <td>0.371147</td>\n", | |
| " <td>-0.360305</td>\n", | |
| " <td>-0.470606</td>\n", | |
| " <td>-0.543304</td>\n", | |
| " <td>0.584642</td>\n", | |
| " <td>0.476153</td>\n", | |
| " <td>0.307237</td>\n", | |
| " <td>-0.307237</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>length</th>\n", | |
| " <td>-0.365404</td>\n", | |
| " <td>0.019424</td>\n", | |
| " <td>0.876024</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.857170</td>\n", | |
| " <td>0.492063</td>\n", | |
| " <td>0.880665</td>\n", | |
| " <td>0.685025</td>\n", | |
| " <td>0.608971</td>\n", | |
| " <td>0.124139</td>\n", | |
| " <td>0.159733</td>\n", | |
| " <td>0.579821</td>\n", | |
| " <td>-0.285970</td>\n", | |
| " <td>-0.665192</td>\n", | |
| " <td>-0.698142</td>\n", | |
| " <td>0.690628</td>\n", | |
| " <td>0.657373</td>\n", | |
| " <td>0.211187</td>\n", | |
| " <td>-0.211187</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>width</th>\n", | |
| " <td>-0.242423</td>\n", | |
| " <td>0.086802</td>\n", | |
| " <td>0.814507</td>\n", | |
| " <td>0.857170</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.306002</td>\n", | |
| " <td>0.866201</td>\n", | |
| " <td>0.729436</td>\n", | |
| " <td>0.544885</td>\n", | |
| " <td>0.188829</td>\n", | |
| " <td>0.189867</td>\n", | |
| " <td>0.615077</td>\n", | |
| " <td>-0.245800</td>\n", | |
| " <td>-0.633531</td>\n", | |
| " <td>-0.680635</td>\n", | |
| " <td>0.751265</td>\n", | |
| " <td>0.673363</td>\n", | |
| " <td>0.244356</td>\n", | |
| " <td>-0.244356</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>height</th>\n", | |
| " <td>-0.550160</td>\n", | |
| " <td>-0.373737</td>\n", | |
| " <td>0.590742</td>\n", | |
| " <td>0.492063</td>\n", | |
| " <td>0.306002</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.307581</td>\n", | |
| " <td>0.074694</td>\n", | |
| " <td>0.180449</td>\n", | |
| " <td>-0.062704</td>\n", | |
| " <td>0.259737</td>\n", | |
| " <td>-0.087027</td>\n", | |
| " <td>-0.309974</td>\n", | |
| " <td>-0.049800</td>\n", | |
| " <td>-0.104812</td>\n", | |
| " <td>0.135486</td>\n", | |
| " <td>0.003811</td>\n", | |
| " <td>0.281578</td>\n", | |
| " <td>-0.281578</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>curb-weight</th>\n", | |
| " <td>-0.233118</td>\n", | |
| " <td>0.099404</td>\n", | |
| " <td>0.782097</td>\n", | |
| " <td>0.880665</td>\n", | |
| " <td>0.866201</td>\n", | |
| " <td>0.307581</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.849072</td>\n", | |
| " <td>0.644060</td>\n", | |
| " <td>0.167562</td>\n", | |
| " <td>0.156433</td>\n", | |
| " <td>0.757976</td>\n", | |
| " <td>-0.279361</td>\n", | |
| " <td>-0.749543</td>\n", | |
| " <td>-0.794889</td>\n", | |
| " <td>0.834415</td>\n", | |
| " <td>0.785353</td>\n", | |
| " <td>0.221046</td>\n", | |
| " <td>-0.221046</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>engine-size</th>\n", | |
| " <td>-0.110581</td>\n", | |
| " <td>0.112360</td>\n", | |
| " <td>0.572027</td>\n", | |
| " <td>0.685025</td>\n", | |
| " <td>0.729436</td>\n", | |
| " <td>0.074694</td>\n", | |
| " <td>0.849072</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.572609</td>\n", | |
| " <td>0.209523</td>\n", | |
| " <td>0.028889</td>\n", | |
| " <td>0.822676</td>\n", | |
| " <td>-0.256733</td>\n", | |
| " <td>-0.650546</td>\n", | |
| " <td>-0.679571</td>\n", | |
| " <td>0.872335</td>\n", | |
| " <td>0.745059</td>\n", | |
| " <td>0.070779</td>\n", | |
| " <td>-0.070779</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>bore</th>\n", | |
| " <td>-0.140019</td>\n", | |
| " <td>-0.029862</td>\n", | |
| " <td>0.493244</td>\n", | |
| " <td>0.608971</td>\n", | |
| " <td>0.544885</td>\n", | |
| " <td>0.180449</td>\n", | |
| " <td>0.644060</td>\n", | |
| " <td>0.572609</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.566936</td>\n", | |
| " <td>-0.267392</td>\n", | |
| " <td>-0.582027</td>\n", | |
| " <td>-0.591309</td>\n", | |
| " <td>0.543155</td>\n", | |
| " <td>0.554610</td>\n", | |
| " <td>0.054458</td>\n", | |
| " <td>-0.054458</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>stroke</th>\n", | |
| " <td>-0.008245</td>\n", | |
| " <td>0.055563</td>\n", | |
| " <td>0.158502</td>\n", | |
| " <td>0.124139</td>\n", | |
| " <td>0.188829</td>\n", | |
| " <td>-0.062704</td>\n", | |
| " <td>0.167562</td>\n", | |
| " <td>0.209523</td>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>0.098462</td>\n", | |
| " <td>-0.065713</td>\n", | |
| " <td>-0.034696</td>\n", | |
| " <td>-0.035201</td>\n", | |
| " <td>0.082310</td>\n", | |
| " <td>0.037300</td>\n", | |
| " <td>0.241303</td>\n", | |
| " <td>-0.241303</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>compression-ratio</th>\n", | |
| " <td>-0.182196</td>\n", | |
| " <td>-0.114713</td>\n", | |
| " <td>0.250313</td>\n", | |
| " <td>0.159733</td>\n", | |
| " <td>0.189867</td>\n", | |
| " <td>0.259737</td>\n", | |
| " <td>0.156433</td>\n", | |
| " <td>0.028889</td>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " <td>-0.435780</td>\n", | |
| " <td>0.331425</td>\n", | |
| " <td>0.268465</td>\n", | |
| " <td>0.071107</td>\n", | |
| " <td>-0.299372</td>\n", | |
| " <td>0.985231</td>\n", | |
| " <td>-0.985231</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>horsepower</th>\n", | |
| " <td>0.075819</td>\n", | |
| " <td>0.217299</td>\n", | |
| " <td>0.371147</td>\n", | |
| " <td>0.579821</td>\n", | |
| " <td>0.615077</td>\n", | |
| " <td>-0.087027</td>\n", | |
| " <td>0.757976</td>\n", | |
| " <td>0.822676</td>\n", | |
| " <td>0.566936</td>\n", | |
| " <td>0.098462</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.107885</td>\n", | |
| " <td>-0.822214</td>\n", | |
| " <td>-0.804575</td>\n", | |
| " <td>0.809575</td>\n", | |
| " <td>0.889488</td>\n", | |
| " <td>-0.169053</td>\n", | |
| " <td>0.169053</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>peak-rpm</th>\n", | |
| " <td>0.279740</td>\n", | |
| " <td>0.239543</td>\n", | |
| " <td>-0.360305</td>\n", | |
| " <td>-0.285970</td>\n", | |
| " <td>-0.245800</td>\n", | |
| " <td>-0.309974</td>\n", | |
| " <td>-0.279361</td>\n", | |
| " <td>-0.256733</td>\n", | |
| " <td>-0.267392</td>\n", | |
| " <td>-0.065713</td>\n", | |
| " <td>-0.435780</td>\n", | |
| " <td>0.107885</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.115413</td>\n", | |
| " <td>-0.058598</td>\n", | |
| " <td>-0.101616</td>\n", | |
| " <td>0.115830</td>\n", | |
| " <td>-0.475812</td>\n", | |
| " <td>0.475812</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>city-mpg</th>\n", | |
| " <td>-0.035527</td>\n", | |
| " <td>-0.225016</td>\n", | |
| " <td>-0.470606</td>\n", | |
| " <td>-0.665192</td>\n", | |
| " <td>-0.633531</td>\n", | |
| " <td>-0.049800</td>\n", | |
| " <td>-0.749543</td>\n", | |
| " <td>-0.650546</td>\n", | |
| " <td>-0.582027</td>\n", | |
| " <td>-0.034696</td>\n", | |
| " <td>0.331425</td>\n", | |
| " <td>-0.822214</td>\n", | |
| " <td>-0.115413</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.972044</td>\n", | |
| " <td>-0.686571</td>\n", | |
| " <td>-0.949713</td>\n", | |
| " <td>0.265676</td>\n", | |
| " <td>-0.265676</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>highway-mpg</th>\n", | |
| " <td>0.036233</td>\n", | |
| " <td>-0.181877</td>\n", | |
| " <td>-0.543304</td>\n", | |
| " <td>-0.698142</td>\n", | |
| " <td>-0.680635</td>\n", | |
| " <td>-0.104812</td>\n", | |
| " <td>-0.794889</td>\n", | |
| " <td>-0.679571</td>\n", | |
| " <td>-0.591309</td>\n", | |
| " <td>-0.035201</td>\n", | |
| " <td>0.268465</td>\n", | |
| " <td>-0.804575</td>\n", | |
| " <td>-0.058598</td>\n", | |
| " <td>0.972044</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.704692</td>\n", | |
| " <td>-0.930028</td>\n", | |
| " <td>0.198690</td>\n", | |
| " <td>-0.198690</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>-0.082391</td>\n", | |
| " <td>0.133999</td>\n", | |
| " <td>0.584642</td>\n", | |
| " <td>0.690628</td>\n", | |
| " <td>0.751265</td>\n", | |
| " <td>0.135486</td>\n", | |
| " <td>0.834415</td>\n", | |
| " <td>0.872335</td>\n", | |
| " <td>0.543155</td>\n", | |
| " <td>0.082310</td>\n", | |
| " <td>0.071107</td>\n", | |
| " <td>0.809575</td>\n", | |
| " <td>-0.101616</td>\n", | |
| " <td>-0.686571</td>\n", | |
| " <td>-0.704692</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.789898</td>\n", | |
| " <td>0.110326</td>\n", | |
| " <td>-0.110326</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>city-L/100km</th>\n", | |
| " <td>0.066171</td>\n", | |
| " <td>0.238567</td>\n", | |
| " <td>0.476153</td>\n", | |
| " <td>0.657373</td>\n", | |
| " <td>0.673363</td>\n", | |
| " <td>0.003811</td>\n", | |
| " <td>0.785353</td>\n", | |
| " <td>0.745059</td>\n", | |
| " <td>0.554610</td>\n", | |
| " <td>0.037300</td>\n", | |
| " <td>-0.299372</td>\n", | |
| " <td>0.889488</td>\n", | |
| " <td>0.115830</td>\n", | |
| " <td>-0.949713</td>\n", | |
| " <td>-0.930028</td>\n", | |
| " <td>0.789898</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.241282</td>\n", | |
| " <td>0.241282</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>diesel</th>\n", | |
| " <td>-0.196735</td>\n", | |
| " <td>-0.101546</td>\n", | |
| " <td>0.307237</td>\n", | |
| " <td>0.211187</td>\n", | |
| " <td>0.244356</td>\n", | |
| " <td>0.281578</td>\n", | |
| " <td>0.221046</td>\n", | |
| " <td>0.070779</td>\n", | |
| " <td>0.054458</td>\n", | |
| " <td>0.241303</td>\n", | |
| " <td>0.985231</td>\n", | |
| " <td>-0.169053</td>\n", | |
| " <td>-0.475812</td>\n", | |
| " <td>0.265676</td>\n", | |
| " <td>0.198690</td>\n", | |
| " <td>0.110326</td>\n", | |
| " <td>-0.241282</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-1.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>gas</th>\n", | |
| " <td>0.196735</td>\n", | |
| " <td>0.101546</td>\n", | |
| " <td>-0.307237</td>\n", | |
| " <td>-0.211187</td>\n", | |
| " <td>-0.244356</td>\n", | |
| " <td>-0.281578</td>\n", | |
| " <td>-0.221046</td>\n", | |
| " <td>-0.070779</td>\n", | |
| " <td>-0.054458</td>\n", | |
| " <td>-0.241303</td>\n", | |
| " <td>-0.985231</td>\n", | |
| " <td>0.169053</td>\n", | |
| " <td>0.475812</td>\n", | |
| " <td>-0.265676</td>\n", | |
| " <td>-0.198690</td>\n", | |
| " <td>-0.110326</td>\n", | |
| " <td>0.241282</td>\n", | |
| " <td>-1.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " symboling normalized-losses wheel-base length \\\n", | |
| "symboling 1.000000 0.466264 -0.535987 -0.365404 \n", | |
| "normalized-losses 0.466264 1.000000 -0.056661 0.019424 \n", | |
| "wheel-base -0.535987 -0.056661 1.000000 0.876024 \n", | |
| "length -0.365404 0.019424 0.876024 1.000000 \n", | |
| "width -0.242423 0.086802 0.814507 0.857170 \n", | |
| "height -0.550160 -0.373737 0.590742 0.492063 \n", | |
| "curb-weight -0.233118 0.099404 0.782097 0.880665 \n", | |
| "engine-size -0.110581 0.112360 0.572027 0.685025 \n", | |
| "bore -0.140019 -0.029862 0.493244 0.608971 \n", | |
| "stroke -0.008245 0.055563 0.158502 0.124139 \n", | |
| "compression-ratio -0.182196 -0.114713 0.250313 0.159733 \n", | |
| "horsepower 0.075819 0.217299 0.371147 0.579821 \n", | |
| "peak-rpm 0.279740 0.239543 -0.360305 -0.285970 \n", | |
| "city-mpg -0.035527 -0.225016 -0.470606 -0.665192 \n", | |
| "highway-mpg 0.036233 -0.181877 -0.543304 -0.698142 \n", | |
| "price -0.082391 0.133999 0.584642 0.690628 \n", | |
| "city-L/100km 0.066171 0.238567 0.476153 0.657373 \n", | |
| "diesel -0.196735 -0.101546 0.307237 0.211187 \n", | |
| "gas 0.196735 0.101546 -0.307237 -0.211187 \n", | |
| "\n", | |
| " width height curb-weight engine-size bore \\\n", | |
| "symboling -0.242423 -0.550160 -0.233118 -0.110581 -0.140019 \n", | |
| "normalized-losses 0.086802 -0.373737 0.099404 0.112360 -0.029862 \n", | |
| "wheel-base 0.814507 0.590742 0.782097 0.572027 0.493244 \n", | |
| "length 0.857170 0.492063 0.880665 0.685025 0.608971 \n", | |
| "width 1.000000 0.306002 0.866201 0.729436 0.544885 \n", | |
| "height 0.306002 1.000000 0.307581 0.074694 0.180449 \n", | |
| "curb-weight 0.866201 0.307581 1.000000 0.849072 0.644060 \n", | |
| "engine-size 0.729436 0.074694 0.849072 1.000000 0.572609 \n", | |
| "bore 0.544885 0.180449 0.644060 0.572609 1.000000 \n", | |
| "stroke 0.188829 -0.062704 0.167562 0.209523 -0.055390 \n", | |
| "compression-ratio 0.189867 0.259737 0.156433 0.028889 0.001263 \n", | |
| "horsepower 0.615077 -0.087027 0.757976 0.822676 0.566936 \n", | |
| "peak-rpm -0.245800 -0.309974 -0.279361 -0.256733 -0.267392 \n", | |
| "city-mpg -0.633531 -0.049800 -0.749543 -0.650546 -0.582027 \n", | |
| "highway-mpg -0.680635 -0.104812 -0.794889 -0.679571 -0.591309 \n", | |
| "price 0.751265 0.135486 0.834415 0.872335 0.543155 \n", | |
| "city-L/100km 0.673363 0.003811 0.785353 0.745059 0.554610 \n", | |
| "diesel 0.244356 0.281578 0.221046 0.070779 0.054458 \n", | |
| "gas -0.244356 -0.281578 -0.221046 -0.070779 -0.054458 \n", | |
| "\n", | |
| " stroke compression-ratio horsepower peak-rpm \\\n", | |
| "symboling -0.008245 -0.182196 0.075819 0.279740 \n", | |
| "normalized-losses 0.055563 -0.114713 0.217299 0.239543 \n", | |
| "wheel-base 0.158502 0.250313 0.371147 -0.360305 \n", | |
| "length 0.124139 0.159733 0.579821 -0.285970 \n", | |
| "width 0.188829 0.189867 0.615077 -0.245800 \n", | |
| "height -0.062704 0.259737 -0.087027 -0.309974 \n", | |
| "curb-weight 0.167562 0.156433 0.757976 -0.279361 \n", | |
| "engine-size 0.209523 0.028889 0.822676 -0.256733 \n", | |
| "bore -0.055390 0.001263 0.566936 -0.267392 \n", | |
| "stroke 1.000000 0.187923 0.098462 -0.065713 \n", | |
| "compression-ratio 0.187923 1.000000 -0.214514 -0.435780 \n", | |
| "horsepower 0.098462 -0.214514 1.000000 0.107885 \n", | |
| "peak-rpm -0.065713 -0.435780 0.107885 1.000000 \n", | |
| "city-mpg -0.034696 0.331425 -0.822214 -0.115413 \n", | |
| "highway-mpg -0.035201 0.268465 -0.804575 -0.058598 \n", | |
| "price 0.082310 0.071107 0.809575 -0.101616 \n", | |
| "city-L/100km 0.037300 -0.299372 0.889488 0.115830 \n", | |
| "diesel 0.241303 0.985231 -0.169053 -0.475812 \n", | |
| "gas -0.241303 -0.985231 0.169053 0.475812 \n", | |
| "\n", | |
| " city-mpg highway-mpg price city-L/100km diesel \\\n", | |
| "symboling -0.035527 0.036233 -0.082391 0.066171 -0.196735 \n", | |
| "normalized-losses -0.225016 -0.181877 0.133999 0.238567 -0.101546 \n", | |
| "wheel-base -0.470606 -0.543304 0.584642 0.476153 0.307237 \n", | |
| "length -0.665192 -0.698142 0.690628 0.657373 0.211187 \n", | |
| "width -0.633531 -0.680635 0.751265 0.673363 0.244356 \n", | |
| "height -0.049800 -0.104812 0.135486 0.003811 0.281578 \n", | |
| "curb-weight -0.749543 -0.794889 0.834415 0.785353 0.221046 \n", | |
| "engine-size -0.650546 -0.679571 0.872335 0.745059 0.070779 \n", | |
| "bore -0.582027 -0.591309 0.543155 0.554610 0.054458 \n", | |
| "stroke -0.034696 -0.035201 0.082310 0.037300 0.241303 \n", | |
| "compression-ratio 0.331425 0.268465 0.071107 -0.299372 0.985231 \n", | |
| "horsepower -0.822214 -0.804575 0.809575 0.889488 -0.169053 \n", | |
| "peak-rpm -0.115413 -0.058598 -0.101616 0.115830 -0.475812 \n", | |
| "city-mpg 1.000000 0.972044 -0.686571 -0.949713 0.265676 \n", | |
| "highway-mpg 0.972044 1.000000 -0.704692 -0.930028 0.198690 \n", | |
| "price -0.686571 -0.704692 1.000000 0.789898 0.110326 \n", | |
| "city-L/100km -0.949713 -0.930028 0.789898 1.000000 -0.241282 \n", | |
| "diesel 0.265676 0.198690 0.110326 -0.241282 1.000000 \n", | |
| "gas -0.265676 -0.198690 -0.110326 0.241282 -1.000000 \n", | |
| "\n", | |
| " gas \n", | |
| "symboling 0.196735 \n", | |
| "normalized-losses 0.101546 \n", | |
| "wheel-base -0.307237 \n", | |
| "length -0.211187 \n", | |
| "width -0.244356 \n", | |
| "height -0.281578 \n", | |
| "curb-weight -0.221046 \n", | |
| "engine-size -0.070779 \n", | |
| "bore -0.054458 \n", | |
| "stroke -0.241303 \n", | |
| "compression-ratio -0.985231 \n", | |
| "horsepower 0.169053 \n", | |
| "peak-rpm 0.475812 \n", | |
| "city-mpg -0.265676 \n", | |
| "highway-mpg -0.198690 \n", | |
| "price -0.110326 \n", | |
| "city-L/100km 0.241282 \n", | |
| "diesel -1.000000 \n", | |
| "gas 1.000000 " | |
| ] | |
| }, | |
| "execution_count": 10, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df.corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "The diagonal elements are always one; we will study correlation more precisely Pearson correlation in-depth at the end of the notebook." | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n", | |
| "<h1> Question #2: </h1>\n", | |
| "\n", | |
| "<p>Find the correlation between the following columns: bore, stroke,compression-ratio , and horsepower.</p>\n", | |
| "<p>Hint: if you would like to select those columns use the following syntax: df[['bore','stroke' ,'compression-ratio','horsepower']]</p>\n", | |
| "</div>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 8, | |
| "metadata": { | |
| "collapsed": true | |
| }, | |
| "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>bore</th>\n", | |
| " <th>stroke</th>\n", | |
| " <th>compression-ratio</th>\n", | |
| " <th>horsepower</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>bore</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.566936</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>stroke</th>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>0.098462</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>compression-ratio</th>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>horsepower</th>\n", | |
| " <td>0.566936</td>\n", | |
| " <td>0.098462</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " bore stroke compression-ratio horsepower\n", | |
| "bore 1.000000 -0.055390 0.001263 0.566936\n", | |
| "stroke -0.055390 1.000000 0.187923 0.098462\n", | |
| "compression-ratio 0.001263 0.187923 1.000000 -0.214514\n", | |
| "horsepower 0.566936 0.098462 -0.214514 1.000000" | |
| ] | |
| }, | |
| "execution_count": 8, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# Write your code below and press Shift+Enter to execute \n", | |
| "df[['bore','stroke' ,'compression-ratio','horsepower']].corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Double-click <b>here</b> for the solution.\n", | |
| "\n", | |
| "<!-- The answer is below:\n", | |
| "\n", | |
| "df[['bore', 'stroke', 'compression-ratio', 'horsepower']].corr() \n", | |
| "\n", | |
| "-->" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2>Continuous numerical variables:</h2> \n", | |
| "\n", | |
| "<p>Continuous numerical variables are variables that may contain any value within some range. Continuous numerical variables can have the type \"int64\" or \"float64\". A great way to visualize these variables is by using scatterplots with fitted lines.</p>\n", | |
| "\n", | |
| "<p>In order to start understanding the (linear) relationship between an individual variable and the price. We can do this by using \"regplot\", which plots the scatterplot plus the fitted regression line for the data.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's see several examples of different linear relationships:" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h4>Positive linear relationship</h4>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's find the scatterplot of \"engine-size\" and \"price\" " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 13, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f12717e4898>" | |
| ] | |
| }, | |
| "execution_count": 13, | |
| "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": [ | |
| "# Engine size as potential predictor variable of price\n", | |
| "sns.regplot(x=\"engine-size\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>As the engine-size goes up, the price goes up: this indicates a positive direct correlation between these two variables. Engine size seems like a pretty good predictor of price since the regression line is almost a perfect diagonal line.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " We can examine the correlation between 'engine-size' and 'price' and see it's approximately 0.87" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 14, | |
| "metadata": { | |
| "collapsed": 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>engine-size</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>engine-size</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.872335</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>0.872335</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " engine-size price\n", | |
| "engine-size 1.000000 0.872335\n", | |
| "price 0.872335 1.000000" | |
| ] | |
| }, | |
| "execution_count": 14, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df[[\"engine-size\", \"price\"]].corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Highway mpg is a potential predictor variable of price " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 15, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f1271749748>" | |
| ] | |
| }, | |
| "execution_count": 15, | |
| "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": [ | |
| "sns.regplot(x=\"highway-mpg\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>As the highway-mpg goes up, the price goes down: this indicates an inverse/negative relationship between these two variables. Highway mpg could potentially be a predictor of price.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "We can examine the correlation between 'highway-mpg' and 'price' and see it's approximately -0.704" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 16, | |
| "metadata": { | |
| "collapsed": 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>highway-mpg</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>highway-mpg</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.704692</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>-0.704692</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " highway-mpg price\n", | |
| "highway-mpg 1.000000 -0.704692\n", | |
| "price -0.704692 1.000000" | |
| ] | |
| }, | |
| "execution_count": 16, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df[['highway-mpg', 'price']].corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Weak Linear Relationship</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's see if \"Peak-rpm\" as a predictor variable of \"price\"." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 17, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f12716c2b38>" | |
| ] | |
| }, | |
| "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": [ | |
| "sns.regplot(x=\"peak-rpm\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Peak rpm does not seem like a good predictor of the price at all since the regression line is close to horizontal. Also, the data points are very scattered and far from the fitted line, showing lots of variability. Therefore it's it is not a reliable variable.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "We can examine the correlation between 'peak-rpm' and 'price' and see it's approximately -0.101616 " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 18, | |
| "metadata": { | |
| "collapsed": 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>peak-rpm</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.101616</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>-0.101616</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " peak-rpm price\n", | |
| "peak-rpm 1.000000 -0.101616\n", | |
| "price -0.101616 1.000000" | |
| ] | |
| }, | |
| "execution_count": 18, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df[['peak-rpm','price']].corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " <div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n", | |
| "<h1> Question 3 a): </h1>\n", | |
| "\n", | |
| "<p>Find the correlation between x=\"stroke\", y=\"price\".</p>\n", | |
| "<p>Hint: if you would like to select those columns use the following syntax: df[[\"stroke\",\"price\"]] </p>\n", | |
| "</div>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 19, | |
| "metadata": { | |
| "collapsed": 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>stroke</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>stroke</th>\n", | |
| " <td>1.00000</td>\n", | |
| " <td>0.08231</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>0.08231</td>\n", | |
| " <td>1.00000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " stroke price\n", | |
| "stroke 1.00000 0.08231\n", | |
| "price 0.08231 1.00000" | |
| ] | |
| }, | |
| "execution_count": 19, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# Write your code below and press Shift+Enter to execute\n", | |
| "df[[\"stroke\",\"price\"]].corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Double-click <b>here</b> for the solution.\n", | |
| "\n", | |
| "<!-- The answer is below:\n", | |
| "\n", | |
| "#The correlation is 0.0823, the non-diagonal elements of the table.\n", | |
| "#code:\n", | |
| "df[[\"stroke\",\"price\"]].corr() \n", | |
| "\n", | |
| "-->" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n", | |
| "<h1>Question 3 b):</h1>\n", | |
| "\n", | |
| "<p>Given the correlation results between \"price\" and \"stroke\" do you expect a linear relationship?</p> \n", | |
| "<p>Verify your results using the function \"regplot()\".</p>\n", | |
| "</div>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 20, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f12716fef28>" | |
| ] | |
| }, | |
| "execution_count": 20, | |
| "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": [ | |
| "# Write your code below and press Shift+Enter to execute \n", | |
| "\n", | |
| "# no, relationship is weak !\n", | |
| "sns.regplot(x=\"stroke\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Double-click <b>here</b> for the solution.\n", | |
| "\n", | |
| "<!-- The answer is below:\n", | |
| "\n", | |
| "#There is a weak correlation between the variable 'stroke' and 'price.' as such regression will not work well. We #can see this use \"regplot\" to demonstrate this.\n", | |
| "\n", | |
| "#Code: \n", | |
| "sns.regplot(x=\"stroke\", y=\"price\", data=df)\n", | |
| "\n", | |
| "-->" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Categorical variables</h3>\n", | |
| "\n", | |
| "<p>These are variables that describe a 'characteristic' of a data unit, and are selected from a small group of categories. The categorical variables can have the type \"object\" or \"int64\". A good way to visualize categorical variables is by using boxplots.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's look at the relationship between \"body-style\" and \"price\"." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 22, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f127152d048>" | |
| ] | |
| }, | |
| "execution_count": 22, | |
| "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": [ | |
| "sns.boxplot(x=\"body-style\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>We see that the distributions of price between the different body-style categories have a significant overlap, and so body-style would not be a good predictor of price. Let's examine engine \"engine-location\" and \"price\":</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 24, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f127d0b0e80>" | |
| ] | |
| }, | |
| "execution_count": 24, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZUAAAEKCAYAAADaa8itAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAH3lJREFUeJzt3X2QXXWd5/H3h06ARmQITZPCBAyauBhhjNBAdsFVIYRORgiziyvomIZhJ6PyEB1nBmJZRlEs2dqRSTKCRol0XDQgo0Ok8kDzJDolkA7EhBCs9EKAPGxoOxDBZIIJ3/3j/G686dx+5Nw+3fTnVXXr3vM9v3Pu93Tdyje/8/D7KSIwMzPLwyFFJ2BmZm8dLipmZpYbFxUzM8uNi4qZmeXGRcXMzHLjomJmZrlxUTEzs9y4qJiZWW5cVMzMLDcjik5goB177LExbty4otMwMxtSVq9e/buIqO+p3bArKuPGjaO1tbXoNMzMhhRJz/emnU9/mZlZblxUzMwsNy4qZmaWGxcVMzPLjYuK9UtHRwfXXnstHR0dRadiZoOIi4r1S3NzM+vWrWPx4sVFp2Jmg4iLivVZR0cHK1asICJYsWKFeytmtl/Vi4qkGklPSro3Ld8u6TlJa9JrUopL0nxJbZLWSjqtbB9NkjamV1NZ/HRJ69I28yWp2sdjWS/ljTfeAGDfvn3urZjZfgPRU5kNbOgU+4eImJRea1JsGjAhvWYBtwJIOgaYC5wFnAnMlTQqbXNralvarrGaB2KZ+++/n7179wKwd+9eWlpaCs7IzAaLqhYVSWOBvwC+34vmM4DFkXkUOFrS8cAFQEtE7IiIl4EWoDGtOyoifh0RASwGLq7OkVi5KVOmMGJENhjDiBEjOP/88wvOyMwGi2r3VP4Z+EfgjU7xG9MprpslHZZiY4AXy9psTrHu4psrxA8iaZakVkmt7e3t/T4YyzQ1NXHIIdlPp6amhpkzZxackZkNFlUrKpI+CrwUEas7rZoDnAycARwDXFfapMJuoh/xg4MRCyOiISIa6ut7HA/NelBXV0djYyOSaGxspK6uruiUzGyQqGZP5WzgIkmbgCXAuZL+T0RsS6e49gA/ILtOAllP44Sy7ccCW3uIj60QtwHQ1NTEqaee6l6KmR2gakUlIuZExNiIGAdcCjwYEX+VroWQ7tS6GHgqbbIUmJnuApsM7IyIbcBKYKqkUekC/VRgZVr3qqTJaV8zgXuqdTx2oLq6OubPn+9eipkdoIih7++QVE92+moN8OkUXwZMB9qAXcAVABGxQ9LXgFWp3Q0RsSN9/gxwO1ALLE8vMzMriLIbp4aPhoaG8HwqZmZ9I2l1RDT01M5P1JuZWW5cVMzMLDcuKmZmlhsXFTMzy42LipmZ5cZFxczMcuOiYmZmuXFRMTOz3LioWL94jnozq8RFxfrFc9SbWSUuKtZnHR0dLF++nIhg+fLl7q2Y2X4uKtZnzc3N+6cT/uMf/+jeipnt56JifdbS0kJpINKI4L777is4IzMbLFxUrM9Gjx7d7bKZDV8uKtZn27dv73bZzIavqhcVSTWSnpR0b1o+SdJjkjZKulPSoSl+WFpuS+vHle1jTor/VtIFZfHGFGuTdH21j8Uy559/PtlkmyCJqVOnFpyRmQ0WA9FTmQ1sKFu+Cbg5IiYALwNXpviVwMsRMR64ObVD0kSy6YjfBzQCt6RCVQN8G5gGTAQuS22typqamhg5ciQAI0eO9Dz1ZrZfVYuKpLHAXwDfT8sCzgXuTk2ayeapB5iRlknrz0vtZwBLImJPRDxHNt3wmenVFhHPRsTrwJLU1qqsrq6OxsZGJDFt2jTPU29m+1W7p/LPwD8Cb6TlOuCViNibljcDY9LnMcCLAGn9ztR+f7zTNl3FbQA0NTVx6qmnupdiZgeoWlGR9FHgpYhYXR6u0DR6WNfXeKVcZklqldTa3t7eTdbWW3V1dcyfP9+9FDM7QDV7KmcDF0naRHZq6lyynsvRkkakNmOBrenzZuAEgLT+z4Ad5fFO23QVP0hELIyIhohoqK+vf/NHZmZmFVWtqETEnIgYGxHjyC60PxgRnwQeAi5JzZqAe9LnpWmZtP7ByJ6wWwpcmu4OOwmYADwOrAImpLvJDk3fsbRax2NmZj0b0XOT3F0HLJH0deBJ4LYUvw34oaQ2sh7KpQARsV7SXcDTwF7gqojYByDpamAlUAMsioj1A3okZmZ2AJWG2xguGhoaorW1teg0zMyGFEmrI6Khp3Z+ot7MzHLjomJmZrlxUTEzs9y4qJiZWW5cVMzMLDcuKmZmlhsXFeuXjo4Orr32Ws9Pb2YHcFGxfmlubmbdunWen97MDlDEE/U2xHV0dLBixQoighUrVjBz5kwPLGkALFiwgLa2tqLTYMuWLQCMGVPswOXjx4/nmmuuKTSHgeaeivVZc3Mzb7yRzWawb98+91Zs0Nm9eze7d+8uOo1hycO0WJ9Nnz6dXbt27V8+4ogjWLZsWYEZmR1o9uzZAMybN6/gTN46PEyLVc2UKVMOmKP+/PPPLzgjMxssXFSszy666CJKPdyI4MILLyw4IzMbLFxUrM+WLl16QE/l5z//ecEZmdlg4aJifXb//fcf0FNpaWkpOCMzGyxcVKzPPvjBD3a7bGbDV9WeU5F0OPAIcFj6nrsjYq6k24EPATtT08sjYo2y8ynzgOnArhR/Iu2rCfhSav/1iGhO8dOB24FaYBkwO4bb7WwF8J94cBosz4gMBqW/Q+kusOFuIJ+XqebDj3uAcyPiNUkjgV9JWp7W/UNE3N2p/TSy+ecnAGcBtwJnSToGmAs0AAGslrQ0Il5ObWYBj5IVlUZgOVZVv/zlLw9YfuSRR5gzZ05B2VhJW1sbG9c/yYlH7is6lcId+sfsJMye5/34wAuv1Qzo91WtqKQew2tpcWR6dfdf3BnA4rTdo5KOlnQ88GGgJSJ2AEhqARolPQwcFRG/TvHFwMW4qFTd6NGj2bRp0wHLNjiceOQ+vnja74tOwwaRbzxx1IB+X1WvqUiqkbQGeImsMDyWVt0oaa2kmyUdlmJjgBfLNt+cYt3FN1eIV8pjlqRWSa3t7e1v+riGu+3bt3e7bGbDV1WLSkTsi4hJwFjgTEmnAHOAk4EzgGOA61JzVdpFP+KV8lgYEQ0R0VBfX9/Ho7DOOj/sOHXq1IIyMbPBZkDu/oqIV4CHgcaI2BaZPcAPgDNTs83ACWWbjQW29hAfWyFuVXbRRRcdsOyHH82spGpFRVK9pKPT51pgCvBMuk5CutvrYuCptMlSYKYyk4GdEbENWAlMlTRK0ihgKrAyrXtV0uS0r5nAPdU6HvsTP/xoZl2p5t1fxwPNkmrIitddEXGvpAcl1ZOdvloDfDq1X0Z2O3Eb2S3FVwBExA5JXwNWpXY3lC7aA5/hT7cUL8cX6QdEpYcfP//5zxeclW3ZsoU/vFoz4BdmbXB7/tUa3pamAhgI1bz7ay3wgQrxc7toH8BVXaxbBCyqEG8FTnlzmVpfTZkyhWXLlrF3715GjBjhASXNbD9P0mV91tTUxIoVKwCoqalh5syZBWdkkE1ItWfvNt9SbAf4xhNHcdgATlbmYVqsz+rq6mhsbEQSjY2NnvXRzPZzT8X6pampiU2bNrmXMsi88JqvqQBs35X9f3n0EW8UnEnxXnithgkD+H0uKtYvdXV1zJ8/v+g0rMz48eOLTmHQeD2N/XXYO/03mcDA/jZcVKxfOjo6+OpXv8rcuXN9+muQGKgBA4cCTydcHBcV65fm5mbWrVvH4sWLfTux7TdYRkoeLKMUD+TowIOFL9Rbn3V0dLBixQoighUrVtDR0VF0SmYHqK2tpba2tug0hiX3VKzPmpub2bcvG15979697q3YfsPtf+V2MPdUrM/uv//+/UVl3759nk7YzPZzUbE+O+eccw5Y9nTCZlbiomJ9VhpM0sysMxcV67PO0wl3Xjaz4ctFxfpsypQpBwx97wElzazERcX67KKLLjpg6HtP0mVmJS4q1meepMvMulLNmR8Pl/S4pN9IWi/pqyl+kqTHJG2UdKekQ1P8sLTcltaPK9vXnBT/raQLyuKNKdYm6fpqHYsdqNIkXWZmUN2eyh7g3Ih4PzAJaEzTBN8E3BwRE4CXgStT+yuBlyNiPHBzaoekicClwPuARuAWSTVpRslvA9OAicBlqa1V2ZQpUxgxIntu1pN0mVm5qhWVyLyWFkemVwDnAneneDPZPPUAM9Iyaf15ae75GcCSiNgTEc+RTTd8Znq1RcSzEfE6sCS1tSpramrikEOyn44n6TKzclW9ppJ6FGuAl4AW4P8Cr0TE3tRkM1CakmwM8CJAWr8TqCuPd9qmq7hVmSfpMrOuVHXsr4jYB0ySdDTwM+C9lZql90pP1EU38UoFMSrEkDQLmAVw4okn9pC19YYn6TKzSgbk7q+IeAV4GJgMHC2pVMzGAlvT583ACQBp/Z8BO8rjnbbpKl7p+xdGRENENNTX1+dxSMNeaZIu91LMrFw17/6qTz0UJNUCU4ANwEPAJalZE3BP+rw0LZPWPxjZLUZLgUvT3WEnkU1k9jiwCpiQ7iY7lOxi/tJqHY+ZmfWsmqe/jgea011ahwB3RcS9kp4Glkj6OvAkcFtqfxvwQ0ltZD2USwEiYr2ku4Cngb3AVem0GpKuBlYCNcCiiFhfxeMxM7MeqPS8wXDR0NAQra2tRadhZjakSFodEQ09tfMT9WZmlhsXFTMzy42nEx6CFixYQFtbW6E5bNmyBYAxY4p/NGj8+PGextZskHBRsX7ZvXt30SmY2SDkojIEDYb/lc+ePRuAefPmFZyJmQ0mvqZiZma5cVExM7PcuKiYmVluel1UJL1T0pT0uVbS26uXlpmZDUW9KiqS/oZsjpPvptBY4N+qlZSZmQ1Nve2pXAWcDfweICI2AsdVKykzMxuaeltU9qTZFYH9Q9MPr0HDzMysR70tKr+Q9EWgVtL5wE+An1cvLTMzG4p6W1SuB9qBdcDfAsuAL1UrKTMzG5p6+0R9Ldl8Jd+DbO75FNtVrcTMzGzo6W1P5QGyIlJSC9yffzpmZjaU9baoHB4Rr5UW0ucjuttA0gmSHpK0QdJ6SbNT/CuStkhak17Ty7aZI6lN0m8lXVAWb0yxNknXl8VPkvSYpI2S7kzTCpuZWUF6W1T+IOm00oKk04GehqndC3whIt4LTAaukjQxrbs5Iial17K0z4lkUwi/D2gEbpFUk061fRuYBkwELivbz01pXxOAl4Ere3k8ZmZWBb29pvI54CeStqbl44GPd7dBRGwDtqXPr0raAHQ3+cYMYElE7AGeS3PVn5nWtUXEswCSlgAz0v7OBT6R2jQDXwFu7eUxmZlZznrVU4mIVcDJwGeAzwLvjYjVvf0SSeOADwCPpdDVktZKWiRpVIqNAV4s22xzinUVrwNeiYi9neKVvn+WpFZJre3t7b1N28zM+qjboiLp3PT+34ALgfcAE4ALU6xHko4E/hX4XET8nqwn8W5gEllP5p9KTStsHv2IHxyMWBgRDRHRUF9f35u0zcysH3o6/fUh4EGygtJZAD/tbmNJI8kKyh0R8VOAiNhetv57wL1pcTNwQtnmY4HS6bZK8d8BR0sakXor5e3NzKwA3RaViJgr6RBgeUTc1ZcdSxJwG7AhIr5VFj8+XW8B+EvgqfR5KfAjSd8C3kHWI3qcrEcyQdJJwBayi/mfiIiQ9BBwCbAEaALu6UuOZmaWrx4v1EfEG5KuBvpUVMgGoPwUsE7SmhT7ItndW5PIejqbyJ7QJyLWS7oLeJrszrGrImIfQPr+lUAN2UOY69P+rgOWSPo68CRZETMzs4L09u6vFkl/D9wJ/KEUjIgdXW0QEb+i8nWPZd1scyNwY4X4skrbpTvCzuwcNzOzYvS2qPw1Wc/is53i78o3HTMzG8p6W1QmkhWUc8iKyy+B71QrKTMzG5p6W1SaySbomp+WL0ux/1GNpMzMbGjqbVH5TxHx/rLlhyT9phoJmZnZ0NXbsb+elDS5tCDpLODfq5OSmZkNVb3tqZwFzJT0Qlo+EdggaR0QEfHnVcnOzMyGlN4WlcaqZmFmZm8JvSoqEfF8tRMxM7Ohr7fXVMzMzHrkomJmZrlxUTEzs9y4qJiZWW5cVMzMLDcuKmZmlhsXFTMzy03VioqkEyQ9JGmDpPWSZqf4MZJaJG1M76NSXJLmS2qTtFbSaWX7akrtN0pqKoufLmld2mZ+mm3SzMwKUs2eyl7gCxHxXmAycJWkicD1wAMRMQF4IC0DTCObQngCMAu4FbIiBMwlGyrmTGBuqRClNrPKtvOT/2ZmBapaUYmIbRHxRPr8KrABGAPMIBs2n/R+cfo8A1gcmUeBoyUdD1wAtETEjoh4GWgBGtO6oyLi1xERwOKyfZmZWQEG5JqKpHHAB4DHgNERsQ2ywgMcl5qNAV4s22xzinUX31whbmZmBal6UZF0JPCvwOci4vfdNa0Qi37EK+UwS1KrpNb29vaeUjYzs36qalGRNJKsoNwRET9N4e3p1BXp/aUU3wycULb5WGBrD/GxFeIHiYiFEdEQEQ319fVv7qDMzKxL1bz7S8BtwIaI+FbZqqVA6Q6uJuCesvjMdBfYZGBnOj22EpgqaVS6QD8VWJnWvSppcvqumWX7MjOzAvR2PpX+OBv4FLBO0poU+yLwTeAuSVcCLwAfS+uWAdOBNmAXcAVAROyQ9DVgVWp3Q0TsSJ8/A9wO1ALL08vMzApStaISEb+i8nUPgPMqtA/gqi72tQhYVCHeCpzyJtI0M7Mc+Yl6MzPLjYuKmZnlxkXFzMxy46JiZma5cVExM7PcuKiYmVluXFTMzCw3LipmZpYbFxUzM8uNi4qZmeXGRcXMzHLjomJmZrmp5ijFbzkLFiygra2t6DQGhdLfYfbs2QVnMjiMHz+ea665pug0zArnotIHbW1trHlqA/uOOKboVAp3yOvZJJurn91ecCbFq9m1o+dGZsOEi0of7TviGHafPL3oNGwQqX1mWdEpmA0avqZiZma5qeZ0woskvSTpqbLYVyRtkbQmvaaXrZsjqU3SbyVdUBZvTLE2SdeXxU+S9JikjZLulHRotY7FzMx6p5o9lduBxgrxmyNiUnotA5A0EbgUeF/a5hZJNZJqgG8D04CJwGWpLcBNaV8TgJeBK6t4LGZm1gtVKyoR8QjQ2yuYM4AlEbEnIp4jm6f+zPRqi4hnI+J1YAkwQ5KAc4G70/bNwMW5HoCZmfVZEddUrpa0Np0eG5ViY4AXy9psTrGu4nXAKxGxt1O8IkmzJLVKam1vb8/rOMzMrJOBLiq3Au8GJgHbgH9KcVVoG/2IVxQRCyOiISIa6uvr+5axmZn12oDeUhwR+x9qkPQ94N60uBk4oazpWGBr+lwp/jvgaEkjUm+lvL2ZmRVkQHsqko4vW/xLoHRn2FLgUkmHSToJmAA8DqwCJqQ7vQ4lu5i/NCICeAi4JG3fBNwzEMdgZmZdq1pPRdKPgQ8Dx0raDMwFPixpEtmpqk3A3wJExHpJdwFPA3uBqyJiX9rP1cBKoAZYFBHr01dcByyR9HXgSeC2ah2LmZn1TtWKSkRcViHc5T/8EXEjcGOF+DLgoEeWI+JZsrvDzMxskPAT9WZmlhsXFTMzy42LipmZ5cZFxczMcuOiYmZmuXFRMTOz3LiomJlZblxUzMwsNy4qZmaWGxcVMzPLjYuKmZnlxkXFzMxy46JiZma5cVExM7PcuKiYmVluqlZUJC2S9JKkp8pix0hqkbQxvY9KcUmaL6lN0lpJp5Vt05Tab5TUVBY/XdK6tM18SZXmrTczswFUzZ7K7UBjp9j1wAMRMQF4IC0DTCObQngCMAu4FbIiRDZj5FlkE3LNLRWi1GZW2Xadv8vMzAZYNWd+fETSuE7hGWRTDAM0Aw+TTQs8A1ic5p5/VNLRaT77DwMtEbEDQFIL0CjpYeCoiPh1ii8GLgaWV+t4ALZs2ULNrp3UPnPQRJQ2jNXs6mDLlr1Fp2E2KAz0NZXREbENIL0fl+JjgBfL2m1Ose7imyvEzcysQFXrqfRRpesh0Y945Z1Ls8hOlXHiiSf2Jz8AxowZw//bM4LdJ0/v9z7sraf2mWWMGTO66DTMBoWB7qlsT6e1SO8vpfhm4ISydmOBrT3Ex1aIVxQRCyOiISIa6uvr3/RBmJlZZQNdVJYCpTu4moB7yuIz011gk4Gd6fTYSmCqpFHpAv1UYGVa96qkyemur5ll+zIzs4JU7fSXpB+TXWg/VtJmsru4vgncJelK4AXgY6n5MmA60AbsAq4AiIgdkr4GrErtbihdtAc+Q3aHWS3ZBfqqXqQ3M7OeVfPur8u6WHVehbYBXNXFfhYBiyrEW4FT3kyOZmaWLz9Rb2ZmuXFRMTOz3LiomJlZblxUzMwsNy4qZmaWm8HyRP2QUbNrh8f+Ag75j98D8MbhRxWcSfFqdu0A/ES9Gbio9Mn48eOLTmHQaGt7FYDx7/I/pjDavw2zxEWlD6655pqiUxg0Zs+eDcC8efMKzsTMBhNfUzEzs9y4qJiZWW5cVMzMLDcuKmZmlhsXFTMzy42LipmZ5cZFxczMcuOiYmZmuSmkqEjaJGmdpDWSWlPsGEktkjam91EpLknzJbVJWivptLL9NKX2GyU1dfV9ZmY2MIrsqXwkIiZFRENavh54ICImAA+kZYBpwIT0mgXcClkRIpui+CzgTGBuqRCZmVkxBtMwLTPI5rQHaAYeBq5L8cVpyuFHJR0t6fjUtqU0Z72kFqAR+PHApj3wFixYQFtbW6E5lL6/NFxLkcaPH+8hdMwGiaJ6KgHcJ2m1pFkpNjoitgGk9+NSfAzwYtm2m1Osq/hBJM2S1Cqptb29PcfDGL5qa2upra0tOg0zG2SK6qmcHRFbJR0HtEh6ppu2qhCLbuIHByMWAgsBGhoaKrYZSvy/cjMbrArpqUTE1vT+EvAzsmsi29NpLdL7S6n5ZuCEss3HAlu7iZuZWUEGvKhIepukt5c+A1OBp4ClQOkOribgnvR5KTAz3QU2GdiZTo+tBKZKGpUu0E9NMTMzK0gRp79GAz+TVPr+H0XECkmrgLskXQm8AHwstV8GTAfagF3AFQARsUPS14BVqd0NpYv2ZmZWDGU3VQ0fDQ0N0draWnQaZmZDiqTVZY+AdMlP1JuZWW5cVMzMLDcuKmZmlhsXFTMzy82wu1AvqR14vug83iKOBX5XdBJmXfDvM1/vjIj6nhoNu6Ji+ZHU2pu7QcyK4N9nMXz6y8zMcuOiYmZmuXFRsTdjYdEJmHXDv88C+JqKmZnlxj0VMzPLjYuKHUTStZI2SLojh319MY+czGxo8OkvO0iaNG1aRDxXFhsREXv7sa/XIuLIXBM0S5QNd66IeKOf2/frd21dc0/FDiDpO8C7gKWSdkpaKOk+YLGkwyX9QNI6SU9K+kja5nJJP5W0QtJGSf8rxb8J1Epak0evxwxA0rjUk74FeAL4lKRfS3pC0k8kHZnafVnSKklPpd+xUvxhSd+Q9AtgdoGH8pbknoodRNImoAG4GrgQOCcidkv6AnBKRFwh6WTgPuA9wKXAl4EPAHuA36ZtXnRPxfImaRzwLPBfyOZZ+ilZz/oPkq4DDouIGyQdU5pjSdIPgbsi4ueSHgaejojPFnIAb3HuqVhPlkbE7vT5HOCHABHxDNlwN+9J6x6IiJ0R8R/A08A7BzxTG06ej4hHgcnARODfJa0hmzW29Nv7iKTHJK0DzgXeV7b9nQOa7TBSxMyPNrT8oeyzumm3p+zzPvzbsuoq/S4FtETEZeUrJR0O3AI0pB7zV4DDK2xvOXNPxfriEeCTAJLeA5xIdqqrO3+UNLLaidmw9ShwtqTxAJKOSL/NUgH5XbrGcklRCQ43LirWF7cANel0wp3A5RGxp4dtFgJrfaHeqiEi2oHLgR9LWktWZE6OiFeA7wHrgH8DVhWW5DDjC/VmZpYb91TMzCw3LipmZpYbFxUzM8uNi4qZmeXGRcXMzHLjomLWT5LeIenunPY1TtJTeeyrbJ+XS3pH2fL3JU3M8zvMOvNTz2b9FBFbGdwP1V0OPAVsBYiI/1loNjYsuKdiw5Kkv5L0eBpB+buSaiS9JulGSb+R9Kik0antu9PyKkk3SHotxff3LroaqTmtm1ppFN1ucutqNOgaSf87xddKuibFDxqNV9IlZIOC3pGOsTaNztuQtrks7ecpSTeVfXfFv4FZb7mo2LAj6b3Ax4GzI2IS2VhlnwTeBjwaEe8nG5Lmb9Im84B5EXEG6X/9XZiU9nsq8HFJJ0g6FvgSMCUiTgNagb/rIcWrACLiVOAyoDmNZTULOAn4QET8OVAapeBfIuKMiDgFqAU+GhF3p+/6ZERMKhsUlHRK7CayQRYnAWdIujit7upvYNYrLio2HJ0HnA6sSiPbnkc2h8zrwL2pzWpgXPr8n4GfpM8/6ma/lUZq7m4U3a50NRr0FOA7pUmlSsO60/1ovJWcATwcEe1pX3cA/zWt6+pvYNYrvqZiw5GA5oiYc0BQ+vv407hF/RlpudJIzV2NonsW8N20+GVgbaf8usr7gHGVejEab1f76cof3+TfwIY591RsOHoAuETScQCSjpHUXe/hUeC/p8+X9vG7Ko6iGxGPpdNSkyJiaadtuhoN+j7g05JGlPKm+9F4XwXeXiGnx4APSTpWUg3ZKbZf9PG4zCpyUbFhJyKeJrvOcV8a2bYFOL6bTT4H/J2kx1O7nX34roqj6PawWVejQX8feIFs1OffAJ/oYTTe24HvlC7Ul+W0DZgDPAT8BngiIu7p7TGZdcejFJv1QNIRwO6ICEmXApdFxIyi8zIbjHy+1KxnpwP/IknAK8BfF5yP2aDlnoqZmeXG11TMzCw3LipmZpYbFxUzM8uNi4qZmeXGRcXMzHLjomJmZrn5/5wcL3qqPhIXAAAAAElFTkSuQmCC\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "sns.boxplot(x=\"engine-location\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Here we see that the distribution of price between these two engine-location categories, front and rear, are distinct enough to take engine-location as a potential good predictor of price.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's examine \"drive-wheels\" and \"price\"." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 25, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.axes._subplots.AxesSubplot at 0x7f12714633c8>" | |
| ] | |
| }, | |
| "execution_count": 25, | |
| "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": [ | |
| "# drive-wheels\n", | |
| "sns.boxplot(x=\"drive-wheels\", y=\"price\", data=df)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Here we see that the distribution of price between the different drive-wheels categories differs; as such drive-wheels could potentially be a predictor of price.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 id=\"discriptive_statistics\">3. Descriptive Statistical Analysis</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Let's first take a look at the variables by utilizing a description method.</p>\n", | |
| "\n", | |
| "<p>The <b>describe</b> function automatically computes basic statistics for all continuous variables. Any NaN values are automatically skipped in these statistics.</p>\n", | |
| "\n", | |
| "This will show:\n", | |
| "<ul>\n", | |
| " <li>the count of that variable</li>\n", | |
| " <li>the mean</li>\n", | |
| " <li>the standard deviation (std)</li> \n", | |
| " <li>the minimum value</li>\n", | |
| " <li>the IQR (Interquartile Range: 25%, 50% and 75%)</li>\n", | |
| " <li>the maximum value</li>\n", | |
| "<ul>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " We can apply the method \"describe\" as follows:" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 26, | |
| "metadata": { | |
| "collapsed": 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>symboling</th>\n", | |
| " <th>normalized-losses</th>\n", | |
| " <th>wheel-base</th>\n", | |
| " <th>length</th>\n", | |
| " <th>width</th>\n", | |
| " <th>height</th>\n", | |
| " <th>curb-weight</th>\n", | |
| " <th>engine-size</th>\n", | |
| " <th>bore</th>\n", | |
| " <th>stroke</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>diesel</th>\n", | |
| " <th>gas</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>count</th>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.00000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>197.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " <td>201.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>mean</th>\n", | |
| " <td>0.840796</td>\n", | |
| " <td>122.00000</td>\n", | |
| " <td>98.797015</td>\n", | |
| " <td>0.837102</td>\n", | |
| " <td>0.915126</td>\n", | |
| " <td>53.766667</td>\n", | |
| " <td>2555.666667</td>\n", | |
| " <td>126.875622</td>\n", | |
| " <td>3.330692</td>\n", | |
| " <td>3.256904</td>\n", | |
| " <td>10.164279</td>\n", | |
| " <td>103.405534</td>\n", | |
| " <td>5117.665368</td>\n", | |
| " <td>25.179104</td>\n", | |
| " <td>30.686567</td>\n", | |
| " <td>13207.129353</td>\n", | |
| " <td>9.944145</td>\n", | |
| " <td>0.099502</td>\n", | |
| " <td>0.900498</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>std</th>\n", | |
| " <td>1.254802</td>\n", | |
| " <td>31.99625</td>\n", | |
| " <td>6.066366</td>\n", | |
| " <td>0.059213</td>\n", | |
| " <td>0.029187</td>\n", | |
| " <td>2.447822</td>\n", | |
| " <td>517.296727</td>\n", | |
| " <td>41.546834</td>\n", | |
| " <td>0.268072</td>\n", | |
| " <td>0.319256</td>\n", | |
| " <td>4.004965</td>\n", | |
| " <td>37.365700</td>\n", | |
| " <td>478.113805</td>\n", | |
| " <td>6.423220</td>\n", | |
| " <td>6.815150</td>\n", | |
| " <td>7947.066342</td>\n", | |
| " <td>2.534599</td>\n", | |
| " <td>0.300083</td>\n", | |
| " <td>0.300083</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>min</th>\n", | |
| " <td>-2.000000</td>\n", | |
| " <td>65.00000</td>\n", | |
| " <td>86.600000</td>\n", | |
| " <td>0.678039</td>\n", | |
| " <td>0.837500</td>\n", | |
| " <td>47.800000</td>\n", | |
| " <td>1488.000000</td>\n", | |
| " <td>61.000000</td>\n", | |
| " <td>2.540000</td>\n", | |
| " <td>2.070000</td>\n", | |
| " <td>7.000000</td>\n", | |
| " <td>48.000000</td>\n", | |
| " <td>4150.000000</td>\n", | |
| " <td>13.000000</td>\n", | |
| " <td>16.000000</td>\n", | |
| " <td>5118.000000</td>\n", | |
| " <td>4.795918</td>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>0.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>25%</th>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>101.00000</td>\n", | |
| " <td>94.500000</td>\n", | |
| " <td>0.801538</td>\n", | |
| " <td>0.890278</td>\n", | |
| " <td>52.000000</td>\n", | |
| " <td>2169.000000</td>\n", | |
| " <td>98.000000</td>\n", | |
| " <td>3.150000</td>\n", | |
| " <td>3.110000</td>\n", | |
| " <td>8.600000</td>\n", | |
| " <td>70.000000</td>\n", | |
| " <td>4800.000000</td>\n", | |
| " <td>19.000000</td>\n", | |
| " <td>25.000000</td>\n", | |
| " <td>7775.000000</td>\n", | |
| " <td>7.833333</td>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>50%</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>122.00000</td>\n", | |
| " <td>97.000000</td>\n", | |
| " <td>0.832292</td>\n", | |
| " <td>0.909722</td>\n", | |
| " <td>54.100000</td>\n", | |
| " <td>2414.000000</td>\n", | |
| " <td>120.000000</td>\n", | |
| " <td>3.310000</td>\n", | |
| " <td>3.290000</td>\n", | |
| " <td>9.000000</td>\n", | |
| " <td>95.000000</td>\n", | |
| " <td>5125.369458</td>\n", | |
| " <td>24.000000</td>\n", | |
| " <td>30.000000</td>\n", | |
| " <td>10295.000000</td>\n", | |
| " <td>9.791667</td>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>75%</th>\n", | |
| " <td>2.000000</td>\n", | |
| " <td>137.00000</td>\n", | |
| " <td>102.400000</td>\n", | |
| " <td>0.881788</td>\n", | |
| " <td>0.925000</td>\n", | |
| " <td>55.500000</td>\n", | |
| " <td>2926.000000</td>\n", | |
| " <td>141.000000</td>\n", | |
| " <td>3.580000</td>\n", | |
| " <td>3.410000</td>\n", | |
| " <td>9.400000</td>\n", | |
| " <td>116.000000</td>\n", | |
| " <td>5500.000000</td>\n", | |
| " <td>30.000000</td>\n", | |
| " <td>34.000000</td>\n", | |
| " <td>16500.000000</td>\n", | |
| " <td>12.368421</td>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>max</th>\n", | |
| " <td>3.000000</td>\n", | |
| " <td>256.00000</td>\n", | |
| " <td>120.900000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>59.800000</td>\n", | |
| " <td>4066.000000</td>\n", | |
| " <td>326.000000</td>\n", | |
| " <td>3.940000</td>\n", | |
| " <td>4.170000</td>\n", | |
| " <td>23.000000</td>\n", | |
| " <td>262.000000</td>\n", | |
| " <td>6600.000000</td>\n", | |
| " <td>49.000000</td>\n", | |
| " <td>54.000000</td>\n", | |
| " <td>45400.000000</td>\n", | |
| " <td>18.076923</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " symboling normalized-losses wheel-base length width \\\n", | |
| "count 201.000000 201.00000 201.000000 201.000000 201.000000 \n", | |
| "mean 0.840796 122.00000 98.797015 0.837102 0.915126 \n", | |
| "std 1.254802 31.99625 6.066366 0.059213 0.029187 \n", | |
| "min -2.000000 65.00000 86.600000 0.678039 0.837500 \n", | |
| "25% 0.000000 101.00000 94.500000 0.801538 0.890278 \n", | |
| "50% 1.000000 122.00000 97.000000 0.832292 0.909722 \n", | |
| "75% 2.000000 137.00000 102.400000 0.881788 0.925000 \n", | |
| "max 3.000000 256.00000 120.900000 1.000000 1.000000 \n", | |
| "\n", | |
| " height curb-weight engine-size bore stroke \\\n", | |
| "count 201.000000 201.000000 201.000000 201.000000 197.000000 \n", | |
| "mean 53.766667 2555.666667 126.875622 3.330692 3.256904 \n", | |
| "std 2.447822 517.296727 41.546834 0.268072 0.319256 \n", | |
| "min 47.800000 1488.000000 61.000000 2.540000 2.070000 \n", | |
| "25% 52.000000 2169.000000 98.000000 3.150000 3.110000 \n", | |
| "50% 54.100000 2414.000000 120.000000 3.310000 3.290000 \n", | |
| "75% 55.500000 2926.000000 141.000000 3.580000 3.410000 \n", | |
| "max 59.800000 4066.000000 326.000000 3.940000 4.170000 \n", | |
| "\n", | |
| " compression-ratio horsepower peak-rpm city-mpg highway-mpg \\\n", | |
| "count 201.000000 201.000000 201.000000 201.000000 201.000000 \n", | |
| "mean 10.164279 103.405534 5117.665368 25.179104 30.686567 \n", | |
| "std 4.004965 37.365700 478.113805 6.423220 6.815150 \n", | |
| "min 7.000000 48.000000 4150.000000 13.000000 16.000000 \n", | |
| "25% 8.600000 70.000000 4800.000000 19.000000 25.000000 \n", | |
| "50% 9.000000 95.000000 5125.369458 24.000000 30.000000 \n", | |
| "75% 9.400000 116.000000 5500.000000 30.000000 34.000000 \n", | |
| "max 23.000000 262.000000 6600.000000 49.000000 54.000000 \n", | |
| "\n", | |
| " price city-L/100km diesel gas \n", | |
| "count 201.000000 201.000000 201.000000 201.000000 \n", | |
| "mean 13207.129353 9.944145 0.099502 0.900498 \n", | |
| "std 7947.066342 2.534599 0.300083 0.300083 \n", | |
| "min 5118.000000 4.795918 0.000000 0.000000 \n", | |
| "25% 7775.000000 7.833333 0.000000 1.000000 \n", | |
| "50% 10295.000000 9.791667 0.000000 1.000000 \n", | |
| "75% 16500.000000 12.368421 0.000000 1.000000 \n", | |
| "max 45400.000000 18.076923 1.000000 1.000000 " | |
| ] | |
| }, | |
| "execution_count": 26, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df.describe()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " The default setting of \"describe\" skips variables of type object. We can apply the method \"describe\" on the variables of type 'object' as follows:" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 28, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "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>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>engine-type</th>\n", | |
| " <th>num-of-cylinders</th>\n", | |
| " <th>fuel-system</th>\n", | |
| " <th>horsepower-binned</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>count</th>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>201</td>\n", | |
| " <td>200</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>unique</th>\n", | |
| " <td>22</td>\n", | |
| " <td>2</td>\n", | |
| " <td>2</td>\n", | |
| " <td>5</td>\n", | |
| " <td>3</td>\n", | |
| " <td>2</td>\n", | |
| " <td>6</td>\n", | |
| " <td>7</td>\n", | |
| " <td>8</td>\n", | |
| " <td>3</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>top</th>\n", | |
| " <td>toyota</td>\n", | |
| " <td>std</td>\n", | |
| " <td>four</td>\n", | |
| " <td>sedan</td>\n", | |
| " <td>fwd</td>\n", | |
| " <td>front</td>\n", | |
| " <td>ohc</td>\n", | |
| " <td>four</td>\n", | |
| " <td>mpfi</td>\n", | |
| " <td>Low</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>freq</th>\n", | |
| " <td>32</td>\n", | |
| " <td>165</td>\n", | |
| " <td>115</td>\n", | |
| " <td>94</td>\n", | |
| " <td>118</td>\n", | |
| " <td>198</td>\n", | |
| " <td>145</td>\n", | |
| " <td>157</td>\n", | |
| " <td>92</td>\n", | |
| " <td>115</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " make aspiration num-of-doors body-style drive-wheels \\\n", | |
| "count 201 201 201 201 201 \n", | |
| "unique 22 2 2 5 3 \n", | |
| "top toyota std four sedan fwd \n", | |
| "freq 32 165 115 94 118 \n", | |
| "\n", | |
| " engine-location engine-type num-of-cylinders fuel-system \\\n", | |
| "count 201 201 201 201 \n", | |
| "unique 2 6 7 8 \n", | |
| "top front ohc four mpfi \n", | |
| "freq 198 145 157 92 \n", | |
| "\n", | |
| " horsepower-binned \n", | |
| "count 200 \n", | |
| "unique 3 \n", | |
| "top Low \n", | |
| "freq 115 " | |
| ] | |
| }, | |
| "execution_count": 28, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df.describe(include=['object'])" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Value Counts</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Value-counts is a good way of understanding how many units of each characteristic/variable we have. We can apply the \"value_counts\" method on the column 'drive-wheels'. Don’t forget the method \"value_counts\" only works on Pandas series, not Pandas Dataframes. As a result, we only include one bracket \"df['drive-wheels']\" not two brackets \"df[['drive-wheels']]\".</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 29, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "fwd 118\n", | |
| "rwd 75\n", | |
| "4wd 8\n", | |
| "Name: drive-wheels, dtype: int64" | |
| ] | |
| }, | |
| "execution_count": 29, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df['drive-wheels'].value_counts()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "We can convert the series to a Dataframe as follows :" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 30, | |
| "metadata": { | |
| "collapsed": 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>drive-wheels</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>fwd</th>\n", | |
| " <td>118</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rwd</th>\n", | |
| " <td>75</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4wd</th>\n", | |
| " <td>8</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " drive-wheels\n", | |
| "fwd 118\n", | |
| "rwd 75\n", | |
| "4wd 8" | |
| ] | |
| }, | |
| "execution_count": 30, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df['drive-wheels'].value_counts().to_frame()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's repeat the above steps but save the results to the dataframe \"drive_wheels_counts\" and rename the column 'drive-wheels' to 'value_counts'." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 31, | |
| "metadata": { | |
| "collapsed": 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>value_counts</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>fwd</th>\n", | |
| " <td>118</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rwd</th>\n", | |
| " <td>75</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4wd</th>\n", | |
| " <td>8</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " value_counts\n", | |
| "fwd 118\n", | |
| "rwd 75\n", | |
| "4wd 8" | |
| ] | |
| }, | |
| "execution_count": 31, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "drive_wheels_counts = df['drive-wheels'].value_counts().to_frame()\n", | |
| "drive_wheels_counts.rename(columns={'drive-wheels': 'value_counts'}, inplace=True)\n", | |
| "drive_wheels_counts" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Now let's rename the index to 'drive-wheels':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 32, | |
| "metadata": { | |
| "collapsed": 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>value_counts</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>drive-wheels</th>\n", | |
| " <th></th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>fwd</th>\n", | |
| " <td>118</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rwd</th>\n", | |
| " <td>75</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4wd</th>\n", | |
| " <td>8</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " value_counts\n", | |
| "drive-wheels \n", | |
| "fwd 118\n", | |
| "rwd 75\n", | |
| "4wd 8" | |
| ] | |
| }, | |
| "execution_count": 32, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "drive_wheels_counts.index.name = 'drive-wheels'\n", | |
| "drive_wheels_counts" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "We can repeat the above process for the variable 'engine-location'." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 33, | |
| "metadata": { | |
| "collapsed": 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>value_counts</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>engine-location</th>\n", | |
| " <th></th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>front</th>\n", | |
| " <td>198</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rear</th>\n", | |
| " <td>3</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " value_counts\n", | |
| "engine-location \n", | |
| "front 198\n", | |
| "rear 3" | |
| ] | |
| }, | |
| "execution_count": 33, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# engine-location as variable\n", | |
| "engine_loc_counts = df['engine-location'].value_counts().to_frame()\n", | |
| "engine_loc_counts.rename(columns={'engine-location': 'value_counts'}, inplace=True)\n", | |
| "engine_loc_counts.index.name = 'engine-location'\n", | |
| "engine_loc_counts.head(10)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Examining the value counts of the engine location would not be a good predictor variable for the price. This is because we only have three cars with a rear engine and 198 with an engine in the front, this result is skewed. Thus, we are not able to draw any conclusions about the engine location.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 id=\"basic_grouping\">4. Basics of Grouping</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>The \"groupby\" method groups data by different categories. The data is grouped based on one or several variables and analysis is performed on the individual groups.</p>\n", | |
| "\n", | |
| "<p>For example, let's group by the variable \"drive-wheels\". We see that there are 3 different categories of drive wheels.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 34, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "array(['rwd', 'fwd', '4wd'], dtype=object)" | |
| ] | |
| }, | |
| "execution_count": 34, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df['drive-wheels'].unique()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>If we want to know, on average, which type of drive wheel is most valuable, we can group \"drive-wheels\" and then average them.</p>\n", | |
| "\n", | |
| "<p>We can select the columns 'drive-wheels', 'body-style' and 'price', then assign it to the variable \"df_group_one\".</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 35, | |
| "metadata": { | |
| "collapsed": true | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "df_group_one = df[['drive-wheels','body-style','price']]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "We can then calculate the average price for each of the different categories of data." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 36, | |
| "metadata": { | |
| "collapsed": 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>drive-wheels</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>0</th>\n", | |
| " <td>4wd</td>\n", | |
| " <td>10241.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>1</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>9244.779661</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>2</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>19757.613333</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " drive-wheels price\n", | |
| "0 4wd 10241.000000\n", | |
| "1 fwd 9244.779661\n", | |
| "2 rwd 19757.613333" | |
| ] | |
| }, | |
| "execution_count": 36, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# grouping results\n", | |
| "df_group_one = df_group_one.groupby(['drive-wheels'],as_index=False).mean()\n", | |
| "df_group_one" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>From our data, it seems rear-wheel drive vehicles are, on average, the most expensive, while 4-wheel and front-wheel are approximately the same in price.</p>\n", | |
| "\n", | |
| "<p>You can also group with multiple variables. For example, let's group by both 'drive-wheels' and 'body-style'. This groups the dataframe by the unique combinations 'drive-wheels' and 'body-style'. We can store the results in the variable 'grouped_test1'.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 37, | |
| "metadata": { | |
| "collapsed": 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>drive-wheels</th>\n", | |
| " <th>body-style</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>0</th>\n", | |
| " <td>4wd</td>\n", | |
| " <td>hatchback</td>\n", | |
| " <td>7603.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>1</th>\n", | |
| " <td>4wd</td>\n", | |
| " <td>sedan</td>\n", | |
| " <td>12647.333333</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>2</th>\n", | |
| " <td>4wd</td>\n", | |
| " <td>wagon</td>\n", | |
| " <td>9095.750000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>3</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>convertible</td>\n", | |
| " <td>11595.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>hardtop</td>\n", | |
| " <td>8249.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>5</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>hatchback</td>\n", | |
| " <td>8396.387755</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>6</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>sedan</td>\n", | |
| " <td>9811.800000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>7</th>\n", | |
| " <td>fwd</td>\n", | |
| " <td>wagon</td>\n", | |
| " <td>9997.333333</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>8</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>convertible</td>\n", | |
| " <td>23949.600000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>9</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>hardtop</td>\n", | |
| " <td>24202.714286</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>10</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>hatchback</td>\n", | |
| " <td>14337.777778</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>11</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>sedan</td>\n", | |
| " <td>21711.833333</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>12</th>\n", | |
| " <td>rwd</td>\n", | |
| " <td>wagon</td>\n", | |
| " <td>16994.222222</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " drive-wheels body-style price\n", | |
| "0 4wd hatchback 7603.000000\n", | |
| "1 4wd sedan 12647.333333\n", | |
| "2 4wd wagon 9095.750000\n", | |
| "3 fwd convertible 11595.000000\n", | |
| "4 fwd hardtop 8249.000000\n", | |
| "5 fwd hatchback 8396.387755\n", | |
| "6 fwd sedan 9811.800000\n", | |
| "7 fwd wagon 9997.333333\n", | |
| "8 rwd convertible 23949.600000\n", | |
| "9 rwd hardtop 24202.714286\n", | |
| "10 rwd hatchback 14337.777778\n", | |
| "11 rwd sedan 21711.833333\n", | |
| "12 rwd wagon 16994.222222" | |
| ] | |
| }, | |
| "execution_count": 37, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# grouping results\n", | |
| "df_gptest = df[['drive-wheels','body-style','price']]\n", | |
| "grouped_test1 = df_gptest.groupby(['drive-wheels','body-style'],as_index=False).mean()\n", | |
| "grouped_test1" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>This grouped data is much easier to visualize when it is made into a pivot table. A pivot table is like an Excel spreadsheet, with one variable along the column and another along the row. We can convert the dataframe to a pivot table using the method \"pivot \" to create a pivot table from the groups.</p>\n", | |
| "\n", | |
| "<p>In this case, we will leave the drive-wheel variable as the rows of the table, and pivot body-style to become the columns of the table:</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 38, | |
| "metadata": { | |
| "collapsed": 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 tr th {\n", | |
| " text-align: left;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe thead tr:last-of-type th {\n", | |
| " text-align: right;\n", | |
| " }\n", | |
| "</style>\n", | |
| "<table border=\"1\" class=\"dataframe\">\n", | |
| " <thead>\n", | |
| " <tr>\n", | |
| " <th></th>\n", | |
| " <th colspan=\"5\" halign=\"left\">price</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>body-style</th>\n", | |
| " <th>convertible</th>\n", | |
| " <th>hardtop</th>\n", | |
| " <th>hatchback</th>\n", | |
| " <th>sedan</th>\n", | |
| " <th>wagon</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>drive-wheels</th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>4wd</th>\n", | |
| " <td>NaN</td>\n", | |
| " <td>NaN</td>\n", | |
| " <td>7603.000000</td>\n", | |
| " <td>12647.333333</td>\n", | |
| " <td>9095.750000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>fwd</th>\n", | |
| " <td>11595.0</td>\n", | |
| " <td>8249.000000</td>\n", | |
| " <td>8396.387755</td>\n", | |
| " <td>9811.800000</td>\n", | |
| " <td>9997.333333</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rwd</th>\n", | |
| " <td>23949.6</td>\n", | |
| " <td>24202.714286</td>\n", | |
| " <td>14337.777778</td>\n", | |
| " <td>21711.833333</td>\n", | |
| " <td>16994.222222</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " price \\\n", | |
| "body-style convertible hardtop hatchback sedan \n", | |
| "drive-wheels \n", | |
| "4wd NaN NaN 7603.000000 12647.333333 \n", | |
| "fwd 11595.0 8249.000000 8396.387755 9811.800000 \n", | |
| "rwd 23949.6 24202.714286 14337.777778 21711.833333 \n", | |
| "\n", | |
| " \n", | |
| "body-style wagon \n", | |
| "drive-wheels \n", | |
| "4wd 9095.750000 \n", | |
| "fwd 9997.333333 \n", | |
| "rwd 16994.222222 " | |
| ] | |
| }, | |
| "execution_count": 38, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "grouped_pivot = grouped_test1.pivot(index='drive-wheels',columns='body-style')\n", | |
| "grouped_pivot" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Often, we won't have data for some of the pivot cells. We can fill these missing cells with the value 0, but any other value could potentially be used as well. It should be mentioned that missing data is quite a complex subject and is an entire course on its own.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 39, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div>\n", | |
| "<style scoped>\n", | |
| " .dataframe tbody tr th:only-of-type {\n", | |
| " vertical-align: middle;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe tbody tr th {\n", | |
| " vertical-align: top;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe thead tr th {\n", | |
| " text-align: left;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe thead tr:last-of-type th {\n", | |
| " text-align: right;\n", | |
| " }\n", | |
| "</style>\n", | |
| "<table border=\"1\" class=\"dataframe\">\n", | |
| " <thead>\n", | |
| " <tr>\n", | |
| " <th></th>\n", | |
| " <th colspan=\"5\" halign=\"left\">price</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>body-style</th>\n", | |
| " <th>convertible</th>\n", | |
| " <th>hardtop</th>\n", | |
| " <th>hatchback</th>\n", | |
| " <th>sedan</th>\n", | |
| " <th>wagon</th>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>drive-wheels</th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " <th></th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>4wd</th>\n", | |
| " <td>0.0</td>\n", | |
| " <td>0.000000</td>\n", | |
| " <td>7603.000000</td>\n", | |
| " <td>12647.333333</td>\n", | |
| " <td>9095.750000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>fwd</th>\n", | |
| " <td>11595.0</td>\n", | |
| " <td>8249.000000</td>\n", | |
| " <td>8396.387755</td>\n", | |
| " <td>9811.800000</td>\n", | |
| " <td>9997.333333</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>rwd</th>\n", | |
| " <td>23949.6</td>\n", | |
| " <td>24202.714286</td>\n", | |
| " <td>14337.777778</td>\n", | |
| " <td>21711.833333</td>\n", | |
| " <td>16994.222222</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " price \\\n", | |
| "body-style convertible hardtop hatchback sedan \n", | |
| "drive-wheels \n", | |
| "4wd 0.0 0.000000 7603.000000 12647.333333 \n", | |
| "fwd 11595.0 8249.000000 8396.387755 9811.800000 \n", | |
| "rwd 23949.6 24202.714286 14337.777778 21711.833333 \n", | |
| "\n", | |
| " \n", | |
| "body-style wagon \n", | |
| "drive-wheels \n", | |
| "4wd 9095.750000 \n", | |
| "fwd 9997.333333 \n", | |
| "rwd 16994.222222 " | |
| ] | |
| }, | |
| "execution_count": 39, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "grouped_pivot = grouped_pivot.fillna(0) #fill missing values with 0\n", | |
| "grouped_pivot" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n", | |
| "<h1>Question 4:</h1>\n", | |
| "\n", | |
| "<p>Use the \"groupby\" function to find the average \"price\" of each car based on \"body-style\" ? </p>\n", | |
| "</div>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 41, | |
| "metadata": { | |
| "collapsed": 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>body-style</th>\n", | |
| " <th>price</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>0</th>\n", | |
| " <td>convertible</td>\n", | |
| " <td>21890.500000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>1</th>\n", | |
| " <td>hardtop</td>\n", | |
| " <td>22208.500000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>2</th>\n", | |
| " <td>hatchback</td>\n", | |
| " <td>9957.441176</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>3</th>\n", | |
| " <td>sedan</td>\n", | |
| " <td>14459.755319</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4</th>\n", | |
| " <td>wagon</td>\n", | |
| " <td>12371.960000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " body-style price\n", | |
| "0 convertible 21890.500000\n", | |
| "1 hardtop 22208.500000\n", | |
| "2 hatchback 9957.441176\n", | |
| "3 sedan 14459.755319\n", | |
| "4 wagon 12371.960000" | |
| ] | |
| }, | |
| "execution_count": 41, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# Write your code below and press Shift+Enter to execute \n", | |
| "df_gptest = df[['body-style','price']]\n", | |
| "grouped_test2 = df_gptest.groupby(['body-style'],as_index=False).mean()\n", | |
| "grouped_test2" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Double-click <b>here</b> for the solution.\n", | |
| "\n", | |
| "<!-- The answer is below:\n", | |
| "\n", | |
| "# grouping results\n", | |
| "df_gptest2 = df[['body-style','price']]\n", | |
| "grouped_test_bodystyle = df_gptest2.groupby(['body-style'],as_index= False).mean()\n", | |
| "grouped_test_bodystyle\n", | |
| "\n", | |
| "-->" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "If you did not import \"pyplot\" let's do it again. " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 42, | |
| "metadata": { | |
| "collapsed": true | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "import matplotlib.pyplot as plt\n", | |
| "%matplotlib inline " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h4>Variables: Drive Wheels and Body Style vs Price</h4>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's use a heat map to visualize the relationship between Body Style vs Price." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 43, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 2 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "#use the grouped results\n", | |
| "plt.pcolor(grouped_pivot, cmap='RdBu')\n", | |
| "plt.colorbar()\n", | |
| "plt.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>The heatmap plots the target variable (price) proportional to colour with respect to the variables 'drive-wheel' and 'body-style' in the vertical and horizontal axis respectively. This allows us to visualize how the price is related to 'drive-wheel' and 'body-style'.</p>\n", | |
| "\n", | |
| "<p>The default labels convey no useful information to us. Let's change that:</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 44, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 2 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "fig, ax = plt.subplots()\n", | |
| "im = ax.pcolor(grouped_pivot, cmap='RdBu')\n", | |
| "\n", | |
| "#label names\n", | |
| "row_labels = grouped_pivot.columns.levels[1]\n", | |
| "col_labels = grouped_pivot.index\n", | |
| "\n", | |
| "#move ticks and labels to the center\n", | |
| "ax.set_xticks(np.arange(grouped_pivot.shape[1]) + 0.5, minor=False)\n", | |
| "ax.set_yticks(np.arange(grouped_pivot.shape[0]) + 0.5, minor=False)\n", | |
| "\n", | |
| "#insert labels\n", | |
| "ax.set_xticklabels(row_labels, minor=False)\n", | |
| "ax.set_yticklabels(col_labels, minor=False)\n", | |
| "\n", | |
| "#rotate label if too long\n", | |
| "plt.xticks(rotation=90)\n", | |
| "\n", | |
| "fig.colorbar(im)\n", | |
| "plt.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Visualization is very important in data science, and Python visualization packages provide great freedom. We will go more in-depth in a separate Python Visualizations course.</p>\n", | |
| "\n", | |
| "<p>The main question we want to answer in this module, is \"What are the main characteristics which have the most impact on the car price?\".</p>\n", | |
| "\n", | |
| "<p>To get a better measure of the important characteristics, we look at the correlation of these variables with the car price, in other words: how is the car price dependent on this variable?</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 id=\"correlation_causation\">5. Correlation and Causation</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p><b>Correlation</b>: a measure of the extent of interdependence between variables.</p>\n", | |
| "\n", | |
| "<p><b>Causation</b>: the relationship between cause and effect between two variables.</p>\n", | |
| "\n", | |
| "<p>It is important to know the difference between these two and that correlation does not imply causation. Determining correlation is much simpler the determining causation as causation may require independent experimentation.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p3>Pearson Correlation</p>\n", | |
| "<p>The Pearson Correlation measures the linear dependence between two variables X and Y.</p>\n", | |
| "<p>The resulting coefficient is a value between -1 and 1 inclusive, where:</p>\n", | |
| "<ul>\n", | |
| " <li><b>1</b>: Total positive linear correlation.</li>\n", | |
| " <li><b>0</b>: No linear correlation, the two variables most likely do not affect each other.</li>\n", | |
| " <li><b>-1</b>: Total negative linear correlation.</li>\n", | |
| "</ul>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Pearson Correlation is the default method of the function \"corr\". Like before we can calculate the Pearson Correlation of the of the 'int64' or 'float64' variables.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 45, | |
| "metadata": { | |
| "collapsed": 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>symboling</th>\n", | |
| " <th>normalized-losses</th>\n", | |
| " <th>wheel-base</th>\n", | |
| " <th>length</th>\n", | |
| " <th>width</th>\n", | |
| " <th>height</th>\n", | |
| " <th>curb-weight</th>\n", | |
| " <th>engine-size</th>\n", | |
| " <th>bore</th>\n", | |
| " <th>stroke</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>diesel</th>\n", | |
| " <th>gas</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>symboling</th>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.466264</td>\n", | |
| " <td>-0.535987</td>\n", | |
| " <td>-0.365404</td>\n", | |
| " <td>-0.242423</td>\n", | |
| " <td>-0.550160</td>\n", | |
| " <td>-0.233118</td>\n", | |
| " <td>-0.110581</td>\n", | |
| " <td>-0.140019</td>\n", | |
| " <td>-0.008245</td>\n", | |
| " <td>-0.182196</td>\n", | |
| " <td>0.075819</td>\n", | |
| " <td>0.279740</td>\n", | |
| " <td>-0.035527</td>\n", | |
| " <td>0.036233</td>\n", | |
| " <td>-0.082391</td>\n", | |
| " <td>0.066171</td>\n", | |
| " <td>-0.196735</td>\n", | |
| " <td>0.196735</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>normalized-losses</th>\n", | |
| " <td>0.466264</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.056661</td>\n", | |
| " <td>0.019424</td>\n", | |
| " <td>0.086802</td>\n", | |
| " <td>-0.373737</td>\n", | |
| " <td>0.099404</td>\n", | |
| " <td>0.112360</td>\n", | |
| " <td>-0.029862</td>\n", | |
| " <td>0.055563</td>\n", | |
| " <td>-0.114713</td>\n", | |
| " <td>0.217299</td>\n", | |
| " <td>0.239543</td>\n", | |
| " <td>-0.225016</td>\n", | |
| " <td>-0.181877</td>\n", | |
| " <td>0.133999</td>\n", | |
| " <td>0.238567</td>\n", | |
| " <td>-0.101546</td>\n", | |
| " <td>0.101546</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>wheel-base</th>\n", | |
| " <td>-0.535987</td>\n", | |
| " <td>-0.056661</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.876024</td>\n", | |
| " <td>0.814507</td>\n", | |
| " <td>0.590742</td>\n", | |
| " <td>0.782097</td>\n", | |
| " <td>0.572027</td>\n", | |
| " <td>0.493244</td>\n", | |
| " <td>0.158502</td>\n", | |
| " <td>0.250313</td>\n", | |
| " <td>0.371147</td>\n", | |
| " <td>-0.360305</td>\n", | |
| " <td>-0.470606</td>\n", | |
| " <td>-0.543304</td>\n", | |
| " <td>0.584642</td>\n", | |
| " <td>0.476153</td>\n", | |
| " <td>0.307237</td>\n", | |
| " <td>-0.307237</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>length</th>\n", | |
| " <td>-0.365404</td>\n", | |
| " <td>0.019424</td>\n", | |
| " <td>0.876024</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.857170</td>\n", | |
| " <td>0.492063</td>\n", | |
| " <td>0.880665</td>\n", | |
| " <td>0.685025</td>\n", | |
| " <td>0.608971</td>\n", | |
| " <td>0.124139</td>\n", | |
| " <td>0.159733</td>\n", | |
| " <td>0.579821</td>\n", | |
| " <td>-0.285970</td>\n", | |
| " <td>-0.665192</td>\n", | |
| " <td>-0.698142</td>\n", | |
| " <td>0.690628</td>\n", | |
| " <td>0.657373</td>\n", | |
| " <td>0.211187</td>\n", | |
| " <td>-0.211187</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>width</th>\n", | |
| " <td>-0.242423</td>\n", | |
| " <td>0.086802</td>\n", | |
| " <td>0.814507</td>\n", | |
| " <td>0.857170</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.306002</td>\n", | |
| " <td>0.866201</td>\n", | |
| " <td>0.729436</td>\n", | |
| " <td>0.544885</td>\n", | |
| " <td>0.188829</td>\n", | |
| " <td>0.189867</td>\n", | |
| " <td>0.615077</td>\n", | |
| " <td>-0.245800</td>\n", | |
| " <td>-0.633531</td>\n", | |
| " <td>-0.680635</td>\n", | |
| " <td>0.751265</td>\n", | |
| " <td>0.673363</td>\n", | |
| " <td>0.244356</td>\n", | |
| " <td>-0.244356</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>height</th>\n", | |
| " <td>-0.550160</td>\n", | |
| " <td>-0.373737</td>\n", | |
| " <td>0.590742</td>\n", | |
| " <td>0.492063</td>\n", | |
| " <td>0.306002</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.307581</td>\n", | |
| " <td>0.074694</td>\n", | |
| " <td>0.180449</td>\n", | |
| " <td>-0.062704</td>\n", | |
| " <td>0.259737</td>\n", | |
| " <td>-0.087027</td>\n", | |
| " <td>-0.309974</td>\n", | |
| " <td>-0.049800</td>\n", | |
| " <td>-0.104812</td>\n", | |
| " <td>0.135486</td>\n", | |
| " <td>0.003811</td>\n", | |
| " <td>0.281578</td>\n", | |
| " <td>-0.281578</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>curb-weight</th>\n", | |
| " <td>-0.233118</td>\n", | |
| " <td>0.099404</td>\n", | |
| " <td>0.782097</td>\n", | |
| " <td>0.880665</td>\n", | |
| " <td>0.866201</td>\n", | |
| " <td>0.307581</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.849072</td>\n", | |
| " <td>0.644060</td>\n", | |
| " <td>0.167562</td>\n", | |
| " <td>0.156433</td>\n", | |
| " <td>0.757976</td>\n", | |
| " <td>-0.279361</td>\n", | |
| " <td>-0.749543</td>\n", | |
| " <td>-0.794889</td>\n", | |
| " <td>0.834415</td>\n", | |
| " <td>0.785353</td>\n", | |
| " <td>0.221046</td>\n", | |
| " <td>-0.221046</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>engine-size</th>\n", | |
| " <td>-0.110581</td>\n", | |
| " <td>0.112360</td>\n", | |
| " <td>0.572027</td>\n", | |
| " <td>0.685025</td>\n", | |
| " <td>0.729436</td>\n", | |
| " <td>0.074694</td>\n", | |
| " <td>0.849072</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.572609</td>\n", | |
| " <td>0.209523</td>\n", | |
| " <td>0.028889</td>\n", | |
| " <td>0.822676</td>\n", | |
| " <td>-0.256733</td>\n", | |
| " <td>-0.650546</td>\n", | |
| " <td>-0.679571</td>\n", | |
| " <td>0.872335</td>\n", | |
| " <td>0.745059</td>\n", | |
| " <td>0.070779</td>\n", | |
| " <td>-0.070779</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>bore</th>\n", | |
| " <td>-0.140019</td>\n", | |
| " <td>-0.029862</td>\n", | |
| " <td>0.493244</td>\n", | |
| " <td>0.608971</td>\n", | |
| " <td>0.544885</td>\n", | |
| " <td>0.180449</td>\n", | |
| " <td>0.644060</td>\n", | |
| " <td>0.572609</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.566936</td>\n", | |
| " <td>-0.267392</td>\n", | |
| " <td>-0.582027</td>\n", | |
| " <td>-0.591309</td>\n", | |
| " <td>0.543155</td>\n", | |
| " <td>0.554610</td>\n", | |
| " <td>0.054458</td>\n", | |
| " <td>-0.054458</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>stroke</th>\n", | |
| " <td>-0.008245</td>\n", | |
| " <td>0.055563</td>\n", | |
| " <td>0.158502</td>\n", | |
| " <td>0.124139</td>\n", | |
| " <td>0.188829</td>\n", | |
| " <td>-0.062704</td>\n", | |
| " <td>0.167562</td>\n", | |
| " <td>0.209523</td>\n", | |
| " <td>-0.055390</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>0.098462</td>\n", | |
| " <td>-0.065713</td>\n", | |
| " <td>-0.034696</td>\n", | |
| " <td>-0.035201</td>\n", | |
| " <td>0.082310</td>\n", | |
| " <td>0.037300</td>\n", | |
| " <td>0.241303</td>\n", | |
| " <td>-0.241303</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>compression-ratio</th>\n", | |
| " <td>-0.182196</td>\n", | |
| " <td>-0.114713</td>\n", | |
| " <td>0.250313</td>\n", | |
| " <td>0.159733</td>\n", | |
| " <td>0.189867</td>\n", | |
| " <td>0.259737</td>\n", | |
| " <td>0.156433</td>\n", | |
| " <td>0.028889</td>\n", | |
| " <td>0.001263</td>\n", | |
| " <td>0.187923</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " <td>-0.435780</td>\n", | |
| " <td>0.331425</td>\n", | |
| " <td>0.268465</td>\n", | |
| " <td>0.071107</td>\n", | |
| " <td>-0.299372</td>\n", | |
| " <td>0.985231</td>\n", | |
| " <td>-0.985231</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>horsepower</th>\n", | |
| " <td>0.075819</td>\n", | |
| " <td>0.217299</td>\n", | |
| " <td>0.371147</td>\n", | |
| " <td>0.579821</td>\n", | |
| " <td>0.615077</td>\n", | |
| " <td>-0.087027</td>\n", | |
| " <td>0.757976</td>\n", | |
| " <td>0.822676</td>\n", | |
| " <td>0.566936</td>\n", | |
| " <td>0.098462</td>\n", | |
| " <td>-0.214514</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.107885</td>\n", | |
| " <td>-0.822214</td>\n", | |
| " <td>-0.804575</td>\n", | |
| " <td>0.809575</td>\n", | |
| " <td>0.889488</td>\n", | |
| " <td>-0.169053</td>\n", | |
| " <td>0.169053</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>peak-rpm</th>\n", | |
| " <td>0.279740</td>\n", | |
| " <td>0.239543</td>\n", | |
| " <td>-0.360305</td>\n", | |
| " <td>-0.285970</td>\n", | |
| " <td>-0.245800</td>\n", | |
| " <td>-0.309974</td>\n", | |
| " <td>-0.279361</td>\n", | |
| " <td>-0.256733</td>\n", | |
| " <td>-0.267392</td>\n", | |
| " <td>-0.065713</td>\n", | |
| " <td>-0.435780</td>\n", | |
| " <td>0.107885</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.115413</td>\n", | |
| " <td>-0.058598</td>\n", | |
| " <td>-0.101616</td>\n", | |
| " <td>0.115830</td>\n", | |
| " <td>-0.475812</td>\n", | |
| " <td>0.475812</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>city-mpg</th>\n", | |
| " <td>-0.035527</td>\n", | |
| " <td>-0.225016</td>\n", | |
| " <td>-0.470606</td>\n", | |
| " <td>-0.665192</td>\n", | |
| " <td>-0.633531</td>\n", | |
| " <td>-0.049800</td>\n", | |
| " <td>-0.749543</td>\n", | |
| " <td>-0.650546</td>\n", | |
| " <td>-0.582027</td>\n", | |
| " <td>-0.034696</td>\n", | |
| " <td>0.331425</td>\n", | |
| " <td>-0.822214</td>\n", | |
| " <td>-0.115413</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.972044</td>\n", | |
| " <td>-0.686571</td>\n", | |
| " <td>-0.949713</td>\n", | |
| " <td>0.265676</td>\n", | |
| " <td>-0.265676</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>highway-mpg</th>\n", | |
| " <td>0.036233</td>\n", | |
| " <td>-0.181877</td>\n", | |
| " <td>-0.543304</td>\n", | |
| " <td>-0.698142</td>\n", | |
| " <td>-0.680635</td>\n", | |
| " <td>-0.104812</td>\n", | |
| " <td>-0.794889</td>\n", | |
| " <td>-0.679571</td>\n", | |
| " <td>-0.591309</td>\n", | |
| " <td>-0.035201</td>\n", | |
| " <td>0.268465</td>\n", | |
| " <td>-0.804575</td>\n", | |
| " <td>-0.058598</td>\n", | |
| " <td>0.972044</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.704692</td>\n", | |
| " <td>-0.930028</td>\n", | |
| " <td>0.198690</td>\n", | |
| " <td>-0.198690</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>price</th>\n", | |
| " <td>-0.082391</td>\n", | |
| " <td>0.133999</td>\n", | |
| " <td>0.584642</td>\n", | |
| " <td>0.690628</td>\n", | |
| " <td>0.751265</td>\n", | |
| " <td>0.135486</td>\n", | |
| " <td>0.834415</td>\n", | |
| " <td>0.872335</td>\n", | |
| " <td>0.543155</td>\n", | |
| " <td>0.082310</td>\n", | |
| " <td>0.071107</td>\n", | |
| " <td>0.809575</td>\n", | |
| " <td>-0.101616</td>\n", | |
| " <td>-0.686571</td>\n", | |
| " <td>-0.704692</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>0.789898</td>\n", | |
| " <td>0.110326</td>\n", | |
| " <td>-0.110326</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>city-L/100km</th>\n", | |
| " <td>0.066171</td>\n", | |
| " <td>0.238567</td>\n", | |
| " <td>0.476153</td>\n", | |
| " <td>0.657373</td>\n", | |
| " <td>0.673363</td>\n", | |
| " <td>0.003811</td>\n", | |
| " <td>0.785353</td>\n", | |
| " <td>0.745059</td>\n", | |
| " <td>0.554610</td>\n", | |
| " <td>0.037300</td>\n", | |
| " <td>-0.299372</td>\n", | |
| " <td>0.889488</td>\n", | |
| " <td>0.115830</td>\n", | |
| " <td>-0.949713</td>\n", | |
| " <td>-0.930028</td>\n", | |
| " <td>0.789898</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-0.241282</td>\n", | |
| " <td>0.241282</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>diesel</th>\n", | |
| " <td>-0.196735</td>\n", | |
| " <td>-0.101546</td>\n", | |
| " <td>0.307237</td>\n", | |
| " <td>0.211187</td>\n", | |
| " <td>0.244356</td>\n", | |
| " <td>0.281578</td>\n", | |
| " <td>0.221046</td>\n", | |
| " <td>0.070779</td>\n", | |
| " <td>0.054458</td>\n", | |
| " <td>0.241303</td>\n", | |
| " <td>0.985231</td>\n", | |
| " <td>-0.169053</td>\n", | |
| " <td>-0.475812</td>\n", | |
| " <td>0.265676</td>\n", | |
| " <td>0.198690</td>\n", | |
| " <td>0.110326</td>\n", | |
| " <td>-0.241282</td>\n", | |
| " <td>1.000000</td>\n", | |
| " <td>-1.000000</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>gas</th>\n", | |
| " <td>0.196735</td>\n", | |
| " <td>0.101546</td>\n", | |
| " <td>-0.307237</td>\n", | |
| " <td>-0.211187</td>\n", | |
| " <td>-0.244356</td>\n", | |
| " <td>-0.281578</td>\n", | |
| " <td>-0.221046</td>\n", | |
| " <td>-0.070779</td>\n", | |
| " <td>-0.054458</td>\n", | |
| " <td>-0.241303</td>\n", | |
| " <td>-0.985231</td>\n", | |
| " <td>0.169053</td>\n", | |
| " <td>0.475812</td>\n", | |
| " <td>-0.265676</td>\n", | |
| " <td>-0.198690</td>\n", | |
| " <td>-0.110326</td>\n", | |
| " <td>0.241282</td>\n", | |
| " <td>-1.000000</td>\n", | |
| " <td>1.000000</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " symboling normalized-losses wheel-base length \\\n", | |
| "symboling 1.000000 0.466264 -0.535987 -0.365404 \n", | |
| "normalized-losses 0.466264 1.000000 -0.056661 0.019424 \n", | |
| "wheel-base -0.535987 -0.056661 1.000000 0.876024 \n", | |
| "length -0.365404 0.019424 0.876024 1.000000 \n", | |
| "width -0.242423 0.086802 0.814507 0.857170 \n", | |
| "height -0.550160 -0.373737 0.590742 0.492063 \n", | |
| "curb-weight -0.233118 0.099404 0.782097 0.880665 \n", | |
| "engine-size -0.110581 0.112360 0.572027 0.685025 \n", | |
| "bore -0.140019 -0.029862 0.493244 0.608971 \n", | |
| "stroke -0.008245 0.055563 0.158502 0.124139 \n", | |
| "compression-ratio -0.182196 -0.114713 0.250313 0.159733 \n", | |
| "horsepower 0.075819 0.217299 0.371147 0.579821 \n", | |
| "peak-rpm 0.279740 0.239543 -0.360305 -0.285970 \n", | |
| "city-mpg -0.035527 -0.225016 -0.470606 -0.665192 \n", | |
| "highway-mpg 0.036233 -0.181877 -0.543304 -0.698142 \n", | |
| "price -0.082391 0.133999 0.584642 0.690628 \n", | |
| "city-L/100km 0.066171 0.238567 0.476153 0.657373 \n", | |
| "diesel -0.196735 -0.101546 0.307237 0.211187 \n", | |
| "gas 0.196735 0.101546 -0.307237 -0.211187 \n", | |
| "\n", | |
| " width height curb-weight engine-size bore \\\n", | |
| "symboling -0.242423 -0.550160 -0.233118 -0.110581 -0.140019 \n", | |
| "normalized-losses 0.086802 -0.373737 0.099404 0.112360 -0.029862 \n", | |
| "wheel-base 0.814507 0.590742 0.782097 0.572027 0.493244 \n", | |
| "length 0.857170 0.492063 0.880665 0.685025 0.608971 \n", | |
| "width 1.000000 0.306002 0.866201 0.729436 0.544885 \n", | |
| "height 0.306002 1.000000 0.307581 0.074694 0.180449 \n", | |
| "curb-weight 0.866201 0.307581 1.000000 0.849072 0.644060 \n", | |
| "engine-size 0.729436 0.074694 0.849072 1.000000 0.572609 \n", | |
| "bore 0.544885 0.180449 0.644060 0.572609 1.000000 \n", | |
| "stroke 0.188829 -0.062704 0.167562 0.209523 -0.055390 \n", | |
| "compression-ratio 0.189867 0.259737 0.156433 0.028889 0.001263 \n", | |
| "horsepower 0.615077 -0.087027 0.757976 0.822676 0.566936 \n", | |
| "peak-rpm -0.245800 -0.309974 -0.279361 -0.256733 -0.267392 \n", | |
| "city-mpg -0.633531 -0.049800 -0.749543 -0.650546 -0.582027 \n", | |
| "highway-mpg -0.680635 -0.104812 -0.794889 -0.679571 -0.591309 \n", | |
| "price 0.751265 0.135486 0.834415 0.872335 0.543155 \n", | |
| "city-L/100km 0.673363 0.003811 0.785353 0.745059 0.554610 \n", | |
| "diesel 0.244356 0.281578 0.221046 0.070779 0.054458 \n", | |
| "gas -0.244356 -0.281578 -0.221046 -0.070779 -0.054458 \n", | |
| "\n", | |
| " stroke compression-ratio horsepower peak-rpm \\\n", | |
| "symboling -0.008245 -0.182196 0.075819 0.279740 \n", | |
| "normalized-losses 0.055563 -0.114713 0.217299 0.239543 \n", | |
| "wheel-base 0.158502 0.250313 0.371147 -0.360305 \n", | |
| "length 0.124139 0.159733 0.579821 -0.285970 \n", | |
| "width 0.188829 0.189867 0.615077 -0.245800 \n", | |
| "height -0.062704 0.259737 -0.087027 -0.309974 \n", | |
| "curb-weight 0.167562 0.156433 0.757976 -0.279361 \n", | |
| "engine-size 0.209523 0.028889 0.822676 -0.256733 \n", | |
| "bore -0.055390 0.001263 0.566936 -0.267392 \n", | |
| "stroke 1.000000 0.187923 0.098462 -0.065713 \n", | |
| "compression-ratio 0.187923 1.000000 -0.214514 -0.435780 \n", | |
| "horsepower 0.098462 -0.214514 1.000000 0.107885 \n", | |
| "peak-rpm -0.065713 -0.435780 0.107885 1.000000 \n", | |
| "city-mpg -0.034696 0.331425 -0.822214 -0.115413 \n", | |
| "highway-mpg -0.035201 0.268465 -0.804575 -0.058598 \n", | |
| "price 0.082310 0.071107 0.809575 -0.101616 \n", | |
| "city-L/100km 0.037300 -0.299372 0.889488 0.115830 \n", | |
| "diesel 0.241303 0.985231 -0.169053 -0.475812 \n", | |
| "gas -0.241303 -0.985231 0.169053 0.475812 \n", | |
| "\n", | |
| " city-mpg highway-mpg price city-L/100km diesel \\\n", | |
| "symboling -0.035527 0.036233 -0.082391 0.066171 -0.196735 \n", | |
| "normalized-losses -0.225016 -0.181877 0.133999 0.238567 -0.101546 \n", | |
| "wheel-base -0.470606 -0.543304 0.584642 0.476153 0.307237 \n", | |
| "length -0.665192 -0.698142 0.690628 0.657373 0.211187 \n", | |
| "width -0.633531 -0.680635 0.751265 0.673363 0.244356 \n", | |
| "height -0.049800 -0.104812 0.135486 0.003811 0.281578 \n", | |
| "curb-weight -0.749543 -0.794889 0.834415 0.785353 0.221046 \n", | |
| "engine-size -0.650546 -0.679571 0.872335 0.745059 0.070779 \n", | |
| "bore -0.582027 -0.591309 0.543155 0.554610 0.054458 \n", | |
| "stroke -0.034696 -0.035201 0.082310 0.037300 0.241303 \n", | |
| "compression-ratio 0.331425 0.268465 0.071107 -0.299372 0.985231 \n", | |
| "horsepower -0.822214 -0.804575 0.809575 0.889488 -0.169053 \n", | |
| "peak-rpm -0.115413 -0.058598 -0.101616 0.115830 -0.475812 \n", | |
| "city-mpg 1.000000 0.972044 -0.686571 -0.949713 0.265676 \n", | |
| "highway-mpg 0.972044 1.000000 -0.704692 -0.930028 0.198690 \n", | |
| "price -0.686571 -0.704692 1.000000 0.789898 0.110326 \n", | |
| "city-L/100km -0.949713 -0.930028 0.789898 1.000000 -0.241282 \n", | |
| "diesel 0.265676 0.198690 0.110326 -0.241282 1.000000 \n", | |
| "gas -0.265676 -0.198690 -0.110326 0.241282 -1.000000 \n", | |
| "\n", | |
| " gas \n", | |
| "symboling 0.196735 \n", | |
| "normalized-losses 0.101546 \n", | |
| "wheel-base -0.307237 \n", | |
| "length -0.211187 \n", | |
| "width -0.244356 \n", | |
| "height -0.281578 \n", | |
| "curb-weight -0.221046 \n", | |
| "engine-size -0.070779 \n", | |
| "bore -0.054458 \n", | |
| "stroke -0.241303 \n", | |
| "compression-ratio -0.985231 \n", | |
| "horsepower 0.169053 \n", | |
| "peak-rpm 0.475812 \n", | |
| "city-mpg -0.265676 \n", | |
| "highway-mpg -0.198690 \n", | |
| "price -0.110326 \n", | |
| "city-L/100km 0.241282 \n", | |
| "diesel -1.000000 \n", | |
| "gas 1.000000 " | |
| ] | |
| }, | |
| "execution_count": 45, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df.corr()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " sometimes we would like to know the significant of the correlation estimate. " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<b>P-value</b>: \n", | |
| "<p>What is this P-value? The P-value is the probability value that the correlation between these two variables is statistically significant. Normally, we choose a significance level of 0.05, which means that we are 95% confident that the correlation between the variables is significant.</p>\n", | |
| "\n", | |
| "By convention, when the\n", | |
| "<ul>\n", | |
| " <li>p-value is $<$ 0.001: we say there is strong evidence that the correlation is significant.</li>\n", | |
| " <li>the p-value is $<$ 0.05: there is moderate evidence that the correlation is significant.</li>\n", | |
| " <li>the p-value is $<$ 0.1: there is weak evidence that the correlation is significant.</li>\n", | |
| " <li>the p-value is $>$ 0.1: there is no evidence that the correlation is significant.</li>\n", | |
| "</ul>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " We can obtain this information using \"stats\" module in the \"scipy\" library." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 46, | |
| "metadata": { | |
| "collapsed": true | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "from scipy import stats" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Wheel-base vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's calculate the Pearson Correlation Coefficient and P-value of 'wheel-base' and 'price'. " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 47, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.5846418222655081 with a P-value of P = 8.076488270732955e-20\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['wheel-base'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P =\", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between wheel-base and price is statistically significant, although the linear relationship isn't extremely strong (~0.585)</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Horsepower vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's calculate the Pearson Correlation Coefficient and P-value of 'horsepower' and 'price'." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 48, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.8095745670036559 with a P-value of P = 6.36905742825998e-48\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['horsepower'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between horsepower and price is statistically significant, and the linear relationship is quite strong (~0.809, close to 1)</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Length vs Price</h3>\n", | |
| "\n", | |
| "Let's calculate the Pearson Correlation Coefficient and P-value of 'length' and 'price'." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 49, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.690628380448364 with a P-value of P = 8.016477466159053e-30\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['length'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between length and price is statistically significant, and the linear relationship is moderately strong (~0.691).</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Width vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's calculate the Pearson Correlation Coefficient and P-value of 'width' and 'price':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 50, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.7512653440522674 with a P-value of P = 9.200335510481426e-38\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['width'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P =\", p_value ) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "##### Conclusion:\n", | |
| "\n", | |
| "Since the p-value is < 0.001, the correlation between width and price is statistically significant, and the linear relationship is quite strong (~0.751)." | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "### Curb-weight vs Price" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's calculate the Pearson Correlation Coefficient and P-value of 'curb-weight' and 'price':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 51, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.8344145257702846 with a P-value of P = 2.1895772388936997e-53\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['curb-weight'], df['price'])\n", | |
| "print( \"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between curb-weight and price is statistically significant, and the linear relationship is quite strong (~0.834).</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Engine-size vs Price</h3>\n", | |
| "\n", | |
| "Let's calculate the Pearson Correlation Coefficient and P-value of 'engine-size' and 'price':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 52, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.8723351674455185 with a P-value of P = 9.265491622197996e-64\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['engine-size'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P =\", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between engine-size and price is statistically significant, and the linear relationship is very strong (~0.872).</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Bore vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's calculate the Pearson Correlation Coefficient and P-value of 'bore' and 'price':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 53, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is 0.5431553832626602 with a P-value of P = 8.049189483935364e-17\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['bore'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value ) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between bore and price is statistically significant, but the linear relationship is only moderate (~0.521).</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " We can relate the process for each 'City-mpg' and 'Highway-mpg':" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>City-mpg vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 54, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is -0.6865710067844677 with a P-value of P = 2.3211320655676368e-29\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['city-mpg'], df['price'])\n", | |
| "print(\"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h5>Conclusion:</h5>\n", | |
| "<p>Since the p-value is $<$ 0.001, the correlation between city-mpg and price is statistically significant, and the coefficient of ~ -0.687 shows that the relationship is negative and moderately strong.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Highway-mpg vs Price</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 55, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The Pearson Correlation Coefficient is -0.7046922650589529 with a P-value of P = 1.7495471144476807e-31\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "pearson_coef, p_value = stats.pearsonr(df['highway-mpg'], df['price'])\n", | |
| "print( \"The Pearson Correlation Coefficient is\", pearson_coef, \" with a P-value of P = \", p_value ) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "##### Conclusion:\n", | |
| "Since the p-value is < 0.001, the correlation between highway-mpg and price is statistically significant, and the coefficient of ~ -0.705 shows that the relationship is negative and moderately strong." | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 id=\"anova\">6. ANOVA</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>ANOVA: Analysis of Variance</h3>\n", | |
| "<p>The Analysis of Variance (ANOVA) is a statistical method used to test whether there are significant differences between the means of two or more groups. ANOVA returns two parameters:</p>\n", | |
| "\n", | |
| "<p><b>F-test score</b>: ANOVA assumes the means of all groups are the same, calculates how much the actual means deviate from the assumption, and reports it as the F-test score. A larger score means there is a larger difference between the means.</p>\n", | |
| "\n", | |
| "<p><b>P-value</b>: P-value tells how statistically significant is our calculated score value.</p>\n", | |
| "\n", | |
| "<p>If our price variable is strongly correlated with the variable we are analyzing, expect ANOVA to return a sizeable F-test score and a small p-value.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Drive Wheels</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>Since ANOVA analyzes the difference between different groups of the same variable, the groupby function will come in handy. Because the ANOVA algorithm averages the data automatically, we do not need to take the average before hand.</p>\n", | |
| "\n", | |
| "<p>Let's see if different types 'drive-wheels' impact 'price', we group the data.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's see if different types 'drive-wheels' impact 'price', we group the data." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 65, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [], | |
| "source": [ | |
| "subset_2 = df[['drive-wheels', 'price']]\n", | |
| "grouped_test2=subset_2.groupby(['drive-wheels'])\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 66, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<pandas.core.groupby.generic.DataFrameGroupBy object at 0x7f1270e88dd8>" | |
| ] | |
| }, | |
| "execution_count": 66, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "grouped_test2" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " We can obtain the values of the method group using the method \"get_group\". " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 67, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "4 17450.0\n", | |
| "136 7603.0\n", | |
| "140 9233.0\n", | |
| "141 11259.0\n", | |
| "144 8013.0\n", | |
| "145 11694.0\n", | |
| "150 7898.0\n", | |
| "151 8778.0\n", | |
| "Name: price, dtype: float64" | |
| ] | |
| }, | |
| "execution_count": 67, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "grouped_test2.get_group('4wd')['price']" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "we can use the function 'f_oneway' in the module 'stats' to obtain the <b>F-test score</b> and <b>P-value</b>." | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 68, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "ANOVA results: F= 67.95406500780399 , P = 3.3945443577151245e-23\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "# ANOVA\n", | |
| "subgrp_fwd = grouped_test2.get_group('fwd')['price']\n", | |
| "subgrp_rwd = grouped_test2.get_group('rwd')['price']\n", | |
| "subgrp_4wd = grouped_test2.get_group('4wd')['price']\n", | |
| "f_val, p_val = stats.f_oneway(subgrp_fwd,subgrp_rwd ,subgrp_4wd) \n", | |
| " \n", | |
| "print( \"ANOVA results: F=\", f_val, \", P =\", p_val) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "This is a great result, with a large F test score showing a strong correlation and a P value of almost 0 implying almost certain statistical significance. But does this mean all three tested groups are all this highly correlated? " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "#### Separately: fwd and rwd" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 69, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "ANOVA results: F= 130.5533160959111 , P = 2.2355306355677845e-23\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "f_val, p_val = stats.f_oneway(subgrp_fwd, subgrp_rwd) \n", | |
| " \n", | |
| "print( \"ANOVA results: F=\", f_val, \", P =\", p_val )" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| " Let's examine the other groups " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "#### 4wd and rwd" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 72, | |
| "metadata": { | |
| "collapsed": false, | |
| "scrolled": true | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "ANOVA results: F= 8.580681368924756 , P = 0.004411492211225333\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "f_val, p_val = stats.f_oneway(subgrp_4wd, subgrp_rwd) \n", | |
| " \n", | |
| "print( \"ANOVA results: F=\", f_val, \", P =\", p_val) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h4>4wd and fwd</h4>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 73, | |
| "metadata": { | |
| "collapsed": false | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "ANOVA results: F= 0.665465750252303 , P = 0.41620116697845666\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "f_val, p_val = stats.f_oneway(subgrp_4wd, subgrp_fwd) \n", | |
| " \n", | |
| "print(\"ANOVA results: F=\", f_val, \", P =\", p_val) " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>Conclusion: Important Variables</h3>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<p>We now have a better idea of what our data looks like and which variables are important to take into account when predicting the car price. We have narrowed it down to the following variables:</p>\n", | |
| "\n", | |
| "Continuous numerical variables:\n", | |
| "<ul>\n", | |
| " <li>Length</li>\n", | |
| " <li>Width</li>\n", | |
| " <li>Curb-weight</li>\n", | |
| " <li>Engine-size</li>\n", | |
| " <li>Horsepower</li>\n", | |
| " <li>City-mpg</li>\n", | |
| " <li>Highway-mpg</li>\n", | |
| " <li>Wheel-base</li>\n", | |
| " <li>Bore</li>\n", | |
| "</ul>\n", | |
| " \n", | |
| "Categorical variables:\n", | |
| "<ul>\n", | |
| " <li>Drive-wheels</li>\n", | |
| "</ul>\n", | |
| "\n", | |
| "<p>As we now move into building machine learning models to automate our analysis, feeding the model with variables that meaningfully affect our target variable will improve our model's prediction performance.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h1>Thank you for completing this notebook</h1>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n", | |
| "\n", | |
| " <p><a href=\"https://cocl.us/DA0101EN_edx_link_Notebook_bottom\"><img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/BottomAd.png\" width=\"750\" align=\"center\"></a></p>\n", | |
| "</div>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h3>About the Authors:</h3>\n", | |
| "\n", | |
| "This notebook was written by <a href=\"https://www.linkedin.com/in/mahdi-noorian-58219234/\" target=\"_blank\">Mahdi Noorian PhD</a>, <a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a>, Bahare Talayian, Eric Xiao, Steven Dong, Parizad, Hima Vsudevan and <a href=\"https://www.linkedin.com/in/fiorellawever/\" target=\"_blank\">Fiorella Wenver</a> and <a href=\" https://www.linkedin.com/in/yi-leng-yao-84451275/ \" target=\"_blank\" >Yi Yao</a>.\n", | |
| "\n", | |
| "<p><a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a> is a Data Scientist at IBM, and holds a PhD in Electrical Engineering. His research focused on using Machine Learning, Signal Processing, and Computer Vision to determine how videos impact human cognition. Joseph has been working for IBM since he completed his PhD.</p>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<hr>\n", | |
| "<p>Copyright © 2018 IBM Developer Skills Network. This notebook and its source code are released under the terms of the <a href=\"https://cognitiveclass.ai/mit-license/\">MIT License</a>.</p>" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "anaconda-cloud": {}, | |
| "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.8" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 2 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment