{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Identify Fraud from Enron Email Dataset\n",
    "\n",
    "In 2000, Enron was one of the largest companies in the United States. By 2002, it had collapsed into bankruptcy due to widespread corporate fraud. In the resulting federal investigation, a significant amount of typically confidential information entered into the public record, including tens of thousands of emails and detailed financial data of top Enron executives. The Enron datasets comprising emails and financial data of Enron were made available to the public for research and analysis and can be downloaded from https://www.cs.cmu.edu/~./enron/.\n",
    "\n",
    "The goal of this project is to use *machine learning* to build a POI (Person of Interest) identifier based on financial and email data made public. Here, 'person of interest' refers to a person who is charged by the law for committing a crime, in this case, the scandal at Enron.  \n",
    "\n",
    "The overall work done for this project can be divided into four parts, a usual trend in Machine Learning:\n",
    "   \n",
    "   1. **Exploring the Enron Dataset:** This involves data cleaning, outlier removal and analyzing.\n",
    "   \n",
    "   2. **Feature Processing of the Enron Dataset:** Includes creation, scaling, selection and transforming of features.     \n",
    "   \n",
    "   3. **Choosing the Algorithm(s):** Multiple classification models are trained and tuned.\n",
    "       \n",
    "   4. **Evaluation:** Involves validation and overall performance check."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Question 1: Summarize for us the goal of this project and how machine learning is useful in trying to accomplish it. As part of your answer, give some background on the dataset and how it can be used to answer the project question. Were there any outliers in the data when you got it, and how did you handle those?**\n",
    "\n",
    "The goal of the project was to identify Enron employees who may have committed fraud based on the public Enron financial and email dataset while exploring different machine learning algorithms and addressing various feature selection methods. \n",
    "\n",
    "The dataset had a total of 146 data points, and 18 of them were POIs in the original dataset. There are 20 features for each person in the dataset, 14 financial features, and 6 e-mail features. These features are analyzed and then fed into classification models. The classification models are then validated and compared to select the optimal classifier.\n",
    "\n",
    "Outliers were removed with the help of visualization of variables. This has been described in the section titled <a href='#outliers'>'Outlier Investigation & Analyzing the Features'.</a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 222,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "import pickle\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "from time import time\n",
    "\n",
    "from feature_format import featureFormat, targetFeatureSplit\n",
    "from tester import dump_classifier_and_data\n",
    "\n",
    "from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "\n",
    "from matplotlib import pyplot as plt\n",
    "import seaborn as sns\n",
    "sns.set_style('white')\n",
    "\n",
    "import warnings\n",
    "warnings.filterwarnings('ignore')\n",
    "\n",
    "# Load the dataset\n",
    "with open(\"final_project_dataset.pkl\", \"rb\") as data_file:\n",
    "    data_dict = pickle.load(data_file)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## I. Exploring the Enron Dataset\n",
    "\n",
    "- The pickled Enron data is loaded as a `pandas` dataframe for easy anlysis of the dataset.\n",
    "- The key i.e., the Enron employees name is used as the index of the pandas dataframe."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bonus</th>\n",
       "      <th>deferral_payments</th>\n",
       "      <th>deferred_income</th>\n",
       "      <th>director_fees</th>\n",
       "      <th>email_address</th>\n",
       "      <th>exercised_stock_options</th>\n",
       "      <th>expenses</th>\n",
       "      <th>from_messages</th>\n",
       "      <th>from_poi_to_this_person</th>\n",
       "      <th>from_this_person_to_poi</th>\n",
       "      <th>...</th>\n",
       "      <th>long_term_incentive</th>\n",
       "      <th>other</th>\n",
       "      <th>poi</th>\n",
       "      <th>restricted_stock</th>\n",
       "      <th>restricted_stock_deferred</th>\n",
       "      <th>salary</th>\n",
       "      <th>shared_receipt_with_poi</th>\n",
       "      <th>to_messages</th>\n",
       "      <th>total_payments</th>\n",
       "      <th>total_stock_value</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>METTS MARK</th>\n",
       "      <td>600000</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>mark.metts@enron.com</td>\n",
       "      <td>NaN</td>\n",
       "      <td>94299</td>\n",
       "      <td>29</td>\n",
       "      <td>38</td>\n",
       "      <td>1</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1740</td>\n",
       "      <td>False</td>\n",
       "      <td>585062</td>\n",
       "      <td>NaN</td>\n",
       "      <td>365788</td>\n",
       "      <td>702</td>\n",
       "      <td>807</td>\n",
       "      <td>1061827</td>\n",
       "      <td>585062</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>BAXTER JOHN C</th>\n",
       "      <td>1200000</td>\n",
       "      <td>1295738</td>\n",
       "      <td>-1386055</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>6680544</td>\n",
       "      <td>11200</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>...</td>\n",
       "      <td>1586055</td>\n",
       "      <td>2660303</td>\n",
       "      <td>False</td>\n",
       "      <td>3942714</td>\n",
       "      <td>NaN</td>\n",
       "      <td>267102</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>5634343</td>\n",
       "      <td>10623258</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ELLIOTT STEVEN</th>\n",
       "      <td>350000</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-400729</td>\n",
       "      <td>NaN</td>\n",
       "      <td>steven.elliott@enron.com</td>\n",
       "      <td>4890344</td>\n",
       "      <td>78552</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12961</td>\n",
       "      <td>False</td>\n",
       "      <td>1788391</td>\n",
       "      <td>NaN</td>\n",
       "      <td>170941</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>211725</td>\n",
       "      <td>6678735</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>CORDES WILLIAM R</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>bill.cordes@enron.com</td>\n",
       "      <td>651850</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12</td>\n",
       "      <td>10</td>\n",
       "      <td>0</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>False</td>\n",
       "      <td>386335</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>58</td>\n",
       "      <td>764</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1038185</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>HANNON KEVIN P</th>\n",
       "      <td>1500000</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-3117011</td>\n",
       "      <td>NaN</td>\n",
       "      <td>kevin.hannon@enron.com</td>\n",
       "      <td>5538001</td>\n",
       "      <td>34039</td>\n",
       "      <td>32</td>\n",
       "      <td>32</td>\n",
       "      <td>21</td>\n",
       "      <td>...</td>\n",
       "      <td>1617011</td>\n",
       "      <td>11350</td>\n",
       "      <td>True</td>\n",
       "      <td>853064</td>\n",
       "      <td>NaN</td>\n",
       "      <td>243293</td>\n",
       "      <td>1035</td>\n",
       "      <td>1045</td>\n",
       "      <td>288682</td>\n",
       "      <td>6391065</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 21 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                    bonus deferral_payments deferred_income director_fees  \\\n",
       "METTS MARK         600000               NaN             NaN           NaN   \n",
       "BAXTER JOHN C     1200000           1295738        -1386055           NaN   \n",
       "ELLIOTT STEVEN     350000               NaN         -400729           NaN   \n",
       "CORDES WILLIAM R      NaN               NaN             NaN           NaN   \n",
       "HANNON KEVIN P    1500000               NaN        -3117011           NaN   \n",
       "\n",
       "                             email_address exercised_stock_options expenses  \\\n",
       "METTS MARK            mark.metts@enron.com                     NaN    94299   \n",
       "BAXTER JOHN C                          NaN                 6680544    11200   \n",
       "ELLIOTT STEVEN    steven.elliott@enron.com                 4890344    78552   \n",
       "CORDES WILLIAM R     bill.cordes@enron.com                  651850      NaN   \n",
       "HANNON KEVIN P      kevin.hannon@enron.com                 5538001    34039   \n",
       "\n",
       "                 from_messages from_poi_to_this_person  \\\n",
       "METTS MARK                  29                      38   \n",
       "BAXTER JOHN C              NaN                     NaN   \n",
       "ELLIOTT STEVEN             NaN                     NaN   \n",
       "CORDES WILLIAM R            12                      10   \n",
       "HANNON KEVIN P              32                      32   \n",
       "\n",
       "                 from_this_person_to_poi        ...         \\\n",
       "METTS MARK                             1        ...          \n",
       "BAXTER JOHN C                        NaN        ...          \n",
       "ELLIOTT STEVEN                       NaN        ...          \n",
       "CORDES WILLIAM R                       0        ...          \n",
       "HANNON KEVIN P                        21        ...          \n",
       "\n",
       "                 long_term_incentive    other    poi restricted_stock  \\\n",
       "METTS MARK                       NaN     1740  False           585062   \n",
       "BAXTER JOHN C                1586055  2660303  False          3942714   \n",
       "ELLIOTT STEVEN                   NaN    12961  False          1788391   \n",
       "CORDES WILLIAM R                 NaN      NaN  False           386335   \n",
       "HANNON KEVIN P               1617011    11350   True           853064   \n",
       "\n",
       "                 restricted_stock_deferred  salary shared_receipt_with_poi  \\\n",
       "METTS MARK                             NaN  365788                     702   \n",
       "BAXTER JOHN C                          NaN  267102                     NaN   \n",
       "ELLIOTT STEVEN                         NaN  170941                     NaN   \n",
       "CORDES WILLIAM R                       NaN     NaN                      58   \n",
       "HANNON KEVIN P                         NaN  243293                    1035   \n",
       "\n",
       "                 to_messages total_payments total_stock_value  \n",
       "METTS MARK               807        1061827            585062  \n",
       "BAXTER JOHN C            NaN        5634343          10623258  \n",
       "ELLIOTT STEVEN           NaN         211725           6678735  \n",
       "CORDES WILLIAM R         764            NaN           1038185  \n",
       "HANNON KEVIN P          1045         288682           6391065  \n",
       "\n",
       "[5 rows x 21 columns]"
      ]
     },
     "execution_count": 110,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Converting the given pickled Enron data to a pandas dataframe.\n",
    "enron_df = pd.DataFrame.from_records(list(data_dict.values()))\n",
    "\n",
    "# Set the index of df to be the employees series:\n",
    "employees = pd.Series(list(data_dict.keys()))\n",
    "enron_df.set_index(employees, inplace=True)\n",
    "enron_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Size of the enron dataframe:  (146, 21)\n",
      "Number of data points (people) in the dataset:  146\n",
      "Number of Features in the Enron Dataset:  21\n"
     ]
    }
   ],
   "source": [
    "print (\"Size of the enron dataframe: \", enron_df.shape)\n",
    "print (\"Number of data points (people) in the dataset: \", len(enron_df))\n",
    "print (\"Number of Features in the Enron Dataset: \", len(enron_df.columns))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total number of POI's in the given dataset:  18\n",
      "Total number of non-POI's in the given dataset:  128\n"
     ]
    }
   ],
   "source": [
    "# Counting the number of POIs and non-POIs in the given dataset.\n",
    "poi_count = enron_df.groupby('poi').size()\n",
    "print (\"Total number of POI's in the given dataset: \", poi_count.iloc[1])\n",
    "print (\"Total number of non-POI's in the given dataset: \", poi_count.iloc[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On loading the data as a DataFrame, the data-types are in string/objects."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bonus                        object\n",
       "deferral_payments            object\n",
       "deferred_income              object\n",
       "director_fees                object\n",
       "email_address                object\n",
       "exercised_stock_options      object\n",
       "expenses                     object\n",
       "from_messages                object\n",
       "from_poi_to_this_person      object\n",
       "from_this_person_to_poi      object\n",
       "loan_advances                object\n",
       "long_term_incentive          object\n",
       "other                        object\n",
       "poi                            bool\n",
       "restricted_stock             object\n",
       "restricted_stock_deferred    object\n",
       "salary                       object\n",
       "shared_receipt_with_poi      object\n",
       "to_messages                  object\n",
       "total_payments               object\n",
       "total_stock_value            object\n",
       "dtype: object"
      ]
     },
     "execution_count": 113,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "enron_df.dtypes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bonus</th>\n",
       "      <th>deferral_payments</th>\n",
       "      <th>deferred_income</th>\n",
       "      <th>director_fees</th>\n",
       "      <th>email_address</th>\n",
       "      <th>exercised_stock_options</th>\n",
       "      <th>expenses</th>\n",
       "      <th>from_messages</th>\n",
       "      <th>from_poi_to_this_person</th>\n",
       "      <th>from_this_person_to_poi</th>\n",
       "      <th>...</th>\n",
       "      <th>long_term_incentive</th>\n",
       "      <th>other</th>\n",
       "      <th>poi</th>\n",
       "      <th>restricted_stock</th>\n",
       "      <th>restricted_stock_deferred</th>\n",
       "      <th>salary</th>\n",
       "      <th>shared_receipt_with_poi</th>\n",
       "      <th>to_messages</th>\n",
       "      <th>total_payments</th>\n",
       "      <th>total_stock_value</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>METTS MARK</th>\n",
       "      <td>600000.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>94299.0</td>\n",
       "      <td>29.0</td>\n",
       "      <td>38.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1740.0</td>\n",
       "      <td>False</td>\n",
       "      <td>585062.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>365788.0</td>\n",
       "      <td>702.0</td>\n",
       "      <td>807.0</td>\n",
       "      <td>1061827.0</td>\n",
       "      <td>585062.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>BAXTER JOHN C</th>\n",
       "      <td>1200000.0</td>\n",
       "      <td>1295738.0</td>\n",
       "      <td>-1386055.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>6680544.0</td>\n",
       "      <td>11200.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>...</td>\n",
       "      <td>1586055.0</td>\n",
       "      <td>2660303.0</td>\n",
       "      <td>False</td>\n",
       "      <td>3942714.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>267102.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>5634343.0</td>\n",
       "      <td>10623258.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ELLIOTT STEVEN</th>\n",
       "      <td>350000.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-400729.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>4890344.0</td>\n",
       "      <td>78552.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12961.0</td>\n",
       "      <td>False</td>\n",
       "      <td>1788391.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>170941.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>211725.0</td>\n",
       "      <td>6678735.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>CORDES WILLIAM R</th>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>651850.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>False</td>\n",
       "      <td>386335.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>58.0</td>\n",
       "      <td>764.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>1038185.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>HANNON KEVIN P</th>\n",
       "      <td>1500000.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-3117011.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>5538001.0</td>\n",
       "      <td>34039.0</td>\n",
       "      <td>32.0</td>\n",
       "      <td>32.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>...</td>\n",
       "      <td>1617011.0</td>\n",
       "      <td>11350.0</td>\n",
       "      <td>True</td>\n",
       "      <td>853064.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>243293.0</td>\n",
       "      <td>1035.0</td>\n",
       "      <td>1045.0</td>\n",
       "      <td>288682.0</td>\n",
       "      <td>6391065.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 21 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                      bonus  deferral_payments  deferred_income  \\\n",
       "METTS MARK         600000.0                NaN              NaN   \n",
       "BAXTER JOHN C     1200000.0          1295738.0       -1386055.0   \n",
       "ELLIOTT STEVEN     350000.0                NaN        -400729.0   \n",
       "CORDES WILLIAM R        NaN                NaN              NaN   \n",
       "HANNON KEVIN P    1500000.0                NaN       -3117011.0   \n",
       "\n",
       "                  director_fees  email_address  exercised_stock_options  \\\n",
       "METTS MARK                  NaN            NaN                      NaN   \n",
       "BAXTER JOHN C               NaN            NaN                6680544.0   \n",
       "ELLIOTT STEVEN              NaN            NaN                4890344.0   \n",
       "CORDES WILLIAM R            NaN            NaN                 651850.0   \n",
       "HANNON KEVIN P              NaN            NaN                5538001.0   \n",
       "\n",
       "                  expenses  from_messages  from_poi_to_this_person  \\\n",
       "METTS MARK         94299.0           29.0                     38.0   \n",
       "BAXTER JOHN C      11200.0            NaN                      NaN   \n",
       "ELLIOTT STEVEN     78552.0            NaN                      NaN   \n",
       "CORDES WILLIAM R       NaN           12.0                     10.0   \n",
       "HANNON KEVIN P     34039.0           32.0                     32.0   \n",
       "\n",
       "                  from_this_person_to_poi        ...          \\\n",
       "METTS MARK                            1.0        ...           \n",
       "BAXTER JOHN C                         NaN        ...           \n",
       "ELLIOTT STEVEN                        NaN        ...           \n",
       "CORDES WILLIAM R                      0.0        ...           \n",
       "HANNON KEVIN P                       21.0        ...           \n",
       "\n",
       "                  long_term_incentive      other    poi restricted_stock  \\\n",
       "METTS MARK                        NaN     1740.0  False         585062.0   \n",
       "BAXTER JOHN C               1586055.0  2660303.0  False        3942714.0   \n",
       "ELLIOTT STEVEN                    NaN    12961.0  False        1788391.0   \n",
       "CORDES WILLIAM R                  NaN        NaN  False         386335.0   \n",
       "HANNON KEVIN P              1617011.0    11350.0   True         853064.0   \n",
       "\n",
       "                  restricted_stock_deferred    salary  \\\n",
       "METTS MARK                              NaN  365788.0   \n",
       "BAXTER JOHN C                           NaN  267102.0   \n",
       "ELLIOTT STEVEN                          NaN  170941.0   \n",
       "CORDES WILLIAM R                        NaN       NaN   \n",
       "HANNON KEVIN P                          NaN  243293.0   \n",
       "\n",
       "                  shared_receipt_with_poi  to_messages  total_payments  \\\n",
       "METTS MARK                          702.0        807.0       1061827.0   \n",
       "BAXTER JOHN C                         NaN          NaN       5634343.0   \n",
       "ELLIOTT STEVEN                        NaN          NaN        211725.0   \n",
       "CORDES WILLIAM R                     58.0        764.0             NaN   \n",
       "HANNON KEVIN P                     1035.0       1045.0        288682.0   \n",
       "\n",
       "                  total_stock_value  \n",
       "METTS MARK                 585062.0  \n",
       "BAXTER JOHN C            10623258.0  \n",
       "ELLIOTT STEVEN            6678735.0  \n",
       "CORDES WILLIAM R          1038185.0  \n",
       "HANNON KEVIN P            6391065.0  \n",
       "\n",
       "[5 rows x 21 columns]"
      ]
     },
     "execution_count": 114,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Converting the datatypes in the given pandas dataframe \n",
    "# into floating points for analysis and replace NaN with zeros.\n",
    "\n",
    "# Coerce numeric values into floats or ints; also change NaN to zero.\n",
    "enron_df_new = enron_df.apply(lambda x : pd.to_numeric(x, errors = 'coerce')).copy().fillna(np.nan)\n",
    "enron_df_new.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(146, 20)"
      ]
     },
     "execution_count": 115,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Dropping column 'email_address' as it is not required in analysis.\n",
    "enron_df_new.drop('email_address', axis = 1, inplace = True)\n",
    "\n",
    "# Checking the changed shape of df.\n",
    "enron_df_new.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Outlier Investigation & Analyzing the Features <a id='outliers'></a>\n",
    "\n",
    "The features can be categorized as the following.\n",
    "\n",
    "**Financial Features (in US dollars):**<br>\n",
    "``salary\n",
    "deferral_payments\n",
    "total_payments\n",
    "loan_advances\n",
    "bonus\n",
    "restricted_stock_deferred\n",
    "deferred_income\n",
    "total_stock_value\n",
    "expenses\n",
    "exercised_stock_options\n",
    "other\n",
    "long_term_incentive\n",
    "restricted_stock\n",
    "director_fees``\n",
    "\n",
    "**Email Features (count of emails):**<br>\n",
    "``to_messages\n",
    "email_address\n",
    "from_poi_to_this_person\n",
    "from_messages\n",
    "from_this_person_to_poi\n",
    "shared_receipt_with_poi``\n",
    "\n",
    "**POI Labels (boolean):**<br>\n",
    "``poi``\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Financial Features: `Bonus` and `Salary`"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n",
    "Drawing scatterplot of **Bonus vs Salary** of Enron employees."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 116,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAe8AAAFlCAYAAADComBzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XtcFmX+//E33JzFPJS5FlKEUamV4SnXyCOrqKiFBqi3\nndzsZGma2pasmeEhNrW+pqZlRe6ieUip1H6gZpkaUmqUmuEhKSsqLeFWOdzX7w/We0UB0bzFgdfz\nH5i55p753PMYfXPNXDPjYYwxAgAAluFZ1QUAAICzQ3gDAGAxhDcAABZDeAMAYDGENwAAFkN4AwBg\nMYQ3qtzWrVtlt9sVHR2tXr16aciQIdq9e/c5r2/79u1KSEhwTd9333367bffzkepkqSXX35ZEyZM\nOONy57LdTz75RJ06dVJMTIyOHTtWqi07O1sPPPCAoqOjFR0drUGDBmnLli3nrd4LbenSpWrZsqX6\n9Omj3r17q0ePHho6dKh+/vnnqi7tvFm3bp1mzJhRZlvnzp3VrVs39enTR3379lXPnj2VmJgop9Pp\nWmblypXq37+/unfvrujoaD3yyCPatWuXq33p0qUaOnSo278HLj5eVV0AaraCggINHTpUr7/+upo1\nayZJWr58uf7+978rPT1dNpvtrNf57bff6qeffnJNb9iw4bzVezbOZbvvv/+++vfvr4cffvi0tsce\ne0zDhw9XZGSkJCkjI0NDhw5Venq66tat+6frrQqtWrXSnDlzXNPjx4/XSy+9pIkTJ1ZhVefPl19+\nqd9//73c9qSkJN14442SSv4t2O12/fvf/9agQYP09ttva8mSJXrhhRfUpEkTSdJHH32k++67T/Pm\nzdMNN9xwQb4DLk6EN6rU0aNHdeTIETkcDte83r17KzAwUMXFxbLZbFq8eLHmz58vT09P1atXT1Om\nTFHDhg2VmJiobdu2KT8/X8YYTZw4UVdccYVeeuklHTlyRE899ZRrnXfffbdeffVVeXp6asKECTp4\n8KAKCwvVs2dPPfjgg8rJydHAgQMVGhqq77//XpMnT9YTTzyhNm3aaOfOnTLGKCEhQa1atSpV/+7d\nuzVhwgQdPnxYHh4euu+++9S3b1/Xtk9st1GjRq7PFBYWavLkydq4caNsNptuuukmPfXUU0pJSVF6\nerp8fX115MgRjRkzptS2cnNzS+2n1q1ba/r06a4/cGbPnq20tDQdP35cR48e1ZgxY1xBf8LatWs1\nZ84cFRQU6LffflPfvn01fPhwbd68Wc8//7wCAgLkcDjUrFkzNWjQQE888YQkacWKFVq9erVmzpzp\nWtcnn3yiKVOmKDU1VZL0xx9/qEuXLkpLS9P777+vlJQUeXt7y9fXVxMmTHAFUHkKCwuVl5enxo0b\nV7ifAgMD1blzZ91xxx3auHGjDh48qKioKI0ePVqbN2/Wc889p/fee0+SSk1nZ2fr6aefVkFBgYwx\n6tevnwYOHFiqhkceeUQdO3ZU//79tXXrVsXGxiotLU2NGzfWrFmzdOTIEY0ePdq1/KnHTXJysi6/\n/HJJ0rZt25SSkqLi4mLVrl1bI0aMqPD7+/j4qGXLltqzZ48KCgo0bdo0LVq0SKGhoa5lOnTooL//\n/e+aNm2aXn311QrXh2rOAFXs9ddfNzfddJPp3LmzGTVqlHnnnXeMw+EwxhizY8cO07ZtW/PDDz8Y\nY4yZP3++GTdunPn888/NsGHDTHFxsTHGmDlz5pihQ4caY4xZsmSJeeCBB1zrDwsLM7/++qsxxhi7\n3W7S09ONMcYcO3bM2O128/7775sDBw6YsLAwk5GRYYwxrukVK1YYY4xZt26dad++vSkoKDAvvfSS\nefbZZ01hYaHp0qWLWb16tTHGmB9//NFERESYzz///LTtnmzGjBnm0UcfNQUFBaa4uNiMHTvWjBs3\nzhhjzJgxY8y8efPK3E+pqammVatWpn379uaxxx4zycnJ5tChQ8YYY3JycozdbjdHjx41xhjz3nvv\nmV69ehljjKtep9NpBg0aZPbu3euq94YbbjC//vqr2bRpk7n++utNTk6OMcaYr7/+2rRv394UFhYa\nY4wZMGCAWb9+fal6nE6n6dSpk9m+fbsxxpgFCxaYkSNHmqKiItOsWTPz008/GWOMWbZsmUlJSTnt\n+yxZssSEh4eb3r17m+joaNOmTRsTERHhqqGi/dSpUyczefJk1/e48cYbzXfffWc2bdpkevbs6drG\nydNPPfWUmTNnjjHGmJ9//tkMHz7cdfycsGzZMjNs2DDXfmvfvr2r9piYGLNt27ZSy5963JzqxL4v\ny8n77sT36N69u1m1apX58ssvTdu2bcv83M6dO014eLhrH558rKPmsFzPe9u2bUpKSlJycnK5y0ya\nNEmZmZny9PTUmDFj1LJlywtYIc7Wvffeq/79+ysjI0MZGRmaO3eu5s6dq8WLF2vjxo267bbbXD3X\ne+65x/W5OnXqKCUlRQcOHNDmzZtVq1atCrfjcDiUkZGh33//3XUd0uFwaOfOnbrpppvk5eWlFi1a\nlFp/dHS0pJIej81mK3W9cd++fTp+/Lj+9re/SZIaNmyov/3tb/r44491yy23lFvH+vXrNWLECHl7\ne0uS7Ha7HnnkkTPup169eikyMlKZmZnKyMjQkiVLNGvWLC1cuFBBQUGuXvD+/ftdZyRO5uHhodmz\nZ2vdunWunqgxRkePHpUkNWrUSFdeeaUk6YYbblBQUJDWrVunkJAQ/fzzz7rttttOW1+/fv20bNky\n3XjjjVq6dKmefPJJ2Ww2de/eXXFxcerYsaPat2/v2o+nOvm0udPp1FtvvaUhQ4bogw8+OON+6tKl\ni2u/X3rppRWenpakyMhIjRkzRtu3b1e7du30zDPPyNOz9LCfTp06adKkSSoqKtInn3yihx56SBs2\nbFDHjh3166+/uk5xn+zU4+ZsjBo1Sn5+fnI6nfL29lb//v3VrVs3ZWVlqaioqMzPFBQUyMPD45y2\nh+rDUgPW5s6dq2eeeUbHjx8vd5mdO3fqiy++0DvvvKOpU6fq+eefv4AV4mxlZmZq3rx5CgwMVKdO\nnTR69Gi9//778vT01IYNG2Sz2Ur9R3Xs2DFlZ2dr3bp1roE6Xbp0UXx8/Bm35XQ6ZYxRSkqKli9f\nruXLl2vhwoWu9fj4+MjL639/z556vd3pdJaad/LAohOMMeX+p1ve55xOpwoLCyv8THZ2tpKSkuTr\n66u//vWvevzxx7Vs2TKFhYVp9erV+uqrrxQXF6e8vDy1b99eQ4YMOW0dDodDd9xxh7766is1bdpU\no0ePlpeXl8x/X28QEBBQavmBAwdqyZIlWrx4se66664yAyMmJkYrV67Ujh07dOTIEbVt21ZSybXc\n2bNnKzg4WHPnztWjjz5a4feTJE9PT8XGxmrPnj369ddfz7iffH19Xb97eHjIGOP6ecLJy3fq1Emr\nV69WVFSUduzYoejoaH333XeltlGnTh01bdpUa9eu1ZEjR9SnTx9t2bJFaWlp6tq1a5n74NTj5mwk\nJSVp+fLlSk1N1dKlS3XfffdJkq699lpJ0o4dO077zObNmyv84xA1g6XCOzg4WC+//LJreteuXbLb\n7bLb7Ro2bJiOHDmiyy+/XH5+fiooKFBeXt45/6PChVG/fn3NmjWr1Kjp3NxcHT16VGFhYWrbtq02\nbtzoGoGckpKiF154QRs2bFCnTp00YMAA3XjjjUpLS1NxcbGkktA9OUBPTAcGBqpFixaaP3++pJJr\ntPHx8UpPTy+ztt9++03r16+XJK1Zs0be3t4KCwtztYeEhMjb21sffvihJOmnn37S6tWr9de//rXM\nOk6IiIhQSkqKCgsL5XQ6tWDBArVv377C/XTZZZdp0aJFWrVqlWve4cOH9csvv6hp06bKyMhQ8+bN\nde+996pNmzZKT0937Y8T9u/fr7y8PA0fPlydO3fWZ599poKCgjL/CJGkbt26aceOHfrwww8VExNT\n5jINGzbUzTffrISEBPXr18+13zp06KC6devqnnvu0fDhw0udsajI//t//09XXnml6tevf077qX79\n+vrhhx/066+/yhijtLQ0V9vIkSP1wQcfqGfPnvrnP/+pwMBAHTx48LR1dO3aVS+++KLatWunwMBA\nhYSEaO7cuerWrVulvsPJyjsGzsTX11ejRo3S6NGjlZ2d7Zq/bt06vfbaa3r88cfPep2oXiyVbN26\ndVNOTo5rety4cUpMTFSTJk30zjvvaN68ebr//vvl6empqKgoHTlyRM8991wVVowzCQkJ0cyZMzVt\n2jT9+OOP8vX1Ve3atTVhwgRdc801kqQnn3zS1ZNs0KCBEhMTlZeXp1GjRik6Olo2m02tWrXShx9+\nKKfTqVtuuUXTp0/XI488opkzZyoyMlIDBgzQK6+8oqSkJD333HOKjo5WQUGBevXqpd69e5c6rk7w\n9fXV8uXLlZSUJD8/P82cObNUz9vb21uvvPKKJk6cqJdfflnFxcV65JFHdOutt0pSqe2eHPoPPfSQ\npkyZor59+6qoqEg33XSTxo0bV+F+qlOnjt58803961//0tSpU+Xv7y8fHx/df//9ateuna699lp9\n+OGH6tGjh7y9vdWuXTv9/vvvysvLc63juuuuU8eOHRUVFaVLLrlEwcHBatKkifbv3y8fH5/Ttunj\n46Nu3brpl19+Uf369cutrX///nr88cc1a9YsSSUB+tBDD+mee+6Rn5+fbDZbuaPHt2zZoj59+sjD\nw0NFRUWqW7euZs6cKU9Pz3PaT02aNFFcXJxiYmLUoEEDdezY0dX28MMP6+mnn9bChQtls9nUtWtX\ntWnT5rR1dO3aVc8995xGjRolSbrtttu0YMEChYeHSyr5I+2BBx4od8DY008/rebNmys+Pl7t2rXT\n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\nlWqzRHgDAID/YcAaAAAWQ3gDAGAxhDcAABZDeAMAYDHVOrydTqcSEhIUGxsru92u/fv3l2pfs2aN\nYmJiFBsbq0WLFlVRlRePM+2vN954Qz179pTdbpfdbteePXuqqNKLy7Zt22S320+bz/FVtvL2F8dX\naYWFhXryySc1YMAA9evXT+np6aXaOb5Od6Z9Vq2OMVONrV692owZM8YYY8wXX3xhHnzwQVdbQUGB\n6dq1qzl8+LA5fvy4ufPOO01ubm5VlXpRqGh/GWPMyJEjzZdfflkVpV20Xn31VdOrVy/Tv3//UvM5\nvspW3v4yhuPrVIsXLzYTJ040xhhz6NAh06FDB1cbx1fZKtpnxlSvY6xa97wzMzMVEREhSWrRooWy\nsrJcbdnZ2QoODladOnXk4+Ojli1bKiMjo6pKvShUtL8k6auvvtKrr76q+Ph4zZkzpypKvOgEBwfr\n5ZdfPm0+x1fZyttfEsfXqbp3767HH39ckmSMKfWMC46vslW0z6TqdYxV6/DOy8tTYGCga9pms6mo\nqMjVVrt2bVdbrVq1lJeXd8FrvJhUtL8kqWfPnho/frzefPNNZWZmau3atVVR5kWlW7du8vI6/UGF\nHF9lK29/SRxfp6pVq5YCAwOVl5enxx57TMOHD3e1cXyVraJ9JlWvY6xah3dgYKDy8/Nd006n0/Uf\nx6lt+fn5pf4x1EQV7S9jjO6++27Vr19fPj4+6tChg77++uuqKvWix/F1dji+ynbw4EENHjxYffr0\nUXR0tGs+x1f5yttn1e0Yq9bhHR4ervXr10uStm7dqrCwMFdbaGio9u/fr8OHD6ugoEBbtmzRLbfc\nUlWlXhQq2l95eXnq1auX8vPzZYzR5s2b1bx586oq9aLH8XV2OL5O98svv+i+++7Tk08+qX79+pVq\n4/gqW0X7rLodY5Z4Mcm5ioyM1IYNGxQXFydjjBITE5WamiqHw6HY2FiNHTtW999/v4wxiomJUcOG\nDau65Cp1pv01YsQIDR48WD4+PmrXrp06dOhQ1SVfdDi+zg7HV/lmz56tP/74Q6+88opeeeUVSVL/\n/v119OhRjq9ynGmfVadjjGebAwBgMdX6tDkAANUR4Q0AgMUQ3gAAWAzhDQCAxRDeAAC4UXnP8z9h\n/fr1ruetDxo0SDfccIOys7MrXGe1vlUMwP+sWrVKr776qoqKimSMUZ8+fTRkyJByl7fb7Xr00UfV\ntm3bC1glUL3MnTtXK1askL+/f7nL3H777br99tslSfPmzVN4eLhCQ0MrXC/hDdQAP/30k6ZMmaKl\nS5eqXr16ys/Pl91uV0hIiLp06VLV5QHV1onn+Y8ePVqStGvXLk2cOFGSVLduXSUmJrqejvfjjz9q\n+fLlWrJkyRnXS3gDNcChQ4dUWFioY8eOSSp5BvTkyZPl6+urlStXav78+Tp27JiOHz+uiRMnqnXr\n1q7PFhUVafz48dq9e7d++eUXhYSE6P/+7//0yy+/aMiQIapXr558fX1VUFCghx9+WLfddpuMMerW\nrZuSk5N5eAhqtG7duiknJ8c1PW7cOCUmJqpJkyZ65513NG/ePI0YMUKSNH/+fN1zzz3y8fE543oJ\nb6AGuP7669WlSxd17dpVN9xwg9q2bavo6Gg1btxYCQkJmj17turXr6/FixfrtddeKxXeX3zxhby9\nvbVw4UI5nU7dfffd+uijj9SsWTPt3btX8+bNU1BQkJYsWaIVK1botttu05YtWxQcHExwA6fIzs7W\ns88+K6nk/eNXX321pJJ3Saxbt84V5GdCeAM1xLPPPquHH35Yn3zyiT755BPdddddSkpK0syZM7Vm\nzRrt3btXn332mTw9S49jbd26terWrasFCxZoz5492rdvnxwOhyTp0ksvVVBQkCQpKipK06ZN09Gj\nR7Vs2TLdeeedF/w7Ahe7kJAQTZkyRVdccYUyMzOVm5srSfrmm28UEhIiPz+/Sq2H0eZADbBu3Tp9\n8MEHatiwoWJiYjRt2jQ988wzWrBggWJiYpSTk6PWrVuXOSI2PT1do0aNkp+fn+688061bt1aJ56q\nfPJ/NAEBAbr99tu1atUqbdq0SV27dr1g3w+wivHjx2vMmDGKj4/Xv/71L1133XWSpL1796px48aV\nXg89b6AG8PPz03PPPaebbrpJQUFBMsbo22+/lY+Pjzw9PfXggw9Kkp555hkVFxeX+uzGjRsVFRWl\nmJgY/fTTT8rIyFC7du3K3E5MTIxGjBihTp06Veq6HVATBAUFadGiRZKk5s2bKzk5+bRloqKiFBUV\nVel1Et5ADXDrrbfq0Ucf1YMPPqjCwkJJUkREhGbOnKmxY8cqKipKfn5+at26tX744YdSn+3fv79G\njRqlVatWycfHRy1atCg1AOdkLVu2lIeHh2JiYtz+nYCajLeKATgvjDH65ptvNGbMGL377rtVXQ5Q\nrdHzBnBevPnmm5o3b55mzJhR1aUA1R49bwAALIbR5gAAWAzhDQCAxRDeAABYDOENAIDFEN4AAFgM\n4Q0AgMX8fx/uUB/rE3BwAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x114e64c18>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(enron_df_new['salary'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['bonus'][enron_df_new['poi'] == True], \n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "plt.scatter(enron_df_new['salary'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['bonus'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "    \n",
    "plt.xlabel(\"Salary\")\n",
    "plt.ylabel(\"Bonus\")\n",
    "plt.title(\"Scatterplot of Salary vs Bonus w.r.t POI\")\n",
    "plt.legend(loc='upper left')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It can be noted from the above figure, one non-POI point has very high value of salary and bonus. Checking for the concerned point."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'TOTAL'"
      ]
     },
     "execution_count": 117,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Finding the non-POI employee having maximum salary\n",
    "enron_df_new['salary'].argmax()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nViIjI7nvvvsAWLduHdu2bcPT05OFCxcSFhZGcXExCQkJlJeX07t3b1asWEH37t3dechdSxuvIS4i\nIm3LbWPuR1ATAAAgAElEQVQSKioqMMaQmppKamoqK1asYMWKFcTHx5OWloYxhszMTI4dO0Zqairp\n6em88MILJCcnU1lZycaNGwkNDSUtLY3JkyeTkpICwJIlS1i1ahUbN25kz549fPrpp+Tn5/Pxxx/z\nyiuvkJyczNKlSwFISUlhwoQJpKWlMXjwYDZt2uSuwxUREel03BYk7N+/n5MnTzJr1ixuv/128vLy\nyM/PZ/jw4QCMGjWK7Oxs9u7dy9ChQ/H29iYgIICQkBD2799Pbm4uI0eOdObduXMnNpuNyspKQkJC\nsFgsREZGkp2dTW5uLpGRkVgsFvr27UtNTQ3FxcVnlJGdne2uwxUREel03Nbd0K1bN377298ybdo0\nDhw4wF133YUxBovFAoCfnx8lJSXYbDYCAgKcn/Pz88Nms9VLr5u3tvuiNr2wsBAfHx969uxZL/30\nsmvTREREpHncFiT079+fSy65BIvFQv/+/enZsyf5+fnO7aWlpfTo0QN/f39KS0vrpQcEBNRLbyxv\njx498PLyarSMbt26OfOKiIhI87itu+Evf/kLTzzxBABff/01NpuNa665hpycHAB27NhBREQEYWFh\n5ObmUlFRQUlJCQUFBYSGhhIeHs727dudeYcNG4a/vz9eXl4cOnQIYwxZWVlEREQQHh5OVlYWdrud\nI0eOYLfbCQwMdFmGiIiINI/bWhKmTp3KggULiI6OxmKxsHz5cnr16sWiRYtITk5mwIABjB8/HqvV\nSkxMDDNnzsQYw9y5c/Hx8SE6OprExESio6Px8vJi1apVACxdupSEhARqamqIjIxkyJAhAERERDB9\n+nTsdjuLFy8GIDY2lsTERDIyMujVq5ezDBEREWmaxRhj2rsSHUVRURFjx44lMzOToKCg9q6OiIiI\nWzV13dOyzCIiIuKSggQRERFxSUGCiIiIuKQgQURERFxSkCAiIiIuKUgQERERlxQkiIiIiEsKEkRE\nRMQlBQkiIiLikoIEERERcUlBgoiIiLikIEFERERcUpAgIiIiLilIEBEREZeaFSR8//33ZGdnA7Bh\nwwYeeOABvvjiC7dWTERERNpXs4KEBx98kC+//JLs7Gzee+89rr32WpYsWeLuuomIiEg7alaQ8MMP\n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\n/ul2TQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116782400>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Deleting the row 'Total' from the dataframe\n",
    "enron_df_new.drop('TOTAL', axis = 0, inplace = True)\n",
    "\n",
    "# Drawing scatterplot with the modified dataframe\n",
    "plt.scatter(enron_df_new['salary'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['bonus'][enron_df_new['poi'] == True], \n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "plt.scatter(enron_df_new['salary'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['bonus'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "    \n",
    "plt.xlabel(\"Salary\")\n",
    "plt.ylabel(\"Bonus\")\n",
    "plt.title(\"Scatterplot of Salary vs Bonus w.r.t POI\")\n",
    "plt.legend(loc='upper left')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "From the above figure, it is observed that the data becomes more spread out and more comprehensible after the outlier removal. Its also observed **that values of bonuses of POIs are higher than that of non-POIs**.\n",
    "\n",
    "As the POI's were taking larger amounts of money as a bonus, in addition to their high salary, it can be stated that the ratio of bonus to the salary of the POI's will be higher as compared to that of non-POI's. Hence, **a new feature called bonus-to-salary_ratio is created** in the hope that it may aid in the POI identification in the later parts of this project. <a id=#new_features_1></a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 119,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "enron_df_new['bonus-to-salary_ratio'] = enron_df_new['bonus']/enron_df_new['salary']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Removing Outlier: 'THE TRAVEL AGENCY IN THE PARK.'\n",
    "\n",
    "From the _enron61702insiderpay.pdf_ provided by findlaw.com, a dataset was observed named 'THE TRAVEL AGENCY IN THE PARK' It is known that Enron had made up some transactions with bogus companies and people [reference](http://www.brighthub.com/office/finance/articles/101200.aspx). So on observing the features of this dataset, it can be considered as an outlier with very low values in all features except in _others_ and _total-payments_. Hence, it is removed. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 120,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bonus                           NaN\n",
       "deferral_payments               NaN\n",
       "deferred_income                 NaN\n",
       "director_fees                   NaN\n",
       "exercised_stock_options         NaN\n",
       "expenses                        NaN\n",
       "from_messages                   NaN\n",
       "from_poi_to_this_person         NaN\n",
       "from_this_person_to_poi         NaN\n",
       "loan_advances                   NaN\n",
       "long_term_incentive             NaN\n",
       "other                        362096\n",
       "poi                           False\n",
       "restricted_stock                NaN\n",
       "restricted_stock_deferred       NaN\n",
       "salary                          NaN\n",
       "shared_receipt_with_poi         NaN\n",
       "to_messages                     NaN\n",
       "total_payments               362096\n",
       "total_stock_value               NaN\n",
       "bonus-to-salary_ratio           NaN\n",
       "Name: THE TRAVEL AGENCY IN THE PARK, dtype: object"
      ]
     },
     "execution_count": 120,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Features of the index 'THE TRAVEL AGENCY IN THE PARK'\n",
    "enron_df_new.loc['THE TRAVEL AGENCY IN THE PARK']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 121,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Deleting the row with index 'THE TRAVEL AGENCY IN THE PARK'\n",
    "enron_df_new.drop('THE TRAVEL AGENCY IN THE PARK', axis = 0, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Financial Features: `deferred_income`, `deferred_payment` and `total_payment`"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "According to http://www.businessdictionary.com/, \n",
    "\n",
    "Deferred payment is \"a loan arrangement in which the borrower is allowed to start making payments at some specified time in the future. Deferred payment arrangements are often used in retail settings where a person buys and receives an item with a commitment to begin making payments at a future date.\"\n",
    "\n",
    "Deferred income (also known as deferred revenue, unearned revenue, or unearned income) is, in accrual accounting, money received for goods or services which have not yet been delivered. According to the revenue recognition principle, it is recorded as a liability until delivery is made, at which time it is converted into revenue.\n",
    "\n",
    "As Enron scam involved a lot of undisclosed assets and cheating public by selling assets to shell companies at the end of each month and repurchasing them at the start of next month to hide the accounting losses, there are chances that a lot of deferred revenue by the company was used by the POIs."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 122,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    4.800000e+01\n",
       "mean    -5.810498e+05\n",
       "std      9.420764e+05\n",
       "min     -3.504386e+06\n",
       "25%     -6.112092e+05\n",
       "50%     -1.519270e+05\n",
       "75%     -3.792600e+04\n",
       "max     -8.330000e+02\n",
       "Name: deferred_income, dtype: float64"
      ]
     },
     "execution_count": 122,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "enron_df_new['deferred_income'].describe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The **deferred_income** feature has mostly negative values as it is the money which has to be returned by the company."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 123,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Length of po list:  18\n",
      "Length non-poi list:  126\n"
     ]
    }
   ],
   "source": [
    "# Finding out the integer index locations of POIs and non-POIs.\n",
    "poi_rs = []\n",
    "non_poi_rs = []\n",
    "for i in range(len(enron_df_new['poi'])):\n",
    "    if enron_df_new['poi'][i] == True:\n",
    "        poi_rs.append(i+1)\n",
    "    else:\n",
    "        non_poi_rs.append(i+1)\n",
    "\n",
    "print(\"Length of po list: \", len(poi_rs))\n",
    "print(\"Length non-poi list: \", len(non_poi_rs))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Drawing a scatterplot of **Eemployees with deferred income**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 124,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgkAAAFlCAYAAABhvHtEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8VPW9//HXZAWSIMStUAgImnrFgkAUekmwiEC1QSiy\nJRgVxCIVJHiDgchSRDYFZA1CtXqlQgjQiv1ZK23K0hhAjAKXAFqpSFiUSAQzCdlmvr8/phkTGMJA\nMplMeD8fDx7DfM+ZM59zZk7OZ77bsRhjDCIiIiIX8PN2ACIiIlI/KUkQERERl5QkiIiIiEtKEkRE\nRMQlJQkiIiLikpIEERERcUlJgtRre/fuJSEhgf79+xMbG8vo0aP517/+ddXb279/P9OnT3c+HzVq\nFPn5+bURKgDLli3jhRdeuOx6V/O+mZmZ9OrVi4cffpji4uIqy+677z769evHgAEDqvz75JNPrug9\nLsXd/aqPnn/+ebKysgCYOnUqBw4cACAhIYG//vWvV7y92NhYdu/eXe06NpuNsWPH0q9fP/7whz9c\nedBX4YUXXmDZsmUXla9bt47Vq1fXSQzS8AR4OwCRSyktLWXMmDH8/ve/p0OHDgBs3ryZJ598koyM\nDPz9/a94m1988QXffPON8/mHH35Ya/Feiat53/fee48hQ4bwm9/8xuXyBQsW8NOf/rSmoTU4s2fP\ndv4/KyuLYcOGefw9v/nmGzIzM9m7d+9VfU9rU1xcnFffX3ybkgSpt86fP09BQQFFRUXOsoceeojQ\n0FBsNhv+/v5s3LiRN954Az8/P5o3b878+fO5+eabmTNnDvv27aOwsBBjDC+++CItW7Zk6dKlFBQU\nMGXKFOc2H3vsMVavXo2fnx8vvPACp06doqysjF/+8pc89dRTHD9+nBEjRtC+fXtOnDjBvHnzePbZ\nZ7nnnns4fPgwxhimT59OVFRUlfj/9a9/8cILL3D27FksFgujRo1i4MCBzveueN8WLVo4X1NWVsa8\nefPYuXMn/v7+dOzYkSlTppCWlkZGRgbBwcEUFBSQnJzs9nE8fvw4jz32GN27d2fv3r2Ul5fz3HPP\nsX79ev79739z5513smjRIk6ePElCQsJV79fUqVMJDw/n2WefBeDdd9/lgw8+YMWKFfzjH/9g5cqV\nlJWV0ahRI5KTk+ncuTMAK1euZMuWLdjtdn784x8zY8YMbr75ZrZs2cLKlSuxWCz4+/vz3HPPcffd\ndzvjsNls9OjRg/Xr19OmTRtWr17NunXr2Lp1KwAjR47k8ccf57XXXmPEiBEcOnSI06dPk5SUxEsv\nvQRARkYGr732GmfOnOFnP/sZL774In5+VStYv/jiC1JSUjh//jzt2rWr8n385JNPWLBgAefPn8di\nsTB+/HjuvvtuRo8eTXl5OYMGDWLZsmWUlZUxe/Zszp49i81mIyEhgcGDB7N7925mz55NkyZNKCoq\nYtKkSbz88svO5xs3biQzM9PlsbNarTz//PMcPnyYm266CX9/f7p27XrR579s2TK+++47pk+fzn33\n3cevfvUrdu7cyalTp3jggQd47rnnAFyeSy1atGD9+vWsWbMGPz8/brjhBqZNm8Ytt9zC5MmTCQ4O\n5v/+7//49ttveeCBBwgPD2fr1q3k5eXx4osv8rOf/YzS0lIWLFjAnj17sNls3HHHHUydOpXQ0FC3\nv8PiRUakHvv9739vOnbsaO677z6TlJRkNmzYYIqKiowxxhw6dMh069bNnDx50hhjzBtvvGGmTZtm\nPvnkEzN+/Hhjs9mMMcasWrXKjBkzxhhjzKZNm8yvf/1r5/YjIyPNmTNnjDHGJCQkmIyMDGOMMcXF\nxSYhIcG89957Jjc310RGRpo9e/YYY4zz+bvvvmuMMWbbtm2mR48eprS01CxdutTMnDnTlJWVmd69\ne5sPPvjAGGPM119/bWJiYswnn3xy0ftWtmTJEjNu3DhTWlpqbDabmTx5spk2bZoxxpjk5GTz2muv\nuTxOvXr1Mn379jUPPfSQ89/gwYOrxPv3v//dGGPM9OnTTa9evUxBQYEpLi42PXr0MNnZ2TXer4MH\nD5oePXqYsrIyY4wx8fHxZseOHebLL780sbGxJj8/3xhjzOeff2569OhhCgsLzZ/+9CeTmJjofE1a\nWpoZPXq0McaY3r17m08//dQYY8w///lPs2zZsov2e/LkyWbNmjXGGGMeeeQR06NHD/Pvf//bfP/9\n96Zbt26mpKTEPPLII+b99993Hqf9+/c71x87dqwpLy83RUVFpkePHs7PuLIBAwaY9PR0Y4wxH3/8\nsfnJT35idu3aZc6ePWv69u1rcnNznceiZ8+e5sSJEyY3N9fcddddxhhjysrKzIMPPmgOHDhgjDHm\n+++/Nw888ID59NNPza5du8ztt99ujh8/bowxFz2v7tjNnj3bPPfcc8Zut5szZ86Ynj17mqVLl14U\nf8VnV7H/8+bNc8b705/+1Bw7duyS51JWVpa5//77nd/VTZs2mQceeMDY7XaTnJxshgwZYkpLS83p\n06dNZGSkeeutt4wxxrz55ptm5MiRxhhjli1bZubNm2fsdrsxxpiFCxeaGTNmXBSn1E+qSZB6beTI\nkQwZMoQ9e/awZ88efve73/G73/2OjRs3snPnTqKjo52/xB9//HHn66677jrS0tLIzc1l9+7dhISE\nVPs+RUVF7Nmzh3PnzrFkyRJn2eHDh+nYsSMBAQHcddddVbbfv39/AO699178/f357LPPnMuPHj1K\nSUkJffv2BeDmm2+mb9++/POf/3T+gnZlx44dTJw4kcDAQMDRbv7000+7dayqa24IDAzkvvvuAyAi\nIoLOnTs7f8nddNNNnDt3jptuuqlG+/XMM8/QqlUrtm3bxi233MLp06eJjo5m7dq1nD59usrnY7FY\nOHbsGFu3buX//u//ePjhhwGw2+2cP38egF/+8peMGzeOe++9lx49evDkk09etF99+vQhLS2NgQMH\ncvr0aWJjY8nKyuK6664jJiaGoKCgao/Zgw8+iL+/P40bN6Zt27acOXOmyvLvvvuOzz77jIEDBwLQ\ntWtXbrvtNsDRXyYvL6/K52OxWPjss8+c61Qcs2PHjpGSkuIsKy4u5uDBg7Rv354WLVrw4x//2Lms\n8vMPP/zwksdu586dpKSkYLFYCA8Pp0+fPtXua4XevXsDjs/u+uuv59y5c+zZs8flufTSSy/x4IMP\nEh4eDsCgQYOYPXs2x48fB6BXr14EBgZy44030qRJE2JiYgDHd+zs2bMAbNu2jYKCAme/kLKyMq6/\n/nq3YhXvU5Ig9VZ2djaffvopo0ePplevXvTq1Ytnn32W/v378+GHH+Lv74/FYnGuX1xczIkTJ8jN\nzWX27NmMHDmS3r17065dO959991q38tut2OMIS0tjcaNGwOQn59PcHAw3333HUFBQQQE/HC6XNjO\nbLfbq5TZ7faL3sMYQ3l5+WXjuPB5WVlZta9xR2BgYJVjVZGEXKim+zVixAg2bdpE27ZtGTp0KBaL\nBbvdzs9+9jMWL17sfM2pU6e46aabsNvtjB49mvj4eMDRD+XcuXMATJw4kcGDB5OZmckf//hHVq9e\nzR//+McqzQE9evRg6tSpbN++nW7duvHf//3frFu3jsaNG/Pggw9e9rhU/kwtFgvmglvZVByzyuUV\n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\nZBHgMjUJTz31FKtWreL06dMsqdw2h6MD41tvveXR4HxRkyYwYEDVpswKAwY4lotIPacTWQS4TJIw\ndOhQhg4dyooVK3j66afrKiaft2CB43HzZkfNZOvWjr8rFeUi4gN0Iou413HxySef5NVXXyU5ORmr\n1cry5cspLS31dGw+KyDA0fk5Jwc++8zxuHixo1xEfIRO5AZHU15cObeShBdeeIGioiJycnLw9/fn\n2LFjPP/8856Ozec1aeLo26SaSREfphPZ52nKi6vnVpKQk5PDs88+S0BAAI0bN2b+/PkcOnTI07GJ\niIjUWMWUF0ePgt3+w5QXSUnejqz+cytJsFgslJaWOidT+u6775z/FxERqa805UXNuJUkPProo4wc\nOZK8vDxmz57Nww8/zGOPPebp2ERERGrEnSkv5NKq7YHzTqX065e//CXGGGw2GyNHjiRAnXdERKSe\nq5jy4ujRi5dpyovLq/ZKv3v3bgCOHTvGsWPHuPfee/Hz8yMzM5Nbb72VgQMH1kmQIiIiV0NTXtRM\ntUnC3LlzAUhISGDz5s2Eh4cDcO7cOc2bICIiPkFTXlw9t9oMTp8+TbNmzZzPGzduTF5enseCEhER\nqS0VU17MmePog9CihWoQ3OVWkvDzn/+ckSNH0rdvX+x2O3/961954IEHPB2biIhIramY8kLc51aS\nMGXKFD744AM++ugjLBYLo0aNonfv3p6OTURERLzI7SEK/fr1o1+/fp6MRUREROoRt+ZJEBERkWuP\nkgQRERFxSUmCiIiIuKQkQURERFxSkiAiIiIuKUkQERERl5QkiIiIiEtKEkRERMQlJQkiIiLikpIE\nERERccmjScK+fftISEgA4KuvviIuLo74+HhmzJiB3W4HID09nUGDBjF06FC2bt0KQHFxMePHjyc+\nPp4nn3yS/Px8APbu3cuQIUMYPnw4y5cvd77P8uXLGTx4MMOHD2f//v0A5OfnM2rUKOLj40lMTOT8\n+fOe3FUREZEGx2NJwu9+9zumTp1KSUkJAHPnziUxMZG1a9dijCEjI4O8vDzWrFlDWloar7/+OosW\nLaK0tJR169YRGRnJ2rVrGThwIKmpqQDMmDGDhQsXsm7dOvbt28fBgwfJycnho48+YsOGDSxatIiZ\nM2cCkJqaSmxsLGvXruWOO+5g/fr1ntpVERGRBsljSUJERATLli1zPs/JyeGee+4BoGfPnmRlZbF/\n/346d+5MUFAQYWFhREREcPjwYbKzs4mJiXGuu3PnTqxWK6WlpURERGCxWIiOjiYrK4vs7Gyio6Ox\nWCy0bNkSm81Gfn7+RdvIysry1K6KiIg0SB5LEvr160dAwA83mTTGYLFYAAgJCaGgoACr1UpYWJhz\nnZCQEKxWa5XyyuuGhoZWWfdy5RduQ0RERNxXZx0X/fx+eKvCwkKaNm1KaGgohYWFVcrDwsKqlFe3\n7pVuw9cVFcGRI45HERERT6uzJOGOO+5g9+7dAOzYsYOoqCg6duxIdnY2JSUlFBQUcOTIESIjI+nS\npQvbt293rtu1a1dCQ0MJDAzk2LFjGGPIzMwkKiqKLl26kJmZid1u5+TJk9jtdsLDw11uw1eVl0Ni\nInToAJGRjsfEREe5iIiIpwRcfpXakZyczLRp01i0aBHt2rWjX79++Pv7k5CQQHx8PMYYJk6cSHBw\nMHFxcSQnJxMXF0dgYCALFy4EYObMmSQlJWGz2YiOjqZTp04AREVFMWzYMOx2O9OnTwdg7NixJCcn\nk56eTvPmzZ3b8EVJSbBkyQ/Pjx794fnixV4JSURErgEWY4zxdhD1xfHjx+nduzcZGRm0atXK2+EA\njqaFO+6Ar766eFnbtpCTA02a1HlYIiLSAFzuuqfJlOq5U6cgN9f1stxcx3IRERFPUJJQz7VoARER\nrpe1bu1YLiIi4glKEuq5Jk1gwADXywYMUFODiIh4Tp11XJSrt2CB43HzZkcTQ+vWjgSholxERMQT\nlCT4gIAAxyiGOXMcfRBatFANgoiIeJ6SBB/SpAm0b+/tKERE5FqhPgkiIiLikpIEERERcUlJgkgt\n0b01RKShUZIgUkO6t4aINFTquChSQ7q3hog0VKpJEKmBoiJ45x3XyzZvVtODiPg2JQkiNaB7a4hI\nQ6YkQS6iDnju0701RKQhU5IgTuqAd+V0bw0RqYn6/qNMHRfFSR3wro7urSEiV6q83PE3d/NmOHbM\nUSNZ8XcjoB5dmVWTIIA64NVExb01cnLgs88cj4sX168TXUTql4ofZUePgt3+w4+ypCRvR1aVkgQB\n1AGvNlTcW0NNDCJSHV/6UaYkQQB1wBMRqSu+9KNMSYIA6oAnIlJXfOlHmZIEcVqwACZMgLZtwd/f\n8ThhgjrgiYjUJl/6UaauVeJU0QFvzhxHdVeLFvXryyoi0lD4yqgoJQlykYoOeCIi4hm+8qNMzQ0i\nIteI+j5xT0N2qWNf30dFKUkQEWngNJuq9/j6sVdzg4hIA6fZVL3H14+9ahJERBowX5q4p6FpCMde\nSYKISAPmSxP3NDQN4dgrSRARacB8aeKehqYhHHslCSIiDZgvTdzT0DSEY1/nHRd/9atfERoaCkCr\nVq146qmnmDx5MhaLhdtuu40ZM2bg5+dHeno6aWlpBAQEMHbsWHr16kVxcTGTJk3izJkzhISEMH/+\nfMLDw9m7dy+zZ8/G39+f6Ohoxo0bB8Dy5cvZtm0bAQEBpKSk0LFjx7reXXFTUVH9Hiss4st8ZeKe\nhsjnj72pQ8XFxWbAgAFVysaMGWN27dpljDFm2rRpZsuWLeb06dMmNjbWlJSUmO+//975/9///vdm\n6dKlxhhj/t//+39m1qxZxhhjHnroIfPVV18Zu91uRo8ebXJycsyBAwdMQkKCsdvt5sSJE2bQoEGX\njS83N9dERkaa3NzcWt5zuZSyMmMmTDCmbVtj/PwcjxMmOMpFpHYVFhrzxReOR6lb9fXYX+66V6c1\nCYcPH+b8+fOMGjWK8vJynn32WXJycrjnnnsA6NmzJx9++CF+fn507tyZoKAggoKCiIiI4PDhw2Rn\nZzN69GjnuqmpqVitVkpLS4n4T8NPdHQ0WVlZBAUFER0djcVioWXLlthsNvLz8wkPD6/LXZbL8PXh\nQSK+RLOpeo+vHvs6TRIaNWrEE088wZAhQzh69ChPPvkkxhgsFgsAISEhFBQUYLVaCQsLc74uJCQE\nq9VapbzyuhXNFxXlubm5BAcH06xZsyrlBQUFShLqkcsND5ozR00PIiLeVKdJwi233EKbNm2wWCzc\ncsstNGvWjJycHOfywsJCmjZtSmhoKIWFhVXKw8LCqpRXt27Tpk0JDAx0uQ2pP9wZHuSLmbeISENR\np6MbNm7cyLx58wD45ptvsFqt9OjRg927dwOwY8cOoqKi6NixI9nZ2ZSUlFBQUMCRI0eIjIykS5cu\nbN++3blu165dCQ0NJTAwkGPHjmGMITMzk6ioKLp06UJmZiZ2u52TJ09it9tVi1DPNIThQSIiDVmd\n1iQMHjyYKVOmEBcXh8ViYc6cOTRv3pxp06axaNEi2rVrR79+/fD39ychIYH4+HiMMUycOJHg4GDi\n4uJITk4mLi6OwMBAFi5cCMDMmTNJSkrCZrMRHR1Np06dAIiKimLYsGHY7XamT59el7sqbqgYHlS5\n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\nhLDpP3E8YAUiqNyHAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116730358>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Since 'deferred_income' is negative, for intuitive understanding,\n",
    "# a positive person of the variable is created for visualization.\n",
    "enron_df_new['deferred_income_p'] = enron_df_new['deferred_income'] * -1\n",
    "\n",
    "plt.scatter(non_poi_rs,\n",
    "            enron_df_new['deferred_income_p'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(poi_rs,\n",
    "            enron_df_new['deferred_income_p'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "    \n",
    "plt.xlabel('Employees')\n",
    "plt.ylabel('deferred_income')\n",
    "plt.title(\"Scatterplot of Employees with deferred income\")\n",
    "plt.legend(loc='upper right')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The above scatterplot is not much helpful in either detecting outliers or finding patterns as some POIs as well as non-POIs have high values of deferred income. Although, a very trend does suggest POIs to have higher deferred income.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Creating a scatterplot of **`total_payments` vs `deferral_payments` w.r.t `POI`**."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 125,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgkAAAFlCAYAAABhvHtEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xtc1FXi//HXcFUYvLVlmtKqyba2YSFqJVpIZZbmJU3B\nqHR1zazEFhczkTSvqaRFVNu37CcbIJZpl+2ykeYqRkapSdlu7lcBxcuGKRdhhDm/P+bLJDniVA6g\nvp+Ph49xzuczn8+ZzyDz9pzzOcdijDGIiIiI/IRXY1dAREREmiaFBBEREXFJIUFERERcUkgQERER\nlxQSRERExCWFBBEREXFJIUEA2LZtG7GxsQwePJhBgwYxfvx4/v3vf//i4+3YsYNZs2Y5n48bN46S\nkpKzUVUAnn32WebMmXPG/X7JeTdt2kRkZCR33XUXlZWVdbbNnDmTnTt3nvEY7uxXVFTEtdde+7Pq\n1tSd7c/55/jqq6/o37//Gff75ptvuPnmmxk2bBhFRUUeqcvvfve7RrsOnuDuz72npKSk8NFHH51S\nXlRUxO9//3uGDBni/HPnnXfy+uuvO/eprq7m+eef5/bbb+eOO+7gjjvuYPbs2fzwww/OfaZPn87L\nL7/cIO/lXKOQINhsNiZOnMj06dN5++23eeeddxg8eDATJkygpqbmFx3zu+++4+DBg87nmzdvPlvV\n/Vl+yXnfffddRo4cyRtvvEGzZs3qbMvJycGdqUXc3e9801if88+RnZ1N7969efPNN+nQoUNjV+ec\n0Ng/z7m5uVRXV7vc1qxZM9atW+f889JLL7Fo0SJ27doFwKOPPsp3331Heno67777LmvXrqV9+/aM\nGjWKsrKyhnwb5ySfxq6ANL7jx49TWlpKRUWFs+zOO+/EarVSU1ODt7c3r7/+OitWrMDLy4vWrVuz\naNEi2rZty/z589m+fTvl5eUYY5g7dy7t27fnmWeeobS0lMcee8x5zPvuu4+//vWveHl5MWfOHIqL\nizlx4gR33HEHDzzwAEVFRYwZM4YuXbqwb98+Fi5cyKOPPkqvXr3YtWsXxhhmzZpFeHh4nfr/+9//\nZs6cOfzwww9YLBbGjRvH0KFDneeuPW+7du2crzlx4gQLFy5ky5YteHt7ExoaymOPPUZmZibZ2dn4\n+/tTWlpKQkKC8zVPP/00hw4dIj4+nqeeeoq2bdvyxBNPsG/fPowxDB06lPHjx5+ynzGGxYsXY7PZ\nOHz4MDfccAPz5893+/Pp378/N998M59//jmlpaWMHTuWmJgY7Ha7y+vfrVs3+vXrR1ZWFp06dQJg\n7NixjBkzho8++gh/f3+++uor/vvf/zJw4EDatGnD+vXrOXz4MHPnzuX666/HZrOxZMkStm7dSk1N\nDd26dWPmzJlYrVb69+/PsGHD2LJlC8XFxQwcOJC//OUvp1zv9evXk5mZia+vL/7+/syZM4crrrjC\n+b7sdjuRkZGkpKRw9dVXAzB16lR69uxJ7969efzxx7HZbBhjGDFiBGPGjDnl2qSnp/P//t//w2q1\nEhISUmfb888/z4cffojdbueyyy4jKSmJ3NxcMjIyqKmpobKykqVLl7J69WoyMjKw2+20atWKxMRE\nunTpwvTp0/nhhx8oLCzkpptu4vvvv6/zfMSIEcyZM4eKigoOHTrElVdeybJly/D393frc42NjaVL\nly7s3LmTI0eOMGTIEB555BEAXnjhBT766COqqqo4fvw4CQkJ3Hzzzdx2220kJiYSEREBOP6H37Vr\nV44dO0ZBQQGFhYUcOnSI0NBQ+vTpw9q1aykqKmLatGkMGjTotNelbdu2xMbGcs011/DFF19QXFxM\njx49WLRoEcuXL6/z83zw4EGef/55LBYL3t7e/OUvf6Fnz57O91VTU0OfPn1YtWoVl19+OX/961/J\nyMhg/fr1zp/F+++/nxtvvNH5mjVr1vD6669z/PhxrFYraWlpzm2vvfYaO3fu5KmnnsLb25tbbrml\n3uvatm1bLr/8cvbs2cPx48fZtm0bH3/8MT4+jq87X19fJkyYwBdffEFmZibjx4936/O6YBkRY8wr\nr7xiQkNDTf/+/U18fLxZvXq1qaioMMYY880335jevXub/fv3G2OMWbFihUlMTDRffPGFefjhh01N\nTY0xxpgXX3zRTJw40RhjzBtvvGH+9Kc/OY8fEhJivv/+e2OMMbGxsSY7O9sYY0xlZaWJjY017777\nriksLDQhISFm69atxhjjfP7WW28ZY4zZsGGD6dOnj7HZbOaZZ54xs2fPNidOnDBRUVHmgw8+MMYY\nc+DAAdO3b1/zxRdfnHLeky1fvtw89NBDxmazmZqaGjN9+nSTmJhojDEmISHB/M///I/L6xQZGWl2\n7NhhjDFmzJgx5pVXXjHGGHPs2DEzePBg884775yy39SpU82nn35qjDGmrKzM9O7d23z11VemsLDQ\nXHPNNWf8bCIjI01iYqKx2+2muLjY9O7d2+zatave6z937lyzaNEiY4wxe/fuNTfeeKOprq42CQkJ\nZuTIkcZms5lDhw6ZkJAQs3LlSmOMMa+++qoZO3asMcaYZ5991ixcuNDY7XZjjDFLly41SUlJzvos\nXLjQeb2vvvpqU1BQUOd6V1dXm6uuusocPHjQGGPMm2++aTIzM11+DrNnzzbGGPPDDz+YXr16mWPH\njpnHHnvMvPjii8YYYw4dOmTi4uKc77PW119/ba6//npz6NAhY4wxiYmJJjIy0nm+uLg4c+LECWOM\nMZmZmWb8+PHGGOP82THGmNzcXBMTE+P8Wf/nP/9pBg4caIxx/Bzcd999zvP99PnChQvN2rVrjTHG\n2Gw2M2jQIPP+++/XuQ71ueeee8yECROMzWYzR48eNQMGDDAff/yxKSoqMrGxseb48ePGGGPeeecd\nM2jQIGOM49/eI488YowxprS01Fx33XXm6NGj5plnnjGRkZHm2LFj5vjx46Znz55mwYIFxhhj/vGP\nf5hbb731jNflnnvuMY888oipqakxpaWlJiIiwmzZssUYU/fnOSoqynz55ZfO6/Xss8+e8t6mT59u\n0tLSnMft06eP+c9//mOOHTtmevfubaqqqurs/8Ybb5iePXua0tLS016r995775RyV/+GvvjiC9Oz\nZ0+zf/9+8/LLL5uHH37Y5TFXrlxpHnjgAWNM/f/mL3RqSRDAke5HjhzJ1q1b2bp1Ky+99BIvvfQS\nr7/+Olu2bCEiIsL5P/H777/f+bqWLVuSmZlJYWEhubm5BAYG1nueiooKtm7dytGjR1m+fLmzbNeu\nXYSGhuLj48M111xT5/iDBw8G4MYbb8Tb25tvv/3WuX3Pnj1UVVVx6623Ao7/Rdx6663885//rLe/\nf+PGjUydOhVfX1/A8b+6yZMnu329Kioq+OKLL3jllVcACAoKYvjw4WzcuJE77rijzr4LFy5k48aN\nvPDCC/znP/+hsrKSiooKWrVq5fb5YmJisFgsXHrppfTt25fNmzczbty4017/mJgY7rnnHqZOncqq\nVasYMWIE3t7eAERGRuLr68vFF19MQEAAffv2BSA4ONjZT7thwwZKS0vJyckBHC0vF110kbM+UVFR\ngON6X3TRRRw9epSOHTs6t3t7e3PbbbcxevRobrrpJvr06eP8HE921113MWLECKZPn84777xDZGQk\n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\nqakAJCUlsXTpUjIyMti+fTtff/01+fn5fPbZZ6xevZrk5GRmz54NQGpqKoMGDSI9PZ1u3bqxatUq\nT71dERE5lzTCErX9+/dn+PDhjB8/nujoaMaNG8eAAQO4/fbbz/q5zhaPdTds2rSJkJAQJk+eTFlZ\nGX/5y1/IysqiV69eAPTr14/Nmzfj5eXFtddei5+fH35+fgQHB7Nr1y7y8vKcS17269eP1NRUysrK\nsNlszj6diIgIcnJy8PPzIyIiAovFQvv27ampqaGkpIS8vDwmTpzoPEZycjL333+/p96yiIicS5Ys\ncTy6WgbyV+jduze9e/d2ue3OO+/kzjvvdLktLS3tV53XEzwWEo4cOcL+/ft54YUXKCoqYtKkSRhj\nsFgsAAQGBlJaWkpZWZlzpGdteVlZWZ3yk/e1Wq119i0sLMTf359WrVrVKf/psWvLREREAC0D6QaP\nhYRWrVrRuXNn/Pz86Ny5M/7+/hw4cMC5vby8nBYtWmC1WikvL69THhQUVKe8vn1btGiBr69vvcdo\n1qyZc18REZE6tAzkaXlsTEKPHj345z//iTGGgwcPcvz4ca6//npyc3MB2LhxI+Hh4YSGhpKXl0dV\nVRWlpaXs3r2bkJAQwsLC+OSTT5z79ujRA6vViq+vLwUFBRhj2LRpE+Hh4YSFhbFp0ybsdjv79+/H\nbrfTpk0bl8cQERER93isJSEyMpKtW7cyYsQIjDHMmjWLDh06kJiYSHJyMp07d2bAgAF4e3sTGxtL\nTEwMxhimTp2Kv78/0dHRJCQkEB0dja+vL0uXLgVg9uzZxMfHU1NTQ0REBN27dwcgPDycUaNGYbfb\nmTVrFgCTJk0iISGBrKwsWrdu7TyGiIiInJnFGGMauxJNRVFREVFRUWRnZ9OhQ4fGro6IiIhHnel7\nT9Myi4iIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikk\niIiIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiI\niEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsK\nCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsKCSIiIuKSQoKIiIi4pJAgIiIiLikkiIiIiEsKCSIi\n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\nJPzwww/k5uaSm5vrLLNYLKxcudJjFRMREZHG5VZI0GqQIiIiFx63xiTs27ePsWPHcuutt3L48GHu\nvfdeioqKPF03ERERaURuhYRZs2bxxz/+kYCAAH7zm98waNAgEhISPF03ERERaURuhYQjR44QEREB\nOMYi3H333ZSVlXm0YiIiItK43AoJzZo148CBA87JlD7//HP8/Pw8WjERERFpXG4NXHzssceYOHEi\nBQUFDBkyhKNHj7J8+XJP101EREQaUb0hYfHixUybNo0jR47w+uuvs2fPHmpqaujcubNaEkRERM5z\n9XY3vPfee+Tk5DBv3jy2b9/ODz/8QGlpKdu3b2fr1q0NVUcRERFpBPW2JDzwwAO8+OKLHDp06JTu\nBU2mJCIicn6rNyTcfffd3H333Tz33HNMnjy5oeokIiIiTYBbdzdMmDCBF154gYSEBMrKykhJScFm\ns3m6biIiItKI3AoJc+bMoaKigvz8fLy9vSkoKODxxx/3dN1ERESkEbkVEvLz83n00Ufx8fGhefPm\nLFq0iG+++cbTdbugVVTA7t2ORxERkcbgVkiwWCzYbDbnZEpHjhxx/l3OrupqiIuDq66CkBDHY1yc\no9xJCUJERBqAWyHh3nvvZezYsRw+fJh58+Zx1113cd9993m6bhek+HhYvhz27AG73fG4fLmj3L0E\nISIicnbUe3fD2rVrnX+/4447MMZQU1PD2LFj8fFxa7JG+RkqKuCkS17HunWw+EQ8vqkn3YpamyAA\nli3zeP1EROTCUu83fW5uLgAFBQUUFBRw44034uXlxaZNm7jiiisYOnRog1TyQlFcDIWFrrf9t6AC\n1tWTIObPh4AAz1VOREQuOPWGhAULFgAQGxvLunXraNOmDQBHjx7VvAke0K4dBAc7Ggh+KqxdMT7F\np0kQhYWOhNGli0frJyIiFxa3xiQcOnSIVq1aOZ83b96cw4cPe6xSF6qAABgyxPW2XkPaYQkOdr2x\nY0dHwhARETmL3BpYcNNNNzF27FhuvfVW7HY777//PgMHDvR03S5IS5Y4HtetczQQdOzoCA4LlgSA\n75AfxyCcbMgQdTWIiMhZ5/ZS0R988AGfffYZFouFcePGERUVVe9rTpw4wYwZM9i3bx82m41JkyZx\nxRVXMH36dCwWC127diUpKQkvLy+ysrLIzMzEx8eHSZMmERkZSWVlJdOmTeP7778nMDCQRYsW0aZN\nG7Zt28a8efPw9vYmIiKChx56CICUlBQ2bNiAj48PM2bMIDQ0lJKSEuLj46msrOSSSy5hwYIFNG/e\n/NdfNQ/y8XGMQZw/39GD0K7dSd//p0sQteUiIiJnk/GQ119/3cydO9cYY8yRI0fMjTfeaCZOnGg+\n/fRTY4wxiYmJ5sMPPzSHDh0ygwYNMlVVVebYsWPOv7/yyivmmWeeMcYY884775gnn3zSGGPMnXfe\nafbu3WvsdrsZP368yc/PNzt37jSxsbHGbrebffv2meHDhxtjjHnyySfNG2+8YYwx5sUXXzQrVqyo\nt86FhYUmJCTEFBYWeuKSnD3l5cZ8953jUURE5Bc60/eeW2MSfonbbruNKVOm1AYRvL29yc/Pp1ev\nXgD069ePnJwcduzYwbXXXoufnx9BQUEEBweza9cu8vLy6Nu3r3PfLVu2UFZWhs1mIzg4GIvFQkRE\nBDk5OeTl5REREYHFYqF9+/bU1NRQUlJyyjFycnI89XYbVkCAY5CiuhhERMSDPBYSAgMDsVqtlJWV\n8cgjjxAXF4cxxjlTY2BgIKWlpZSVlREUFFTndWVlZXXKT97XarXW2fdM5T89hoiIiLjHYyEBoLi4\nmHvvvZchQ4YwePBgvLx+PF15eTktWrTAarVSXl5epzwoKKhOeX37/txjiIiIiHs8FhL++9//Mm7c\nOKZNm8aIESMA6Natm3OCpo0bNxIeHk5oaCh5eXlUVVVRWlrK7t27CQkJISwsjE8++cS5b48ePbBa\nrfj6+lJQUIAxhk2bNhEeHk5YWBibNm3Cbrezf/9+7HY7bdq0cXmMpkLLL4iISFPnsbmVX3jhBY4d\nO0ZqaiqpqakAPP7448ydO5fk5GQ6d+7MgAED8Pb2JjY2lpiYGIwxTJ06FX9/f6Kjo0lISCA6Ohpf\nX1+WLl0KwOzZs4mPj6empoaIiAi6d+8OQHh4OKNGjcJutzNr1iwAJk2aREJCAllZWbRu3dp5jMZU\nXe1Yh2HdOigocEyeVHuDgma6FhGRpsRijDGNXYmmoqioiKioKLKzs+nQoYNHzhEX53qqgylTtPyC\niIg0rDN973l0TILUdaYFnNT1ICIiTYlCQgOqbwGn2uUXREREmgqFhAZUu4CTK1p+QUREmhqFhAZU\n3wJOWn5BRESaGo2nb2BafkFERM4VCgkNrN4FnERERJoQhYRGUrv8goiISFOlMQkiIiLikkKCiIiI\nuKSQICIiIi4pJIiIiIhLCgkiIiLikkKCiIiIuKSQICIiIi4pJIiIiIhLCgkiIiLikkKCiIiIuKSQ\nICIiIi4pJIiIiIhLCgkiIiLikkLCOaiiAnbvdjyKiIh4ikLCOaS6GuLi4KqrICTE8RgX5ygXERE5\n23wauwLivvh4WL78x+d79vz4fNmyRqmSiIicx9SScI6oqIC1a11vW7dOXQ8iInL2KSScI4qLobDQ\n9bbCQsd2ERGRs0kh4RzRrh0EB7ve1rGjY7uIiMjZpJBwjggIgCFDXG8bMsSxXURE5GzSwMVGUlHh\n6CJo1879L/glSxyP69Y5uhg6dnQEhNpyERGRs0ktCQ3s19zG6OPjuIshPx++/dbxuGyZo1xERORs\n09dLAzsbtzEGBECXLme9aiIiInWoJaEB6TZGERE5lygkNCDdxigiIucShYQGpNsYRUTkXOLRkLB9\n+3ZiY2MB2Lt3L9HR0cTExJCUlITdbgcgKyuL4cOHc/fdd7N+/XoAKisrefjhh4mJiWHChAmUlJQA\nsG3bNkaOHMno0aNJSUlxniclJYURI0YwevRoduzYAUBJSQnjxo0jJiaGuLg4jh8/7sm36hbdxigi\nIucSj4WEl156iZkzZ1JVVQXAggULiIuLIz09HWMM2dnZHD58mLS0NDIzM3n55ZdJTk7GZrORkZFB\nSEgI6enpDB06lNTUVACSkpJYunQpGRkZbN++na+//pr8/Hw+++wzVq9eTXJyMrNnzwYgNTWVQYMG\nkZ6eTrdu3Vi1apWn3urPsmQJTJkCv/0teHs7HqdM0W2MIiLS9HgsJAQHB/Pss886n+fn59OrVy8A\n+vXrR05ODjt27ODaa6/Fz8+PoKAggoOD2bVrF3l5efTt29e575YtWygrK8NmsxEcHIzFYiEiIoKc\nnBzy8vKIiIjAYrHQvn17ampqKCkpOeUYOTk5nnqrP4tuYxQRkXOFx0LCgAED8Dnpm88Yg8ViASAw\nMJDS0lLKysoICgpy7hMYGEhZWVmd8pP3tVqtdfY9U/lPj9GU1N7GqC4GERFpqhps4KKX14+nKi8v\np0WLFlitVsrLy+uUBwUF1Smvb9+fe4ymoKICdu/W7Y4iItL0NVhI6NatG7m5uQBs3LiR8PBwQkND\nycvLo6qqitLSUnbv3k1ISAhhYWF88sknzn179OiB1WrF19eXgoICjDFs2rSJ8PBwwsLC2LRpE3a7\nnf3792O322nTpo3LYzSmXzPTooiISGNosJ7whIQEEhMTSU5OpnPnzgwYMABvb29iY2OJiYnBGMPU\nqVPx9/cnOjqahIQEoqOj8fX1ZenSpQDMnj2b+Ph4ampqiIiIoHv37gCEh4czatQo7HY7s2bNAmDS\npEkkJCSQlZVF69atncdoLO7OtPhL1nQQERHxBIsxxjR2JZqKoqIioqKiyM7OpkOHDmftuMeOQYcO\n4GpYxG9/6xi86OfnCBLr1kFBgWM+hdrFmzSoUUREPOFM33v6+mkAU6a4Dgjw40yLzz7769d0EBER\nOZs046KHVVTAxx+ffvtll0HLllrTQUREmh6FBA8rLHR0H5xOZCQcPao1HUREpOlRSPCwZ545/bYW\nLRzbtaaDiIg0RQoJHlRRAe++e/rt99zjCApa00FERJoiDVz0oPqWhgZ48MEf/167dsO6dY7XdOz4\n490NIiIijUEtCR5UXzcCQGrqjzMw2mxa00FERJoWhQQPCgiA228//fa0NPj97+vOwOjnpzUdRESk\naVBI8LBHHjn9ttJSx50PdvuP8yLExzdY1UREROqlkOBhHTvW3+XwU5oXQUREmgqFBA+qroYZM+DI\nEfdfo3kRRESkqdCwOA/66aJOtaxWsFhcT9WseRFERKSpUEuCh1RUnH6q5TZtIDbW9TbNiyAiIk2F\nQoKH1DdHQkGBoxXh4Ycdq0B6ezsep0zRvAgiItJ0KCR4yJnmSEhLAy8vzYsgIiJNl0KCh9Q31XKt\ndescj5oXQUREmiKFBA9asgTuv//023Ung4iINGUKCR7k4wPPPacVHkVE5NykkOBhAQEwbJjrbbqT\nQUREmjINk2sAWuFRRETORQoJDcDHx3Hnwvz5jjEI7dqpBUFERJo+hYQGFBDguJNBRETkXKAxCQ2k\nogJ279biTSIicu5QSPCw6mqIi4OrroKuXSEkBCZPdpSLiIg0ZQoJHla7yNOePdDMVOC/bzcrUivo\n2VNBQUREfoZGaJJWSPCgigpYswa8qSaZOPK5im8JIZ+ruHdbHJMnKiWIiMgZnNwkHRLieIyLa5D/\naSokeEhlJYSHO255XEw8U1lOJ/bgg51O7GEqy/n9K/HqehARkfqd3CRttzsely93lHuYQoKHXH89\nfPMNNKeCobheM/pO1rEitaIhPmcRETkXVVTAWtffIaxb5/GuB4UED/jvf+Grrxx/b0cxHXG9ZnRH\nCmlHcUN8ziIici4qLnY0SbvSAAsAKSR4wI4dUFPj+Hsx7SjE9eINhXR0bPfg56xbL0VEzmHt2jXq\nAkAKCR4QGgre3o6/HyeAtbheM3odQzhOgEc+50Yc5yIiImdLQIBjHn9XGmABIM246AG/+Q1cfTVs\n2+Z4Pg3HIg1DWEdHCimkI+sY8mO5Bz7n2nEutWrHuYBjimgRETlHNOICQGpJ8IDKSscA1OZU0Jnd\n+GHjUZbxB/K5km/pyVZSeBg/bPj5wZw5Z/f8jTzORUREzqbaBYDy8+Hbbx2Py5Y5yj1MIcEDIq6r\n5v4ddedFSCaOGrx4iGf5nJ7O8oW2OAr+c3b7ABp5nIuIiHhC7QJADbhC4Hnd3WC323niiSf49ttv\n8fPzY+7cuVx++eUePed//wux2+OZwo9t/bXzIvTjE3qw7ZTy/y4F0s5eH0DtOJc9e07d1gDjXERE\n5DxxXrckfPTRR9hsNlatWsWf//xnFi5c6PFz7vysgjtPMy9CKF+5LG/zz7PbB9DI41xEROQ8cV63\nJOTl5dG3b18ArrnmGnbu3Onxc4YEFXPJaeZF8KHGZblX0f/1AZzFdaQbcZyLiIicJ87rkFBWVobV\nanU+9/b2prq6Gh8PDvaobO2YF6ETe07ZVo03vq6Cggf6AGrHucyf78gf7dqpBUFERH6e87q7wWq1\nUl5e7nxut9s9GhAALu0cwMdW1239O7ja9Ys82AfQCONcRETkPHFeh4SwsDA2btwIwLZt2wgJCfH4\nOQMCIH/sEp5mCv/ht5zAm//wW55mCjewhWVMocD7t9RYvDGX/xamTFEfgIiINEnndXfDLbfcwubN\nmxk9ejTGGObPn98g531irg8dXl3G46XzaUcxxbTjOI7/yi+5bBn35MzH+4T6AEREpGk7r0OCl5cX\nc872TEVuOHwYysvBTgD/oe5gxAMH4OiJAH5zFgcpioiIeMJ53d3QWBp5PQ4REZGzQiHBAzRPgYiI\nnA/O6+6GxqR5CkRE5FynkOAhmqdARETOdQoJHlY7T4GIiMi5RmMSRERExCWFBBEREXFJIUFERERc\nUkgQERERlxQSRERExCWFBBEREXFJIUFERERc0jwJJ6mpqQHgwIEDjVwTERERz6v9vqv9/vsphYST\nHD78/9u7/5iq6j+O40+4/AowHSqVEgrMdI0mWDPNNDTJUm7g5ccFFIR0zOWkiUtZA0QEnOa0cLiF\nNCkKHJhDwKQfMrJRtASk8Qe6qChaCg1uwkW5wD3fP/x6F3G74HfkvXx7P/7ynnP43Nd978J533OP\nn85Y8y4AAAqdSURBVE83AJs2bbJyEiGEEOL+6e7uZt68eWO22ymKolghj026ffs2ra2tzJ49G5VK\nZe04QgghxD9qZGSE7u5u/P39cXFxGbNfmgQhhBBCmCU3LgohhBDCLGkShBBCCGGWNAlCCCGEMEua\nBCGEEEKYJU3CJDEajWRkZKDVaomLi6Ojo2PU/traWsLDw9FqtZSVlVkppe0Zr27V1dVERkYSHR1N\nRkYGRqPRSklty3h1uys9PZ0jR47c53S2a7y6fffdd8TGxhITE0NycjKDg4NWSmpbxqtbZWUlGzdu\nJDw8nJKSEiultF0tLS3ExcWN2T4lzguKmBSffPKJsnfvXkVRFKW5uVnZvn27aZ/BYFDWrl2r6HQ6\nZXBwUNFoNEp3d7e1otoUS3W7deuW8vzzzysDAwOKoijKrl27lM8//9wqOW2NpbrdVVpaqkRFRSlv\nvvnm/Y5nsyzVzWg0Ki+//LLy008/KYqiKGVlZUp7e7tVctqa8d5vK1asUHp7e5XBwUHT3zpxR0FB\ngRISEqJERkaO2j5VzgtyJWGSNDY2snLlSgACAgJobW017Wtvb8fb25vp06fj5OTEk08+ybfffmut\nqDbFUt2cnJw4ffo0DzzwAADDw8M4OztbJaetsVQ3gKamJlpaWtBqtdaIZ7Ms1e3HH39kxowZFBUV\nsXnzZnQ6Hb6+vtaKalPGe78tXLiQvr4+DAYDiqJgZ2dnjZg2ydvbm+PHj4/ZPlXOC9IkTJL+/n7c\n3d1Nj1UqFcPDw6Z906ZNM+1zc3Ojv7//vme0RZbqZm9vz6xZswAoLi5mYGCAFStWWCWnrbFUt66u\nLvLz88nIyLBWPJtlqW69vb00NzezefNmTp06RUNDA19//bW1otoUS3UDWLBgAeHh4WzYsIGgoCAe\nfPBBa8S0SevWrcPBYezkxlPlvCBNwiRxd3dHr9ebHhuNRtMb46/79Hr9qDfHv5mlut19fOjQIerr\n6zl+/Lh8QvkvS3Wrqamht7eXpKQkCgoKqK6u5uzZs9aKalMs1W3GjBnMmzcPPz8/HB0dWbly5ZhP\nzP9WlurW1tZGXV0dFy9epLa2lp6eHi5cuGCtqFPGVDkvSJMwSZYsWcKlS5cAuHLlCo899phpn5+f\nHx0dHeh0OgwGA5cvXyYwMNBaUW2KpboBZGRkMDg4yIkTJ0xfOwjLdYuPj+fs2bMUFxeTlJRESEgI\nGo3GWlFtiqW6Pfroo+j1etNNeZcvX2bBggVWyWlrLNVt2rRpuLi44OzsjEqlwsPDg5s3b1or6pQx\nVc4LssDTJAkODqa+vp7o6GgURSE3N5eqqioGBgbQarWkpqaydetWFEUhPDychx56yNqRbYKluvn7\n+3PmzBmeeuoptmzZAtw5AQYHB1s5tfWN934T5o1Xt5ycHHbv3o2iKAQGBhIUFGTtyDZhvLpptVpi\nY2NxdHTE29ubjRs3WjuyzZpq5wVZu0EIIYQQZsnXDUIIIYQwS5oEIYQQQpglTYIQQgghzJImQQgh\nhBBmSZMghBBCTHF/tz7Enx08eJCIiAiioqJobGyc0LjSJAjxL7J//35CQ0NZv349/v7+hIaGEhoa\nykcffWT2+I6ODtLS0iyO2dHRMaX/W+off/zBzp07rR1DiP/ZyZMnSUtLs7ggWVtbG83NzZSXl3P4\n8GFycnImNLbMkyDEv8i+ffsA6OzsJD4+nnPnzlk8/tdff6Wzs/N+RLManU5HW1ubtWMI8T+7uz7E\nnj17ALh69SrZ2dnAnZlEc3Nz8fT0xMXFBYPBQH9/v9mpos2RKwlCCPR6PSkpKYSEhKBWq6msrAQg\nOzublpYWsrOzGRoa4o033iAqKoo1a9aQlJQ04aWUjx07xu7du4mMjCQ4OJhTp04B0NfXx86dO9Fq\ntaxevZrU1FQAUlJSOHPmjOnnY2NjaW1tJSYmhoMHD6JWq1m3bh1ffPEFW7duJSgoiOLiYuDOnPh7\n9uxBo9EQFhbGxx9/DEB5eTkpKSkkJiaydu1aDhw4YHqNv/32G8nJydy8eZNt27ah0WjQaDTU1dVN\nSn2F+Cf9dX2I9PR09u3bR3FxMatWraKwsBAHBwfs7e156aWXSExM5JVXXpnQ2HIlQQhBXl4es2fP\n5ujRo/T09BAREcHjjz9OWloaBQUFpKWl0dDQgKurK2VlZRiNRjZt2sSXX3454amL29vbKSkpYXh4\nmLCwMJYvX87Vq1d54oknSEpKwmAw8OKLL9LW1kZ4eDjvvPMOERER/Pzzz/T19eHv7w/cWfirqqqK\nt956i9zcXM6dO0dXVxdRUVHExcWRn5/P4sWLOXz4MH19fURHR7N48WLgzpTCVVVV2NnZ8cILLxAb\nG0taWhrbtm0jLy+P8vJy5s+fT2FhIdeuXaOyslJmXRRTTnt7O/v37wdgaGiI+fPnU1FRwaxZs3j3\n3XfR6/XExsYSEBDAww8/bHEsaRKEEDQ0NHDkyBEAPDw8WL16Nd988w0+Pj6mY5YtW4aHhwcffvgh\nP/zwA7/88gsDAwMTfo6QkBBcXV0BWLNmDQ0NDSQkJHDlyhWKiopob2/n5s2b6PV6li9fTnp6Otev\nX6eiomLUNL+rVq0CYO7cuQQGBuLi4sKcOXNM6wV89dVXDA0NUVZWBsCtW7f4/vvvgTtrELi5uQHg\n5eWFTqczrTR6d//bb7/N9evXee6559i+ffs911IIa/Px8eHQoUPMmTOHxsZGuru7uX37Nq6urqhU\nKtzc3HBycprQ7680CUIIjEbjqMeKojAyMjJq22effUZ+fj7x8fFoNBq6u7u5l1nd/7q6p4ODA0VF\nRVy8eJGoqCieffZZ2traUBQFe3t7wsLCqK6upqamhvfff9/0s46OjqZ/q1Qqs6/l6NGjLFq0CIDf\nf/+d6dOnU1FRgbOzs+k4Ozu7Mfn9/Pyoqanh0qVL1NbWUlRURHV1taw+KqaUzMxM9u7dy/DwMHZ2\nduTk5ODt7U1TUxPR0dGMjIygVqvx9fUddyy5J0EIwbJly0z3APT09FBbW8vSpUtRqVSmZqG+vp4N\nGzag0WiYOXMmTU1NY5oLSz799FMMBgM6nY66ujqeeeYZ6uvriYmJQa1WMzIywrVr10xjajQaPvjg\nA7y9vUd92h/P008/TWlpKQA3btxArVbT1dX1t8f/+TW+9957nDhxgvXr15OZmcmNGzdGLecrhK3y\n8vIyXT3z9/enuLiY0tJSSkpK8PHxQaVSkZWVxenTpykvLycxMXFC48qVBCEEycnJZGZmmk7WO3bs\nYNGiRfT09NDT00Nqaipbtmzh9ddf5/z58zg5OREQEEBnZydLliyZ0HM4OTkRExODXq9nx44d+Pr6\nkpCQQFZWFidPnsTd3d005tKlS/Hy8sLT0/Oel7l+7bXXRr2W1NRU5s6d+7fHe3p6MnPmTBISEsjL\nyyMlJQW1Wo2DgwO7du3C3d39np5fiP8nsgqkEOIfd+zYMZydnXn11VcndLyiKHR1dREXF8f58+dH\nfcUghLh/5EqCEGJSFBYWUlVVNWb7I488wsKFC+9prAsXLnDgwAGysrKkQRDCiuRKghBCCCHMkhsX\nhRBCCGGWNAlCCCGEMEuaBCGEEEKYJU2CEEIIIcySJkEIIYQQZkmTIIQQQgiz/gN9gvOlqfUL8gAA\nAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x114ddf1d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Scatterplot of total_payments vs deferral_payments w.r.t POI\n",
    "plt.scatter(enron_df_new['total_payments'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['deferral_payments'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(enron_df_new['total_payments'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['deferral_payments'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "plt.xlabel('Total_payments')\n",
    "plt.ylabel('deferral_payments')\n",
    "plt.title(\"Scatterplot of total_payments vs deferral_payments w.r.t POI\")\n",
    "plt.legend(loc='upper right')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "From the above scatterplot, it can be observed that the **majority of POIs have a meager value of deferral payments as compared to the deferral_payments of non-POIs**. We can also observe there are two outliers. The one having a high value of total_payments is a POI, and the other outlier with a high value of deferral payments is a non-POI. Hence, **removing the non-POI outlier.**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 126,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'FREVERT MARK A'"
      ]
     },
     "execution_count": 126,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Finding the non-POI employee having maximum 'deferral_payments'\n",
    "enron_df_new['deferral_payments'].argmax()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 127,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Removing the non-POI employee having maximum 'deferral_payments'\n",
    "enron_df_new.drop('FREVERT MARK A', axis = 0, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Financial Features : `long_term_incentive`\n",
    "\n",
    "Making a scatterplot to check the `long_term_incentive` of different Enron employees."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 128,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nYrqVAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1168f52b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Finding out the integer index locations of POIs and non-POIs\n",
    "poi_rs = []\n",
    "non_poi_rs = []\n",
    "for i in range(len(enron_df_new['poi'])):\n",
    "    if enron_df_new['poi'][i] == True:\n",
    "        poi_rs.append(i+1)\n",
    "    else:\n",
    "        non_poi_rs.append(i+1)\n",
    "\n",
    "# Making a scatterplot\n",
    "plt.scatter(non_poi_rs,\n",
    "            enron_df_new['long_term_incentive'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(poi_rs,\n",
    "            enron_df_new['long_term_incentive'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "plt.xlabel('Employees')\n",
    "plt.ylabel('long_term_incentive')\n",
    "plt.title(\"Scatterplot of Employee Number with long_term_incentive\")\n",
    "plt.legend(loc='upper left')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "One employee has a very high value of `long_term_incentive`, so considering this point as an outlier and removing it.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 129,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'MARTIN AMANDA K'"
      ]
     },
     "execution_count": 129,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "enron_df_new['long_term_incentive'].argmax()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 130,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "enron_df_new.drop('MARTIN AMANDA K', axis = 0, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Financial Features : `restricted_stock` and `restricted_stock_deferred`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 131,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x114fbffd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Scatterplot of restricted_stock vs 'restricted_stock_deferred' w.r.t POI\n",
    "\n",
    "plt.scatter(enron_df_new['restricted_stock'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['restricted_stock_deferred'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(enron_df_new['restricted_stock'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['restricted_stock_deferred'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "    \n",
    "plt.xlabel('restricted_stock')\n",
    "plt.ylabel('restricted_stock_deferred')\n",
    "plt.title(\"Scatterplot of restricted_stock vs 'restricted_stock_deferred' w.r.t POI\")\n",
    "plt.legend(loc='upper right')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 132,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'BHATNAGAR SANJAY'"
      ]
     },
     "execution_count": 132,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "enron_df_new['restricted_stock_deferred'].argmax()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "There is an obtained **outlier in the feature `restricted_stock_deferred`**. Taking a quick look at the values of `restricted_stock_deferred` _most of the values are zeros_, and the remaining few are negative values. The outlier found here is the Enron employee _'BHATNAGAR SANJAY'_ who is not a POI. Hence, this **datapoint is removed.** There is no exciting observation in the other axis of this graph.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 133,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "enron_df_new.drop('BHATNAGAR SANJAY', axis = 0, inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Email Features : ` from_poi_to_this_person` and `from_this_person_to_poi`\n",
    "\n",
    "Given that the dataset is related to the emails, it can be thought that for doing such a big scam, the POI's might frequently have communication between them via E-mails. Hence, by checking on the number of e-mails transferred between POIs and an Employee, we can guess for the involvement of that person in that scam."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 134,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\ndg1Cx7D8hTFIJJJi85/fRq1atbT/f/6zujw/X61WG91XXYpWh+s6FkXXWfhj5/n/6zNz5kwUFBRg\n0KBB6Nu3L9LT04vFbW9vDwDaY6lrn0vTL6Os597Yfty9exejR4/GqFGj0LlzZwwcOBBHjx7Vu/06\ndeogISEBZ8+exalTpxAaGqqtCja0P0IIyGQyFBQUoEWLFvjqq6+08+7du4cGDRoU619iY2MDHx8f\nHDt2DBcuXMCqVauwadMmHDx4EB06dICjoyPUajUCAgLw/vvva4/N/fv3UbduXajVasybN0+bALKy\nspCbm6tdf+H5AAx/B4v+XarVatjY2Bj87utjru/H83HrW19YWBhGjBiBn3/+GXFxcdi8eTPi4uJg\nY6O/z7O+65JarcakSZO0zQ4qlarYj92if3e6thsTE2Pwb9zW1lYbl75EWLduXbRu3RpHjx5FZmYm\nAgICsH79ehw+fBj9+/fXudzz192yKNpGXlThj9GrV6+WaAtPSkoyWNCqLDWq13qDBg2wYcMG/Pe/\n/9VOy8jIwNOnT+Hp6Qlvb2+cPHkS9+/fBwDExsbio48+QmJiInx8fBAYGIh27drh8OHDKCgoAKD5\nohf9Yy58L5fL0aFDB2zfvh0A8OTJE4wdOxYKhUJnbA8fPsTx48cBAEeOHIGtrS08PT21893c3GBr\na4vvv/8egOZCeOjQIfzjH//QGUehXr16ITY2Fnl5eVCr1di5cyd69Ohh8Di1b98eKSkp2t78CoUC\n77//Prp164bExESkpqYCgLa9sX379qhfvz6uXLkCIQSys7Px888/G9zG88freT179kRcXJy2BBMT\nE4NXXnkFdnZ2pVqvLj179sTOnTshhIBKpcKePXu0x688fv75Z0ybNg2vvvoqJBIJLly4oP1e6NOr\nVy/Ex8cjNzcXubm5+O6773R+rjABCiHQvn17/P7777h48SIATV+J06dPo2vXruWK+/Lly2jQoAHe\nffdd9OrVS5vE9cV+9OhRTJgwAR07dsSMGTMwZMgQJCcn6/xsfHw8hBB4/PgxDhw4gN69e6NDhw64\ndesWTp8+DUBzwfPz88P9+/eL7ScA/POf/8S//vUveHp6ws7ODt26dUNUVJS2lqFHjx7Yv3+/9m90\n165dePPNNwE8O78qlQpqtRrh4eGIiooq8/Ep7IF+584dJCYmonfv3ujZsye+++47bc/wffv2oV69\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x114b99898>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(enron_df_new['from_poi_to_this_person'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['from_this_person_to_poi'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(enron_df_new['from_poi_to_this_person'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['from_this_person_to_poi'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "    \n",
    "plt.xlabel('from_poi_to_this_person')\n",
    "plt.ylabel('from_this_person_to_poi')\n",
    "plt.title(\"Scatterplot of count of from and to mails between poi and this_person w.r.t POI\")\n",
    "plt.legend(loc='upper right')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This scatterplot shows the relationship between the count of emails sent to and fro among different employees of Enron. I think a different feature showing the proportion of mail sent by employees and POI to each other will be more helpful in finding the POI. As POIs are more likely to have more communications with other POIs as compared to communication with other non-POIS, **two new features are created.**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Features created: `fraction_mail_from_poi` and `fraction_mail_to_poi` <a id=#new_features_2></a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 136,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\ngkmdiIhIIv4fFRJ3NHiid/QAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x114c50b38>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "enron_df_new['fraction_mail_from_poi'] = enron_df_new['from_poi_to_this_person']/enron_df_new['from_messages'] \n",
    "enron_df_new['fraction_mail_to_poi'] = enron_df_new['from_this_person_to_poi']/enron_df_new['to_messages']\n",
    "\n",
    "# Scatterplot of fraction of mails from and to between poi and this_person w.r.t POI\n",
    "plt.scatter(enron_df_new['fraction_mail_from_poi'][enron_df_new['poi'] == False],\n",
    "            enron_df_new['fraction_mail_to_poi'][enron_df_new['poi'] == False],\n",
    "            color = 'b', label = 'Not-POI')\n",
    "\n",
    "plt.scatter(enron_df_new['fraction_mail_from_poi'][enron_df_new['poi'] == True],\n",
    "            enron_df_new['fraction_mail_to_poi'][enron_df_new['poi'] == True],\n",
    "            color = 'r', label = 'POI')\n",
    "\n",
    "    \n",
    "plt.xlabel('fraction_mail_from_poi')\n",
    "plt.ylabel('fraction_mail_to_poi')\n",
    "plt.title(\"Scatterplot of fraction of mails between poi and this_person w.r.t POI\")\n",
    "plt.legend(loc='upper right')\n",
    "plt.show() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "From the above figure, the difference between POs and non-POI points can be clearly classified. The red dots representing **POIs are more distinct, have higher values and are more separate from the non-POI blue points**."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## II. Feature Processing\n",
    "\n",
    "**Question 2: What features did you end up using your POI identifier, and what selection process did you use to pick them? Did you have to do any scaling? Why or why not? As part of the assignment, you should attempt to engineer your feature that does not come ready-made in the dataset – explain what feature you tried to make, and the rationale behind it.**\n",
    "\n",
    "- A pipeline was created, and we decided to try `SelectKBest` in a range of 8 to 11 features and use it on 5 different algorithms. Most of the algorithms required 9 features as determined by `GridSearchCV`. <br><br>\n",
    "\n",
    "- Feature Preprocessing (including feature scaling) was done in <a id=\"feature_p\">this section</a>.<br><br>\n",
    "\n",
    "- Additional features were created during the exploratory data analysis i.e. <a id=\"new_features_2\">'fraction_mail_from_poi', 'fraction_mail_to_poi'</a> & <a id=\"new_features_1\">'bonus-to-salary_ratio'</a>.<br><br>\n",
    "\n",
    "- The features selected for the classifier using `SelectKBest` described in <a id=\"#feature_sel\">this</a> section. \n",
    "\n",
    "### Preparing for Feature Processing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 138,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Features of modified data_dictionary:-\n",
      "Total number of datapoints:  141\n",
      "Total number of features:  24\n"
     ]
    }
   ],
   "source": [
    "# Clean all 'inf' values which we got if the person's from_messages = 0\n",
    "enron_df_new = enron_df_new.replace('inf', 0)\n",
    "enron_df_new = enron_df_new.fillna(0)\n",
    "\n",
    "# Converting the above modified dataframe to a dictionary\n",
    "enron_dict = enron_df_new.to_dict('index')\n",
    "print(\"Features of modified data_dictionary:-\")\n",
    "print(\"Total number of datapoints: \",len(enron_dict))\n",
    "print(\"Total number of features: \",len(enron_dict['METTS MARK']))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 139,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Store to my_dataset for easy export below.\n",
    "dataset = enron_dict"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Features Choose to be Used in the POI identifier\n",
    "\n",
    "Out of the all features available, (given and created above), the following 24 features would be used. The given features can be divided into two types: financial features and email features.  \n",
    "\n",
    "  - **17 Financial Features:** \n",
    "  `['salary', 'bonus', 'long_term_incentive', 'bonus-to-salary_ratio', 'expenses','restricted_stock_deferred', 'restricted_stock', 'deferred_income','total_payments','other','shared_receipt_with_poi', 'loan_advances', 'director_fees', 'exercised_stock_options', 'deferral_payments', 'total_stock_value', 'restricted_stock']`<br><br>\n",
    "                \n",
    "  - **6 Email Features:** `['fraction_mail_from_poi', 'fraction_mail_to_poi', 'from_poi_to_this_person', 'from_this_person_to_poi', 'to_messages', 'from_messages']`<br><br>\n",
    "  \n",
    "  - **POI:** Which is the target variable."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 158,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Features_list is a list of strings, each of which is a feature name.\n",
    "# The first feature must be \"poi\" (target variable).\n",
    "\n",
    "features_list = ['poi', 'salary', 'bonus', 'long_term_incentive', 'bonus-to-salary_ratio', 'deferral_payments', 'expenses', \n",
    "                 'restricted_stock_deferred', 'restricted_stock', 'deferred_income','fraction_mail_from_poi', 'total_payments',\n",
    "                 'other', 'fraction_mail_to_poi', 'from_poi_to_this_person', 'from_this_person_to_poi', 'to_messages', \n",
    "                 'from_messages', 'shared_receipt_with_poi', 'loan_advances', 'director_fees', 'exercised_stock_options',\n",
    "                'total_stock_value']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 159,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# Extract features and labels from dataset for local testing\n",
    "data = featureFormat(dataset, features_list, sort_keys = True)\n",
    "labels, features = targetFeatureSplit(data)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Outline of Steps for Feature Scaling\n",
    " \n",
    "**1. Feature Scaling:** `MinMaxScaler` is used which scales features to lie between zero and one. MinMaxScaler transforms features by scaling each feature to a given range. This estimator scales and translates each feature individually such that it is in the given range on the training set, i.e., between zero and one. It is also limited to be used with algorithms that involve distance measures to avoid loss of information.\n",
    "\n",
    "**2. Feature Selection**: Feature selection/dimensionality reduction on sample sets is essential to improve estimators’ accuracy scores, boost performance & simplification of the model. In this project, `SelectKBest` to find the 'K' best or high-scoring features. Objects of these functions, take as input a scoring function that returns univariate scores and p-values. Here, `f_classif` is used as the scoring function which computes the ANOVA F-value between labels and features for classification tasks.  \n",
    "\n",
    "**3. Pipeline:** Sequentially apply feature processing steps such as scaling, selection, and classification. Sklearn's `GridSearchCV` module automates this process by performing a grid search over a range of parameter values for an estimator.\n",
    "\n",
    "**4. Principle Component Analysis (PCA):** PCA was tried, but it did not improve f1, precision or recall for the selected classification algorithms. Hence, it was not used and has not been described below to keep the notebook to-the-point. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 210,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# Split data into training and testing datasets\n",
    "from sklearn import cross_validation\n",
    "features_train, features_test, \\\n",
    "labels_train, labels_test = cross_validation.train_test_split(features, labels, \n",
    "                                                              test_size=0.3, random_state=42)\n",
    "\n",
    "# Stratified ShuffleSplit cross-validator\n",
    "from sklearn.model_selection import StratifiedShuffleSplit\n",
    "sss = StratifiedShuffleSplit(n_splits=100, test_size=0.3, random_state = 42)\n",
    "\n",
    "# Importing modules for feature scaling and selection\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "from sklearn.feature_selection import SelectKBest, f_classif\n",
    "from sklearn.pipeline import Pipeline\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "\n",
    "# Defining features to be used via the pipeline\n",
    "## 1. Feature scaling\n",
    "scaler = MinMaxScaler()\n",
    "\n",
    "## 2. Feature Selection\n",
    "skb = SelectKBest(f_classif)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## III. Choosing the Algorithm\n",
    "\n",
    "For this project, the following algorithms were selected.\n",
    "\n",
    "1. Logistic Regression\n",
    "2. KNN (K-Nearest Neighbour)\n",
    "3. Gaussian Naive Bayes Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 220,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.neighbors import KNeighborsClassifier\n",
    "from sklearn.naive_bayes import GaussianNB\n",
    "from sklearn.linear_model import LogisticRegression"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Logistic Regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 212,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training Time:  8.796 s\n",
      "Testing time:  0.002 s\n",
      "Accuracy of DT classifer is  :  0.809523809524\n",
      "Precision of DT classifer is :  0.333333333333\n",
      "Recall of DT classifer is    :  0.333333333333\n",
      "f1-score of DT classifer is  :  0.333333333333\n"
     ]
    }
   ],
   "source": [
    "# Classifier 1: Logistic Regression\n",
    "lr_clf = LogisticRegression()\n",
    "\n",
    "pipeline = Pipeline(steps=[(\"SKB\", skb), (\"LogisticRegression\", lr_clf)])\n",
    "\n",
    "param_grid = {\"SKB__k\": range(9, 10),\n",
    "              'LogisticRegression__tol': [1e-2, 1e-3, 1e-4],\n",
    "              'LogisticRegression__penalty': ['l1', 'l2']\n",
    "             }\n",
    "\n",
    "grid = GridSearchCV(pipeline, param_grid, verbose = 0, cv = sss, scoring = 'f1')\n",
    "\n",
    "t0 = time()\n",
    "# clf = clf.fit(features_train, labels_train)\n",
    "grid.fit(features, labels)\n",
    "print(\"Training Time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "# Best algorithm\n",
    "clf = grid.best_estimator_\n",
    "\n",
    "t0 = time()\n",
    "# Refit the best algorithm:\n",
    "clf.fit(features_train, labels_train)\n",
    "prediction = clf.predict(features_test)\n",
    "print(\"Testing time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "# Evaluation Measures\n",
    "print(\"Accuracy of DT classifer is  : \", accuracy_score(labels_test, prediction))\n",
    "print(\"Precision of DT classifer is : \", precision_score(prediction, labels_test))\n",
    "print(\"Recall of DT classifer is    : \", recall_score(prediction, labels_test))\n",
    "print(\"f1-score of DT classifer is  : \", f1_score(prediction, labels_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### KNN Classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 216,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training time:  9.281 s\n",
      "Testing time:  0.002 s\n",
      "Accuracy of DT classifer is  :  0.880952380952\n",
      "Precision of DT classifer is :  0.333333333333\n",
      "Recall of DT classifer is    :  0.666666666667\n",
      "f1-score of DT classifer is  :  0.444444444444\n"
     ]
    }
   ],
   "source": [
    "# Classifier 2: KNN Classifier\n",
    "\n",
    "clf_knn = KNeighborsClassifier()\n",
    "\n",
    "sss = StratifiedShuffleSplit(n_splits=10, test_size=0.3, random_state = 42)\n",
    "pipeline = Pipeline(steps = [(\"scaling\", scaler), (\"SKB\", skb),  (\"knn\",clf_knn)])\n",
    "param_grid = {\"SKB__k\":[3,4,5,6,7,8,9,10,11,12,13,14,15, 16, 17, 18], \n",
    "              \"knn__n_neighbors\": [3,4,5,6,7,8,9,11,12,13,15],\n",
    "              }\n",
    "\n",
    "grid = GridSearchCV(pipeline, param_grid, verbose = 0, cv = sss, scoring = 'f1')\n",
    "\n",
    "t0 = time()\n",
    "# clf = clf.fit(features_train, labels_train)\n",
    "grid.fit(features, labels)\n",
    "print(\"Training time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "# Best Algorithm\n",
    "clf = grid.best_estimator_\n",
    "\n",
    "t0 = time()\n",
    "# Refit the best algorithm:\n",
    "clf.fit(features_train, labels_train)\n",
    "prediction = clf.predict(features_test)\n",
    "print(\"Testing time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "# Evaluation measures\n",
    "print(\"Accuracy of DT classifer is  : \", accuracy_score(labels_test, prediction))\n",
    "print(\"Precision of DT classifer is : \", precision_score(prediction, labels_test))\n",
    "print(\"Recall of DT classifer is    : \", recall_score(prediction, labels_test))\n",
    "print(\"f1-score of DT classifer is  : \", f1_score(prediction, labels_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Gaussian Naive Bayes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 217,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training time:  0.666 s\n",
      "Testing time:  0.003 s\n",
      "Accuracy of GaussianNB classifer is  :  0.833333333333\n",
      "Precision of GaussianNB classifer is :  0.5\n",
      "Recall of GaussianNB classifer is    :  0.428571428571\n",
      "f1-score of GaussianNB classifer is  :  0.461538461538\n"
     ]
    }
   ],
   "source": [
    "## Classifier 3: Gaussian Naive Bayes (GaussianNB) classifier\n",
    "\n",
    "clf_gnb = GaussianNB()\n",
    "\n",
    "pipeline = Pipeline(steps = [(\"SKB\", skb), (\"NaiveBayes\", clf_gnb)])\n",
    "param_grid = {\"SKB__k\":[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]}\n",
    "\n",
    "grid = GridSearchCV(pipeline, param_grid, verbose = 0, cv = sss, scoring = 'f1')\n",
    "\n",
    "t0 = time()\n",
    "grid.fit(features, labels)\n",
    "print(\"Training time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "# Best Algorithm\n",
    "clf = grid.best_estimator_\n",
    "\n",
    "t0 = time()\n",
    "# Refit the best algorithm:\n",
    "clf.fit(features_train, labels_train)\n",
    "prediction = clf.predict(features_test)\n",
    "print(\"Testing time: \", round(time()-t0, 3), \"s\")\n",
    "\n",
    "print(\"Accuracy of GaussianNB classifer is  : \", accuracy_score(labels_test, prediction))\n",
    "print(\"Precision of GaussianNB classifer is : \", precision_score(prediction, labels_test))\n",
    "print(\"Recall of GaussianNB classifer is    : \", recall_score(prediction, labels_test))\n",
    "print(\"f1-score of GaussianNB classifer is  : \", f1_score(prediction, labels_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Question 3: What algorithm did you end up using? What other one(s) did you try? How did\n",
    "model performance differ between algorithms?**\n",
    "\n",
    "In total, three algorithms were tried viz. Gaussian Naïve Bayes, Logistic Regression, KNN (K-Nearest Neighbors). *Gaussian Naïve Bayes was the best performing model amongst all the models* based on the f1-score and the minimum requirement of 0.33 for precision and recall. KNN also comes close, but I chose Gaussian NB because of its precision.\n",
    "\n",
    "**Question 4: What does it mean to tune the parameters of an algorithm, and what can happen if you do not do this well? How did you tune the parameters of your particular algorithm?**\n",
    "\n",
    "The process of tuning the parameters involves setting the values of the algorithmic parameters to such optimal values that enable us to complete a machine learning task in the \"best possible way.\" \n",
    "\n",
    "Not correctly tuning will result in the sub-optimum or poor performance of the algorithm while making the whole machine learning task very time-consuming. Also, algorithms are not explicitly tuned to any dataset. Therefore, iteratively tuning our algorithm to obtain an evaluation we are satisfied with is recommended. \n",
    "\n",
    "This project utilized three algorithms and used the `GridSearchCV` function to obtain the best parameters for them. Since there are no parameters to tune for Gaussian Naïve Bayes, they have not been specified. However, for completeness, the tuning parameters for KNN have been mentioned below.\n",
    "\n",
    "```python\n",
    "param_grid = {\"SKB__k\":[3,4,5,6,7,8,9,10,11,12,13,14,15, 16, 17, 18], \n",
    "              \"knn__n_neighbors\": [3,4,5,6,7,8,9,11,12,13,15],\n",
    "              }\n",
    "              \n",
    "grid = GridSearchCV(pipeline, param_grid, ... scoring = 'f1')\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Finding out the Features Selected by `SelectKBest` for GaussianNB <a id=\"#feature_sel\"></a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 221,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total number of features selected by SelectKBest algorithm:  12\n",
      "The following table shows the feature selected along with its corresponding scores.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Features_Selected</th>\n",
       "      <th>Features_score</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>deferred_income</td>\n",
       "      <td>13.287587</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>bonus</td>\n",
       "      <td>12.438591</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>salary</td>\n",
       "      <td>12.225775</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>exercised_stock_options</td>\n",
       "      <td>11.166453</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>fraction_mail_from_poi</td>\n",
       "      <td>10.598733</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>total_stock_value</td>\n",
       "      <td>10.191784</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>long_term_incentive</td>\n",
       "      <td>10.164526</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>bonus-to-salary_ratio</td>\n",
       "      <td>9.869367</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>total_payments</td>\n",
       "      <td>9.361047</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>other</td>\n",
       "      <td>9.141458</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>shared_receipt_with_poi</td>\n",
       "      <td>8.649023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>loan_advances</td>\n",
       "      <td>7.658627</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          Features_Selected  Features_score\n",
       "1           deferred_income       13.287587\n",
       "2                     bonus       12.438591\n",
       "3                    salary       12.225775\n",
       "4   exercised_stock_options       11.166453\n",
       "5    fraction_mail_from_poi       10.598733\n",
       "6         total_stock_value       10.191784\n",
       "7       long_term_incentive       10.164526\n",
       "8     bonus-to-salary_ratio        9.869367\n",
       "9            total_payments        9.361047\n",
       "10                    other        9.141458\n",
       "11  shared_receipt_with_poi        8.649023\n",
       "12            loan_advances        7.658627"
      ]
     },
     "execution_count": 221,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Obtaining the boolean list showing selected features\n",
    "features_selected_bool = grid.best_estimator_.named_steps['SKB'].get_support()\n",
    "\n",
    "# Finding the features selected by SelectKBest\n",
    "features_selected_list = [x for x, y in zip(features_list[1:], features_selected_bool) if y]\n",
    "print(\"Total number of features selected by SelectKBest algorithm: \", len(features_selected_list))\n",
    "\n",
    "# Finding the score of features \n",
    "feature_scores =  grid.best_estimator_.named_steps['SKB'].scores_\n",
    "\n",
    "# Finding the score of features selected by selectKBest\n",
    "feature_selected_scores = feature_scores[features_selected_bool]\n",
    "\n",
    "# Creating a pandas dataframe and arranging the features based on their scores and ranking them \n",
    "imp_features_df = pd.DataFrame({'Features_Selected':features_selected_list, 'Features_score':feature_selected_scores})\n",
    "imp_features_df.sort_values('Features_score', ascending = False, inplace = True)\n",
    "Rank = pd.Series(list(range(1, len(features_selected_list)+1)))\n",
    "imp_features_df.set_index(Rank, inplace = True)\n",
    "\n",
    "print(\"The following table shows the feature selected along with its corresponding scores.\")\n",
    "imp_features_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## IV. Evaluation\n",
    "\n",
    "**Question 5: What is validation, and what’s a classic mistake you can make if you do it wrong? How did you validate your analysis?**\n",
    "\n",
    "Validation is usually performed to ensure that the machine learning algorithm we have selected, generalizes well. A classic mistake is over-fitting, where our model performs very well on the training dataset but significantly worse on the cross-validation and testing datasets. \n",
    "\n",
    "To overcome this mistake, we can perform cross0validation on the dataset. Although we can use the train_test_split, cross-validation technique, a better fit for our project would be to use the `StratifiedShuffleSplit` technique.\n",
    "\n",
    "- `StratifiedShuffleSplit` is used when there are few observations in a dataset being used for analysis. This technique randomly shuffles through our data, creating testing and training data.  The stratified shuffle split is also used to handle class imbalances in the data. This is important, especially since there are very few POIs in the data.<br><br>\n",
    "\n",
    "- `StratifiedShuffleSplit` creates train/validation subsets (as per the code above, it will create 100 of them). Internally, `GridSearchCV` estimates the models using the 100 train subsets and validate the model on the 100 validation subsets.\n",
    "\n",
    "#### Evaluation Metrics\n",
    "In this project, while training, it was kept in mind to optimize the precision and recall. Hence, I used f1-score as the key measure for algorithms' performance as f1_score considers both the precision and the recall.\n",
    "\n",
    "The metrics have been summarized below as they are later used to draw inferences from the study.\n",
    "\n",
    "- **Accuracy** is the ratio of correctly predicted observation to the total observations.<br><br>\n",
    "$Accuracy = \\frac{TP + TN}{TP+FP+FN+TN}$<br><br>\n",
    "\n",
    "- **Precision** is the ratio of correctly predicted positive observations to the total predicted positive observations.<br><br>\n",
    "$Precision = (\\frac{TP}{TP + FP})$<br><br>\n",
    "\n",
    "- **Recall** is the ratio of correctly predicted positive observations to the all observations in actual class.<br><br>\n",
    "$Recall = (\\frac{TP}{TP + FN})$<br><br>\n",
    "\n",
    "- **F1-score** is the weighted average of Precision and Recall. Therefore, this score takes both false positives and false negatives into account.<br><br>\n",
    "$f1 = 2.(\\frac{precision.recall}{precision + recall})$<br><br>\n",
    "\n",
    "**Question 6: Give at least 2 evaluation metrics and your average performance for each of them. Explain an interpretation of your metrics that says something human-understandable about your  algorithm’s performance.**\n",
    "\n",
    "Metric values obtained after running the **`tester.py`** file : \n",
    "\n",
    "| Algorithm used       | Accuracy | Precision | Recall | f1 score |\n",
    "|----------------------|----------|-----------|--------|----------|\n",
    "| Gaussian Naive Bayes | 0.852    | 0.480     | 0.387  | 0.428    |\n",
    "\n",
    "##### The following can be noted from the obtained values.\n",
    "\n",
    "- **Accuracy can be interpreted as ** 85.2% predictions on the entire test set have been made correctly. \n",
    "\n",
    "Accuracy, although a crucial metric can be misleading, mainly when dealing with imbalanced classes, or in other words, when the data is skewed towards one class. This is the case with the Enron set — since there are much more non-POIs than POI (you can just guess the more common class label for every point, which is not a very insightful strategy but still get decent Accuracy).\n",
    "\n",
    "- **Precision can be interpreted as **  if a person is being classified as a POI by the classifier, there is a 48.0% chance that the person is a POI.  \n",
    "\n",
    "Precision implies  that whenever a POI gets flagged in the test set, there's a lot of confidence that it’s very likely to be a real POI and not a false alarm.On the other hand, the tradeoff is that sometimes real POIs are missed, since the classifier is effectively reluctant to pull the trigger on edge cases.\n",
    "\n",
    "- **Recall can be interpreted as:** of all the actual POIs considered, 38.7% of all the POIs can be classified correctly as a POI by the classifier. \n",
    "\n",
    "38.7% might seem low, but this metric is particularly insightful for the Enron case. Since we are dealing with a criminal situation, we want our classifier to err on the side of guessing guilty – higher levels of scrutiny — so it makes sure as many people get flagged as POI, maybe at a cost of identifying some innocent people along the way. Boosting its Recall metric the classifier ensures that is correctly identifying every single POI. The tradeoff is that the algorithm will be biased towards \"overdoing\" it."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda root]",
   "language": "python",
   "name": "conda-root-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
