Skip to content
# Add your Python code here!
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Exploratory Data Analysis of automobile data set\n",
    "by <a href=\"https://www.linkedin.com/in/bienvenu-choupo\" target=\"_blank\">Bienvenu CHOUPO</a>  \n",
    "10 September 2019"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Hi everyone!\n",
    "We have a set of automobile data available online. You can donwload it <a href=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/automobileEDA.csv\" target=\"_blank\">HERE</a>  \n",
    "\n",
    "<h3>In this document, we will explore several methods to see if certain characteristics or features can be used to predict car price. </h3>\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2>Table of content</h2>\n",
    "<ol>\n",
    "    <Li> Import Data</Li>\n",
    "    <Li> Analyzing Individual Feature Patterns using Visualization</Li>\n",
    "    <Li> Descriptive Statistical Analysis</Li>\n",
    "    <Li> Grouping</Li>\n",
    "    <Li> Correlation and Causation</Li>\n",
    "    <Li> ANOVA</Li>\n",
    " </ol>\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 </h2>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    " Let's first import libraries "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Libraries imported\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "# Import visualization packages \"Matplotlib\" and \"Seaborn\", \n",
    "# don't forget about \"%matplotlib inline\" to plot in a Jupyter notebook.\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "#%matplotlib inline \n",
    "\n",
    "from scipy import stats # for pearsonr\n",
    "\n",
    "print('Libraries imported')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    " We load data and store in dataframe df:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Let's save the data file locally\n",
    "df.to_csv(\"/Users/GodGiven/My_DataScience_Projects/My Notebooks/data/automobile.csv\",index=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>symboling</th>\n",
       "      <th>normalized-losses</th>\n",
       "      <th>make</th>\n",
       "      <th>aspiration</th>\n",
       "      <th>num-of-doors</th>\n",
       "      <th>body-style</th>\n",
       "      <th>drive-wheels</th>\n",
       "      <th>engine-location</th>\n",
       "      <th>wheel-base</th>\n",
       "      <th>length</th>\n",
       "      <th>...</th>\n",
       "      <th>compression-ratio</th>\n",
       "      <th>horsepower</th>\n",
       "      <th>peak-rpm</th>\n",
       "      <th>city-mpg</th>\n",
       "      <th>highway-mpg</th>\n",
       "      <th>price</th>\n",
       "      <th>city-L/100km</th>\n",
       "      <th>horsepower-binned</th>\n",
       "      <th>diesel</th>\n",
       "      <th>gas</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>3</td>\n",
       "      <td>122</td>\n",
       "      <td>alfa-romero</td>\n",
       "      <td>std</td>\n",
       "      <td>two</td>\n",
       "      <td>convertible</td>\n",
       "      <td>rwd</td>\n",
       "      <td>front</td>\n",
       "      <td>88.6</td>\n",
       "      <td>0.811148</td>\n",
       "      <td>...</td>\n",
       "      <td>9.0</td>\n",
       "      <td>111.0</td>\n",
       "      <td>5000.0</td>\n",
       "      <td>21</td>\n",
       "      <td>27</td>\n",
       "      <td>13495.0</td>\n",
       "      <td>11.190476</td>\n",
       "      <td>Medium</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>122</td>\n",
       "      <td>alfa-romero</td>\n",
       "      <td>std</td>\n",
       "      <td>two</td>\n",
       "      <td>convertible</td>\n",
       "      <td>rwd</td>\n",
       "      <td>front</td>\n",
       "      <td>88.6</td>\n",
       "      <td>0.811148</td>\n",
       "      <td>...</td>\n",
       "      <td>9.0</td>\n",
       "      <td>111.0</td>\n",
       "      <td>5000.0</td>\n",
       "      <td>21</td>\n",
       "      <td>27</td>\n",
       "      <td>16500.0</td>\n",
       "      <td>11.190476</td>\n",
       "      <td>Medium</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>122</td>\n",
       "      <td>alfa-romero</td>\n",
       "      <td>std</td>\n",
       "      <td>two</td>\n",
       "      <td>hatchback</td>\n",
       "      <td>rwd</td>\n",
       "      <td>front</td>\n",
       "      <td>94.5</td>\n",
       "      <td>0.822681</td>\n",
       "      <td>...</td>\n",
       "      <td>9.0</td>\n",
       "      <td>154.0</td>\n",
       "      <td>5000.0</td>\n",
       "      <td>19</td>\n",
       "      <td>26</td>\n",
       "      <td>16500.0</td>\n",
       "      <td>12.368421</td>\n",
       "      <td>Medium</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2</td>\n",
       "      <td>164</td>\n",
       "      <td>audi</td>\n",
       "      <td>std</td>\n",
       "      <td>four</td>\n",
       "      <td>sedan</td>\n",
       "      <td>fwd</td>\n",
       "      <td>front</td>\n",
       "      <td>99.8</td>\n",
       "      <td>0.848630</td>\n",
       "      <td>...</td>\n",
       "      <td>10.0</td>\n",
       "      <td>102.0</td>\n",
       "      <td>5500.0</td>\n",
       "      <td>24</td>\n",
       "      <td>30</td>\n",
       "      <td>13950.0</td>\n",
       "      <td>9.791667</td>\n",
       "      <td>Medium</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2</td>\n",
       "      <td>164</td>\n",
       "      <td>audi</td>\n",
       "      <td>std</td>\n",
       "      <td>four</td>\n",
       "      <td>sedan</td>\n",
       "      <td>4wd</td>\n",
       "      <td>front</td>\n",
       "      <td>99.4</td>\n",
       "      <td>0.848630</td>\n",
       "      <td>...</td>\n",
       "      <td>8.0</td>\n",
       "      <td>115.0</td>\n",
       "      <td>5500.0</td>\n",
       "      <td>18</td>\n",
       "      <td>22</td>\n",
       "      <td>17450.0</td>\n",
       "      <td>13.055556</td>\n",
       "      <td>Medium</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 29 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "   symboling  normalized-losses         make aspiration num-of-doors  \\\n",
       "0          3                122  alfa-romero        std          two   \n",
       "1          3                122  alfa-romero        std          two   \n",
       "2          1                122  alfa-romero        std          two   \n",
       "3          2                164         audi        std         four   \n",
       "4          2                164         audi        std         four   \n",
       "\n",
       "    body-style drive-wheels engine-location  wheel-base    length  ...  \\\n",
       "0  convertible          rwd           front        88.6  0.811148  ...   \n",
       "1  convertible          rwd           front        88.6  0.811148  ...   \n",
       "2    hatchback          rwd           front        94.5  0.822681  ...   \n",
       "3        sedan          fwd           front        99.8  0.848630  ...   \n",
       "4        sedan          4wd           front        99.4  0.848630  ...   \n",
       "\n",
       "   compression-ratio  horsepower  peak-rpm city-mpg highway-mpg    price  \\\n",
       "0                9.0       111.0    5000.0       21          27  13495.0   \n",
       "1                9.0       111.0    5000.0       21          27  16500.0   \n",
       "2                9.0       154.0    5000.0       19          26  16500.0   \n",
       "3               10.0       102.0    5500.0       24          30  13950.0   \n",
       "4                8.0       115.0    5500.0       18          22  17450.0   \n",
       "\n",
       "  city-L/100km  horsepower-binned  diesel  gas  \n",
       "0    11.190476             Medium       0    1  \n",
       "1    11.190476             Medium       0    1  \n",
       "2    12.368421             Medium       0    1  \n",
       "3     9.791667             Medium       0    1  \n",
       "4    13.055556             Medium       0    1  \n",
       "\n",
       "[5 rows x 29 columns]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# We import from csv\n",
    "df=pd.read_csv(\"/Users/GodGiven/My_DataScience_Projects/My Notebooks/data/automobile.csv\")\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Our Dataframe has  201  rows and  29  columns\n"
     ]
    }
   ],
   "source": [
    "#How many rows and columns?\n",
    "print(\"Our Dataframe has \", df.shape[0],\" rows and \",df.shape[1],\" columns\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2 id=\"pattern_visualization\">2. Analyzing Individual Feature Patterns using Visualization</h2>"
   ]
  },
  {
   "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": 4,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": [
    "let's calculate the correlation between variables  of type \"int64\" or \"float64\" :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 5,
     "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": [
    "<h2>Continuous numerical variables:</h2> \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": [
    "<h3>Linear relationship</h3>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's find the scatterplot of \"engine-size\" and \"price\" "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    },
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Engine size as potential predictor variable of price\n",
    "sns.regplot(x=\"engine-size\", y=\"price\", data=df)\n",
    "plt.ylim(0,)\n",
    "plt.show()"
   ]
  },
  {
   "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": 11,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 11,
     "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": 7,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.regplot(x=\"highway-mpg\", y=\"price\", data=df)\n",
    "plt.show()"
   ]
  },
  {
   "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": 13,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df[['highway-mpg', 'price']].corr()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h5>Weak Linear Relationship</h5>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's see if \"Peak-rpm\" as a predictor variable of \"price\"."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.regplot(x=\"peak-rpm\", y=\"price\", data=df)\n",
    "plt.show()"
   ]
  },
  {
   "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": 15,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df[['peak-rpm','price']].corr()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3>Categorical variables</h3>\n",
    "\n",
    "<p> 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": 9,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    },
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.boxplot(x=\"body-style\", y=\"price\", data=df)\n",
    "plt.show()"
   ]
  },
  {
   "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": 19,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    },
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xb1604a8>"
      ]
     },
     "execution_count": 19,
     "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=\"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": 20,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xb1cedd8>"
      ]
     },
     "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": [
    "# 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>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 10,
     "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": 22,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.describe(include=['object'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3>Value Counts</h3>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's see how many units of each characteristic/variable we have.   \n",
    "With the variable 'drive-wheels':"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 10,
     "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.index.name = 'drive-wheels'\n",
    "drive_wheels_counts"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "With the variable 'engine-location':"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 12,
     "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"
   ]
  },
  {
   "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. Grouping</h2>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>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": 28,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(['rwd', 'fwd', '4wd'], dtype=object)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['drive-wheels'].unique()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>On average, which type of drive wheel is most valuable?</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>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>rwd</td>\n",
       "      <td>convertible</td>\n",
       "      <td>13495.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>rwd</td>\n",
       "      <td>convertible</td>\n",
       "      <td>16500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>rwd</td>\n",
       "      <td>hatchback</td>\n",
       "      <td>16500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>fwd</td>\n",
       "      <td>sedan</td>\n",
       "      <td>13950.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>4wd</td>\n",
       "      <td>sedan</td>\n",
       "      <td>17450.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  drive-wheels   body-style    price\n",
       "0          rwd  convertible  13495.0\n",
       "1          rwd  convertible  16500.0\n",
       "2          rwd    hatchback  16500.0\n",
       "3          fwd        sedan  13950.0\n",
       "4          4wd        sedan  17450.0"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_group_one = df[['drive-wheels','body-style','price']]\n",
    "df_group_one.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's calculate the average price for each of the different categories of data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 30,
     "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",
    "Let's group by both 'drive-wheels' and 'body-style'.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 25,
     "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.</p>\n",
    "We fill the missing values with 0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead 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": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grouped_pivot = grouped_test1.pivot(index='drive-wheels',columns='body-style').fillna(0)\n",
    "grouped_pivot"
   ]
  },
  {
   "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": "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"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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>The main question we want to answer in this document 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": [
    "<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>As we stated before we can calculate the Pearson Correlation of the of the 'int64' or 'float64'  variables.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 25,
     "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": [
    "<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": 40,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 41,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 42,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 43,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 44,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 45,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 46,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 47,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": 48,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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": [
    " Let's see if different types 'drive-wheels' impact  'price', we group the data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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>rwd</td>\n",
       "      <td>13495.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>rwd</td>\n",
       "      <td>16500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>fwd</td>\n",
       "      <td>13950.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>4wd</td>\n",
       "      <td>17450.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>fwd</td>\n",
       "      <td>15250.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>136</th>\n",
       "      <td>4wd</td>\n",
       "      <td>7603.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    drive-wheels    price\n",
       "0            rwd  13495.0\n",
       "1            rwd  16500.0\n",
       "3            fwd  13950.0\n",
       "4            4wd  17450.0\n",
       "5            fwd  15250.0\n",
       "136          4wd   7603.0"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grouped_test2=df_gptest[['drive-wheels', 'price']].groupby(['drive-wheels'])\n",
    "grouped_test2.head(2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We calculate the <b>F-test score</b> and <b>P-value</b>."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": false
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ANOVA results: F= 67.95406500780399 , P = 3.3945443577151245e-23\n"
     ]
    }
   ],
   "source": [
    "# ANOVA\n",
    "f_val, p_val = stats.f_oneway(grouped_test2.get_group('fwd')['price'], grouped_test2.get_group('rwd')['price'], grouped_test2.get_group('4wd')['price'])  \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": 51,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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(grouped_test2.get_group('fwd')['price'], grouped_test2.get_group('rwd')['price'])  \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": 52,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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(grouped_test2.get_group('4wd')['price'], grouped_test2.get_group('rwd')['price'])  \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": 53,
   "metadata": {
    "collapsed": false,
    "jupyter": {
     "outputs_hidden": 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(grouped_test2.get_group('4wd')['price'], grouped_test2.get_group('fwd')['price'])  \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 !!!</h1>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h5>Credits:</h5>\n",
    "We wrote this document from the original notebook 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>."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}