Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Experiments With Data (Hackathon)
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/pandas/computation/__init__.py:19: UserWarning: The installed version of numexpr 2.4.4 is not supported in pandas and will be not be used\n",
"\n",
" UserWarning)\n"
]
}
],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"%matplotlib inline\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from pprint import *"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
":0: FutureWarning: IPython widgets are experimental and may change in the future.\n"
]
}
],
"source": [
"import seaborn\n",
"seaborn.set()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"train = pd.read_csv('train.csv')\n",
"test = pd.read_csv('test.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Hypotheses\n",
"\n",
"1. Age\n",
"2. Income\n",
"3. Profession\n",
"4. Marital Status\n",
"5. Urban / Rural\n",
"6. Expenses\n",
"7. Education\n",
"8. Total Work Experience"
]
},
{
"cell_type": "code",
"execution_count": 5,
"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>ID</th>\n",
" <th>Age</th>\n",
" <th>Workclass</th>\n",
" <th>Education</th>\n",
" <th>Marital.Status</th>\n",
" <th>Occupation</th>\n",
" <th>Relationship</th>\n",
" <th>Race</th>\n",
" <th>Sex</th>\n",
" <th>Hours.Per.Week</th>\n",
" <th>Native.Country</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>32562</td>\n",
" <td>25</td>\n",
" <td>Private</td>\n",
" <td>11th</td>\n",
" <td>Never-married</td>\n",
" <td>Machine-op-inspct</td>\n",
" <td>Own-child</td>\n",
" <td>Black</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>32563</td>\n",
" <td>38</td>\n",
" <td>Private</td>\n",
" <td>HS-grad</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Farming-fishing</td>\n",
" <td>Husband</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>50</td>\n",
" <td>United-States</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>32564</td>\n",
" <td>28</td>\n",
" <td>Local-gov</td>\n",
" <td>Assoc-acdm</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Protective-serv</td>\n",
" <td>Husband</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>32565</td>\n",
" <td>44</td>\n",
" <td>Private</td>\n",
" <td>Some-college</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Machine-op-inspct</td>\n",
" <td>Husband</td>\n",
" <td>Black</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>32566</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>Some-college</td>\n",
" <td>Never-married</td>\n",
" <td>NaN</td>\n",
" <td>Own-child</td>\n",
" <td>White</td>\n",
" <td>Female</td>\n",
" <td>30</td>\n",
" <td>United-States</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ID Age Workclass Education Marital.Status Occupation \\\n",
"0 32562 25 Private 11th Never-married Machine-op-inspct \n",
"1 32563 38 Private HS-grad Married-civ-spouse Farming-fishing \n",
"2 32564 28 Local-gov Assoc-acdm Married-civ-spouse Protective-serv \n",
"3 32565 44 Private Some-college Married-civ-spouse Machine-op-inspct \n",
"4 32566 18 NaN Some-college Never-married NaN \n",
"\n",
" Relationship Race Sex Hours.Per.Week Native.Country \n",
"0 Own-child Black Male 40 United-States \n",
"1 Husband White Male 50 United-States \n",
"2 Husband White Male 40 United-States \n",
"3 Husband Black Male 40 United-States \n",
"4 Own-child White Female 30 United-States "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test.head()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"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>ID</th>\n",
" <th>Age</th>\n",
" <th>Workclass</th>\n",
" <th>Education</th>\n",
" <th>Marital.Status</th>\n",
" <th>Occupation</th>\n",
" <th>Relationship</th>\n",
" <th>Race</th>\n",
" <th>Sex</th>\n",
" <th>Hours.Per.Week</th>\n",
" <th>Native.Country</th>\n",
" <th>Income.Group</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>39</td>\n",
" <td>State-gov</td>\n",
" <td>Bachelors</td>\n",
" <td>Never-married</td>\n",
" <td>Adm-clerical</td>\n",
" <td>Not-in-family</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>&lt;=50K</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>50</td>\n",
" <td>Self-emp-not-inc</td>\n",
" <td>Bachelors</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Exec-managerial</td>\n",
" <td>Husband</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>13</td>\n",
" <td>United-States</td>\n",
" <td>&lt;=50K</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>38</td>\n",
" <td>Private</td>\n",
" <td>HS-grad</td>\n",
" <td>Divorced</td>\n",
" <td>Handlers-cleaners</td>\n",
" <td>Not-in-family</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>&lt;=50K</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>53</td>\n",
" <td>Private</td>\n",
" <td>11th</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Handlers-cleaners</td>\n",
" <td>Husband</td>\n",
" <td>Black</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>&lt;=50K</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>28</td>\n",
" <td>Private</td>\n",
" <td>Bachelors</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Prof-specialty</td>\n",
" <td>Wife</td>\n",
" <td>Black</td>\n",
" <td>Female</td>\n",
" <td>40</td>\n",
" <td>Cuba</td>\n",
" <td>&lt;=50K</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ID Age Workclass Education Marital.Status \\\n",
"0 1 39 State-gov Bachelors Never-married \n",
"1 2 50 Self-emp-not-inc Bachelors Married-civ-spouse \n",
"2 3 38 Private HS-grad Divorced \n",
"3 4 53 Private 11th Married-civ-spouse \n",
"4 5 28 Private Bachelors Married-civ-spouse \n",
"\n",
" Occupation Relationship Race Sex Hours.Per.Week \\\n",
"0 Adm-clerical Not-in-family White Male 40 \n",
"1 Exec-managerial Husband White Male 13 \n",
"2 Handlers-cleaners Not-in-family White Male 40 \n",
"3 Handlers-cleaners Husband Black Male 40 \n",
"4 Prof-specialty Wife Black Female 40 \n",
"\n",
" Native.Country Income.Group \n",
"0 United-States <=50K \n",
"1 United-States <=50K \n",
"2 United-States <=50K \n",
"3 United-States <=50K \n",
"4 Cuba <=50K "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Missing Value Treatment"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"ID 0\n",
"Age 0\n",
"Workclass 1836\n",
"Education 0\n",
"Marital.Status 0\n",
"Occupation 1843\n",
"Relationship 0\n",
"Race 0\n",
"Sex 0\n",
"Hours.Per.Week 0\n",
"Native.Country 583\n",
"Income.Group 0\n",
"dtype: int64"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.apply(lambda x: sum(x.isnull()))"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"ID 0\n",
"Age 0\n",
"Workclass 963\n",
"Education 0\n",
"Marital.Status 0\n",
"Occupation 966\n",
"Relationship 0\n",
"Race 0\n",
"Sex 0\n",
"Hours.Per.Week 0\n",
"Native.Country 274\n",
"dtype: int64"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test.apply(lambda x: sum(x.isnull()))"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from scipy.stats import mode"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Workclass"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/numpy/lib/arraysetops.py:200: FutureWarning: numpy not_equal will not check object identity in the future. The comparison did not return the same result as suggested by the identity (`is`)) and will change.\n",
" flag = np.concatenate(([True], aux[1:] != aux[:-1]))\n"
]
},
{
"data": {
"text/plain": [
"'Private'"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(train.Workclass)[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" from IPython.kernel.zmq import kernelapp as app\n"
]
}
],
"source": [
"Workclass_Null_Indices = train[train.Workclass.isnull()].index\n",
"for el in Workclass_Null_Indices: train.Workclass[el] = 'Private'"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"'Private'"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(test.Workclass)[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" from IPython.kernel.zmq import kernelapp as app\n"
]
}
],
"source": [
"Workclass_Null_Indices_test = test[test.Workclass.isnull()].index\n",
"for el in Workclass_Null_Indices_test: test.Workclass[el] = 'Private'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Occupation"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"'Prof-specialty'"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(train.Occupation)[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"'Prof-specialty'"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(test.Occupation)[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" from IPython.kernel.zmq import kernelapp as app\n"
]
}
],
"source": [
"Occupation_Null_Indices_train = train[train.Occupation.isnull()].index\n",
"for el in Occupation_Null_Indices_train: train.Occupation[el] = 'Prof-specialty'"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" from IPython.kernel.zmq import kernelapp as app\n"
]
}
],
"source": [
"Occupation_Null_Indices_test = test[test.Occupation.isnull()].index\n",
"for el in Occupation_Null_Indices_test: test.Occupation[el] = 'Prof-specialty'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Native Country"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"'United-States'"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(train['Native.Country'])[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"'United-States'"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mode(test['Native.Country'])[0][0]"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" from IPython.kernel.zmq import kernelapp as app\n",
"/home/anirudh/anaconda/lib/python2.7/site-packages/IPython/kernel/__main__.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n"
]
}
],
"source": [
"NativeCountry_Null_Indices_train = train[train['Native.Country'].isnull()].index\n",
"for el in NativeCountry_Null_Indices_train: train['Native.Country'][el] = 'United-States'\n",
" \n",
"NativeCountry_Null_Indices_test = test[test['Native.Country'].isnull()].index\n",
"for el in NativeCountry_Null_Indices_test: test['Native.Country'][el] = 'United-States'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Univariate Analysis"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"### Preprocessing Categorical Variables"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"***Age***"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nBVISV4BHCyENAIjY5Aukwr3X+vreeE+PXd3d/VPeT1WENAAg6sK915rHa06PkAYAxES491rzeM2p\nCGkAgCGrWDxuAAAIAklEQVQxgUoMQvqf//mf1dLSIknau3evCgoKot0FACDFzfTkLrM82SuqId3c\n3KzW1ladPHlS58+f1969e3Xy5MlodgEAwIxP7jLLk72iGtJnzpzRQw89JElavHixent7dfXqVWVl\nZUWzGwAAQj65q7X1gikOl0c1pP1+v5YtWxZ87XA41NnZSUgDAGJquqvJc2+7+4brTz4cPvkWsdk8\nnjMeh9RjeuHY2NiY0tLSYtlFTASudmt04Grw9Rdjn+ta/1f/VAN93ZK+qutab8eUb3DXejtuuH6i\n209ePxnHHG5/iRhzrGtOxjGH218yjjkZPpux7i9RY56XnTthDOPfn679Cy+9o7+yOyRJvb7PlJH1\ntRu+HuzvVuU/rplwS9jkbUxeZ/IYJ/8bzUba2NjYWNitbuDQoUNyOp3auHGjJOmhhx5SQ0ODMjMz\no9UFAAApI6oP2HjggQd0+vRpSdLZs2d16623EtAAAMxRVA93u91uLVu2TI8++qgsFouee+65aG4e\nAICUEtXD3QAAIHp4njQAAAZFSAMAYFCENAAABhW3B2ycO3dO27dv1xNPPKHNmzervb1du3bt0ujo\nqJxOp6qqqpJuTtXxqqqq5PV6NTw8rB/84Ae65557TFPfwMCAnnnmGXV3d2toaEjbtm3T0qVLTVOf\nJA0ODurv//7v9dRTT+lv/uZvTFPbu+++qx07dmjJki+nQly6dKm+//3va+fOnaaoT5IaGhp0/Phx\nWSwW7dixQ3feeadpfn51dXV64403gq8//vhjvf3226b5+V29elUVFRX6/PPPFQgEtH37di1evNg0\nP7/R0VE9//zz+vTTT2W1WvXjH/9Y8+bNC6u+uFw4NjAwoG3btmnRokVasmSJNm/erN27d+vv/u7v\n5PF4VF1drfnz5+uxxx6L9VBi4syZM6qpqdGxY8d05coVfe9739P9999vmvreeusttbe3q7S0VJcu\nXdITTzyhFStWmKY+Saqurtb//M//aNOmTWpubjZNbe+++67+4z/+QwcPHgwuM9PvXk9Pjx599FG9\n/vrrunr1qn7xi1/oiy++ME1947333nt6++23NTAwYJr6fvOb36ijo0M//OEP1dHRoccff1xut9s0\n9b3zzjt66623VF1drdbWVr3wwgvKzc0Nq764HO622Ww6evSo8vLygsuam5u1evVqSVJRUZGampri\nMZSY+M53vqOf/exnkqTs7GwNDAzovffeM0193/3ud1VaWipJunTpkubPn2+qn9/58+f12WefadWq\nVZLM9dmUvpz5bzwz1dfU1KSVK1cqMzNTTqdT+/btM1V94x0+fFjbtm0zVX25ubm6cuWKJKm3t1cO\nh8NU9V24cEH33nuvJOn2229XW1tb2PXFJaQtFsuU3fmBgYHgnKgOh0MdHeFPl2YUFoslOGlLXV2d\nVq1apWvXrpmmvuseffRR7dq1S3v27DHVz2///v3avXt38LWZaktLS9P58+f15JNPatOmTfrv//5v\nU9V38eJFDQ4O6sknn9TmzZvV1NRkqvqua2lp0YIFC5SXl2eq+tauXav29nY9/PDDevzxx/XMM8+Y\nqr4lS5boj3/8o0ZHR/XZZ5+pvb1dly5dCqu+uJ2TDsUst2r/7ne/02uvvabjx4/r4YcfDi43S30n\nT57UuXPn9KMf/WjC8mSu77e//a2+/e1v6+tf/7qkqbUkc22StGjRIm3fvl1r165VW1ubtm7dqpGR\nkeD7yV7f2NiYrly5osOHD+vixYvaunXrlPfNoK6uTo888siU5cle3xtvvKEFCxbopZde0rlz51RZ\nWTnheQ/JXt+qVav0/vvva9OmTVqxYoVcLpfa29uD78+mvoSFdGZmpgKBgGw2m3w+n1wuV6KGEhV/\n+MMfdPToUR0/flx2u91U9X388cfKzc3VggULdNddd2lkZERZWVkaGhpSRkZGUtf3+9//Xm1tbXrn\nnXd0+fJl2Ww209QmSbfeeqvWrl0rSVq4cKHy8vJ09uxZ03w28/Ly5Ha7lZ6eroULFyorK0tWq9U0\nP7/rmpubgzM4mulvywcffKAHH3xQknTXXXfp8uXLmjdvnql+fuXl5ZKk4eFhvfbaa5o/f35Y9cX1\nFqzx3xpWrlypU6dOSZIaGxtVWFgYz6FEVV9fn6qqqnT06FHdfPPNksxV3/vvv69///d/l/Tl40gH\nBgZ0//33B+dpT+b6qqurVVdXp9raWv3DP/yDtm3bZpraJOnNN9/UoUOHJEldXV3q7u7WI488YprP\n5gMPPKAzZ85obGxMPT09pvpsXufz+ZSZmambbvpyn8pMf1sWLVqkjz76SNKXpy6ysrK0cuVK0/z8\nrh8dkKRTp07pvvvuC/vzGZeruz/88EM9++yz6urqksVi0de+9jX96le/0u7duzU0NKT8/Hy9+OKL\nslgssR5KTNTW1urQoUP6xje+IenL84A/+clPVFlZaYr6hoaGtGfPHl2+fFmDg4MqKyvTsmXLVFFR\nYYr6rjt06JBuu+02PfDAA6ap7erVqyovL1dvb69GR0f11FNP6e677zZNfdKXv391dXWSpG3btume\ne+4xVX1nz57VwYMHdezYMUlSZ2enaeq7du2a9uzZo66uLg0PD+vpp5/WHXfcYZr6xsbGtGfPHp0/\nf15Wq1U//elPlZ6eHlZ9zN0NAIBBMeMYAAAGRUgDAGBQhDQAAAZFSAMAYFCENAAABkVIAwBgUIQ0\nAAAGRUgDAGBQ/w+xibRkApIn+AAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d67bcacd0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n9UlSTU2N9u3bJ5vNpo0bN+q73/2uZb6/6upqvfXWW8HXX3zxhd59913LfH8XLlzQli1b9NVXXykQ\nCKi0tFTTp0+3zPc3ODioZ599Vv/+97+VkZGhX/ziF7r22msjqi8uA8f8fr/Wr1+v/Px8zZgxQ6tX\nr9bWrVv1ox/9SEVFRaqsrNSUKVO0atWqWHclJo4dO6b9+/frlVdeUUdHhx544AHdddddlqnvnXfe\nUVNTk0pKSnTu3DmtW7dO8+bNs0x9klRZWam///3vevjhh1VXV2eZ2o4fP66//OUv2rVrV3Cblf7f\na29v18qVK/XGG2/owoUL+u1vf6uvv/7aMvUN9/HHH+vdd9+V3++3TH1/+tOf1NzcrJ/+9Kdqbm7W\nI488ooKCAsvUd/ToUb3zzjuqrKxUQ0ODfvnLXyo3Nzei+uJyudtut2vv3r2aNGlScFtdXZ0WLVok\nSSosLFRtbW08uhITd9xxh1544QVJUnZ2tvx+vz7++GPL1Hf//ferpKREknTu3DlNmTLFUt/f6dOn\ndebMGS1cuFCStX42pYsr/w1npfpqa2s1f/58ORwOud1uPffcc5aqb7iXXnpJ69evt1R9ubm56ujo\nkCR1dnbK5XJZqr6zZ8/qtttukyTddNNNamxsjLi+uIS0zWa77HTe7/crIyND0sU1vpubI18uzRQ2\nmy24aEt1dbUWLlyonp4ey9R3ycqVK7V582Zt27bNUt/fjh07tHXr1uBrK9WWlpam06dP6/HHH9fD\nDz+sv/3tb5aq78svv1Rvb68ef/xxrV69WrW1tZaq75ITJ05o6tSpmjRpkqXqW7JkiZqamnTffffp\nkUce0dNPP22p+mbMmKGPPvpIg4ODOnPmjJqamnTu3LmI6ovbPelQrDJV+/3339frr7+uffv26b77\n7gtut0p9Bw8e1KlTp/TUU0+N2J7M9b355pu6/fbbdcMNN0i6vJZkrk2S8vPzVVpaqiVLlqixsVFr\n167VwMBA8P1kr29oaEgdHR166aWX9OWXX2rt2rWXvW8F1dXVevDBBy/bnuz1vfXWW5o6dap+97vf\n6dSpUyovLx/xvIdkr2/hwoX65JNP9PDDD2vevHnyeDxqamoKvh9OfQkLaYfDoUAgILvdLq/XK4/H\nk6iuRMWHH36ovXv3at++fXI6nZaq74svvlBubq6mTp2qW265RQMDA8rKylJfX58yMzOTur4PPvhA\njY2NOnr0qM6fPy+73W6Z2iRp8uTJWrJkiSRp2rRpmjRpkk6ePGmZn81JkyapoKBA6enpmjZtmrKy\nspSRkWGZ7++Surq64AqOVvrd8umnn+qee+6RJN1yyy06f/68rr32Wkt9f2VlZZKk/v5+vf7665oy\nZUpE9cV1Ctbwvxrmz5+vw4cPS5KOHDmiBQsWxLMrUdXV1aWKigrt3btX1113nSRr1ffJJ5/o97//\nvaSLjyP1+/266667guu0J3N9lZWVqq6uVlVVlX7yk59o/fr1lqlNkt5++23t3r1bktTW1iafz6cH\nH3zQMj+bd999t44dO6ahoSG1t7db6mfzEq/XK4fDoWuuuXhOZaXfLfn5+fr8888lXbx1kZWVpfnz\n51vm+7t0dUCSDh8+rDvvvDPin8+4jO7+7LPP9Mwzz6itrU02m03f+ta39Oqrr2rr1q3q6+tTXl6e\nfv3rX8tms8W6KzFRVVWl3bt36+abb5Z08T7g888/r/LyckvU19fXp23btun8+fPq7e3Vhg0bNHv2\nbG3ZssUS9V2ye/du3Xjjjbr77rstU9uFCxdUVlamzs5ODQ4O6oknntCsWbMsU5908f+/6upqSdL6\n9et16623Wqq+kydPateuXXrllVckSS0tLZapr6enR9u2bVNbW5v6+/v15JNP6jvf+Y5l6hsaGtK2\nbdt0+vRpZWRk6H/+53+Unp4eUX2s3Q0AgKFYcQwAAEMR0gAAGIqQBgDAUIQ0AACGIqQBADAUIQ0A\ngKEIaQAADEVIAwBgqP8PME15bI52ZM4AAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65b52710>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.hist(train.Age, bins = 100)\n",
"plt.show()\n",
"plt.hist(test.Age, bins = 100)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 32561.000000\n",
"mean 38.581647\n",
"std 13.640433\n",
"min 17.000000\n",
"25% 28.000000\n",
"50% 37.000000\n",
"75% 48.000000\n",
"max 90.000000\n",
"Name: Age, dtype: float64"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.Age.describe()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 16281.000000\n",
"mean 38.767459\n",
"std 13.849187\n",
"min 17.000000\n",
"25% 28.000000\n",
"50% 37.000000\n",
"75% 48.000000\n",
"max 90.000000\n",
"Name: Age, dtype: float64"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test.Age.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"*** 25% of the population is between 17 and 28***\n",
"\n",
"*** 25% of the population is between 28 and 37***\n",
"\n",
"*** 75% of the population is under 48 ***\n",
"\n",
"-------------------------------------------"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"*** Working Class ***"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 32561\n",
"unique 8\n",
"top Private\n",
"freq 24532\n",
"Name: Workclass, dtype: object"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.Workclass.describe()"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 16281\n",
"unique 8\n",
"top Private\n",
"freq 12173\n",
"Name: Workclass, dtype: object"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test.Workclass.describe()"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"['State-gov',\n",
" 'Self-emp-not-inc',\n",
" 'Private',\n",
" 'Federal-gov',\n",
" 'Local-gov',\n",
" 'Self-emp-inc',\n",
" 'Without-pay',\n",
" 'Never-worked']"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"unique_working_classes = list(train.Workclass.unique())\n",
"unique_working_classes"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from sklearn.preprocessing import LabelEncoder"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"number = LabelEncoder()\n",
"train.Workclass = number.fit_transform(train.Workclass.astype('str'))\n",
"test.Workclass = number.fit_transform(test.Workclass.astype('str'))"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d6510e5d0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAREAAAEDCAYAAAASijAeAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAG11JREFUeJzt3X9Q1Nf97/HnsrCb4hphkbWGyzjVSSf3ViJ8a6YgjokM\nhglzJ4kZShBdpxlmWjORMRMm/tY6mWqQjJqkkQSbHxqL4gzWlDoZ1DQ0yVCoaTZG215nGtJvwiVk\nYRUIAsoqe/9w3BvTyq+z7AJ5Pf6Cs5/9vM/5KC/O58dyLIFAIICIyChFRboDIjKxKURExIhCRESM\nKERExIhCRESMKERExMiQIXL+/Hmys7OprKy8qf2DDz7grrvuCn5fU1NDXl4e+fn5VFdXA+D3+ykp\nKaGwsBC3201zc3NwnwUFBSxbtoxt27aFcDgiEm6DhkhfXx87d+5k4cKFN7VfuXKFffv24XK5AOjt\n7aW8vJz9+/dz8OBBDhw4QFdXF8ePHycuLo5Dhw6xatUqdu/eDcD27dvZvHkzhw8fpru7m/fff3+M\nhiciY23QELHZbFRUVDB9+vSb2l955RVWrFhBdHQ0AJ988gkpKSk4HA7sdjtpaWl4PB4aGxvJzs4G\nICMjA4/Hg9/vp6Wlhblz5wKQlZVFQ0PDWIxNRMJg0BCxWq3YbLab2v71r3/R1NRETk5OsM3n8+F0\nOoPfJyQk0N7ejs/nIz4+/nqhqCgsFgs+n49p06YFt3U6nbS1tYVkMCISfiO+sLpz507WrVs36Da3\nepL+P7XrqXuRiW1EIeL1evnss8946qmnePTRR2lvb8ftdjNjxgx8Pt9N27lcLlwuV7Dd7/cTCARI\nTEyks7Pz37YdjIJGZPyKHs5GN36IZ8yYwcmTJ4PtWVlZHDx4kMuXL7N582a6u7uJiorC4/GwadMm\nLl26RG1tLQsXLqSuro709HSio6OZPXs2H330ET/+8Y85deoUbrd70PoWi4X29m6DYZpJTJyq+qr/\nnat9o/5QBg2RM2fOsGXLFi5cuIDVaqWqqoqDBw8SFxcHXP/hBrjtttsoKSmhqKgIi8VCcXExDoeD\n3Nxc6uvrKSwsxG63U1paCsDGjRvZunUrAwMDpKamkpGRYTpWEYkQy0T5UwCRTmPVV/3vWu0b9Yei\nJ1ZFxIhCRESMKERExIhCRESMKERExIhCRESMKERExIhCRESMKERExIhCRESMKERExIhCRESMKERE\nxIhCRESMKERExIhCRESMKERExIhCRESMKERExIhCRESMKERExIhCRESMKERExMiQIXL+/Hmys7Op\nrKwEoLW1lZ/97Ge43W4ee+yx4DKZNTU15OXlkZ+fT3V1NXB96cySkhIKCwtxu900NzcH91lQUMCy\nZcvYtm3bGA1NRMJh0BXw+vr62LlzJwsXLgy2vfDCC+Tn55Obm0tlZSVvvPEGq1evpry8nOrqamJi\nYsjLy2PJkiW8++67xMXFsWvXLurr69m9ezd79uxh+/btbN68mblz51JSUsL777/PokWLxnywAv39\n/TQ3fz6i93R0OLh48dKoayYnz8Jms436/TK+DRoiNpuNiooK9u3bF2zbunUrdrsdgPj4eP7xj3/w\nySefkJKSgsPhACAtLQ2Px0NjYyMPP/wwABkZGWzcuBG/309LSwtz584Frq/n29DQoBAJk+bmz1nz\nXA2x0wZfRD1UervaeOHpB5kz586w1JPwGzRErFYrVqv1prbY2FgArl27xuHDh3niiSfw+Xw4nc7g\nNgkJCbS3t+Pz+YiPjwcgKioKi8WCz+dj2rRpwW2dTidtbW0hG5AMLXaaC0d8UqS7IZPEoCFyK9eu\nXWPt2rWkp6eTnp7O8ePHb3r9Vsv7/qf24S4FPJw1QcfSZKnf0eEIyX5Gwul0GPd/shz/iVZ7OEYV\nIhs2bOAHP/gBTzzxBAAulyt4gRXA6/WSmpp6U7vf7ycQCJCYmEhnZ+dN27pcQ0+tI72o8WSpb3Jt\nw6SmSf8n0/GfSLVv1B/KsG7xfnO2UFNTg81mY/Xq1cG2u+++m3PnztHd3U1PTw8ej4f58+eTmZlJ\nbW0tAHV1daSnpxMdHc3s2bP56KOPADh16pSuh4hMYIPORM6cOcOWLVu4cOECVquVqqoqrl27xm23\n3Ybb7QbgzjvvZOvWrZSUlFBUVITFYqG4uBiHw0Fubi719fUUFhZit9spLS0FYOPGjWzdupWBgQFS\nU1PJyMgY+5GKyJiwBIZ7USLCIj2lmyz1m5r+yYZ9jWG7sHqpo4Vnf55udHdmMh3/iVT7Rv2h6IlV\nETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETGi\nEBERIwoRETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETGiEBERIwoRETEyZIicP3+e7OxsKisr\nAWhtbcXtdrN8+XKefPJJ+vv7gesr4+Xl5ZGfn091dTVwfenMkpISCgsLcbvdNDc3B/dZUFDAsmXL\n2LZt2xgNTUTCYdAQ6evrY+fOnSxcuDDY9uKLL7JixQoqKyuZNWsWR48epbe3l/Lycvbv38/Bgwc5\ncOAAXV1dHD9+nLi4OA4dOsSqVavYvXs3ANu3b2fz5s0cPnyY7u5u3n///bEdpYiMmUFDxGazUVFR\nwfTp04Ntp0+fJisrC4DFixfT0NDA2bNnSUlJweFwYLfbSUtLw+Px0NjYSHZ2NgAZGRl4PB78fj8t\nLS3MnTsXgKysLBoaGsZqfCIyxgZdi9dqtWK1Wm9q6+vrIyYmBgCn00lbWxs+nw+n0xncJiEhgfb2\ndnw+H/Hx8QBERUVhsVjw+XxMmzYtuO2NfYjIxDRoiAzlVsv4jqR9uEsBD2dN0LE0Wep3dDhCsp+R\ncDodxv2fLMd/otUejhGHSGxsLP39/dhsNrxeLy6XC5fLhc/nC27j9XpJTU29qd3v9xMIBEhMTKSz\ns/OmbV0u15B1I72o8WSpf/HipZDsZ6Q1Tfo/mY7/RKp9o/5QhnWL95uzhQULFlBbWwvAyZMnWbRo\nEfPmzePcuXN0d3fT09ODx+Nh/vz5ZGZmBretq6sjPT2d6OhoZs+ezUcffQTAqVOnWLRo0YgHJyLj\nw6AzkTNnzrBlyxYuXLiA1WqlqqqKV199lQ0bNnDkyBGSkpJYunQpVquVkpISioqKsFgsFBcX43A4\nyM3Npb6+nsLCQux2O6WlpQBs3LiRrVu3MjAwQGpqKhkZGWEZrIiEniUw3IsSERbpKd1kqd/U9E82\n7GvEEZ8Ukv0N5VJHC8/+PJ05c+4c9T4m0/GfSLVv1B+KnlgVESMKERExohARESMKERExohARESMK\nERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKEREx\nohARESMKERExohARESMKERExohARESMjXkazp6eHdevW8fXXX9Pf38/q1auZM2cOa9euZWBggMTE\nRMrKyrDZbNTU1PDmm28SFRVFfn4+eXl5+P1+1q9fT2trK1arlR07dpCcnDwWYxORMBhxiBw7dozZ\ns2fz1FNP0dbWxsqVK0lLS2PFihXk5OSwZ88ejh49ykMPPUR5eTnV1dXExMSQl5fHkiVLePfdd4mL\ni2PXrl3U19eze/du9uzZMxZjE5EwGPHpTEJCQnBB7q6uLpxOJ6dPnyYrKwuAxYsX09DQwNmzZ0lJ\nScHhcGC320lLS8Pj8dDY2Eh2djYAGRkZeDyeEA5HRMJtxCHywAMP0Nrayv3338/KlStZv349fX19\nxMTEAOB0Omlra8Pn8+F0OoPvS0hIoL29HZ/PR3x8/PXiUVFYLBauXr0aouGISLiN+HTm97//PTNn\nzuQ3v/kN58+fZ/PmzVgsluDrt1rad6Tt3zacNUHH0mSp39HhCMl+RsLpdBj3f7Ic/4lWezhGHCIf\nf/wxCxcuBOCuu+7iq6++4nvf+x5XrlzBbrfj9XpxuVy4XC58Pl/wfV6vl9TU1Jva/X4/gUCA6Oih\nuxHpRY0nS/2LFy+FZD8jrWnS/8l0/CdS7Rv1hzLi05lZs2bxySefANDS0sKUKVNYsGABJ06cAODk\nyZMsWrSIefPmce7cObq7u+np6cHj8TB//nwyMzOpra0FoK6ujvT09JF2QUTGkRHPRB599FE2btyI\n2+3m6tWrPPPMM8yePZt169Zx5MgRkpKSWLp0KVarlZKSEoqKirBYLBQXF+NwOMjNzaW+vp7CwkLs\ndjulpaVjMS4RCZMRh0hsbCzPP//8v7W//vrr/9aWk5NDTk7OTW1RUVE8++yzIy0rIuOUnlgVESMK\nERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKEREx\nohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMjXnfmhpqaGl577TWsVitr\n1qzhhz/8IWvXrmVgYIDExETKysqw2WzU1NTw5ptvEhUVRX5+Pnl5efj9ftavX09raytWq5UdO3aQ\nnJwcynGJSJiMaibS0dHB3r17OXz4MBUVFfzxj3/kxRdfZMWKFVRWVjJr1iyOHj1Kb28v5eXl7N+/\nn4MHD3LgwAG6uro4fvw4cXFxHDp0iFWrVrF79+5Qj0tEwmRUIdLQ0MCCBQuIjY0lMTGRZ555htOn\nT5OVlQXA4sWLaWho4OzZs6SkpOBwOLDb7aSlpeHxeGhsbCQ7OxuAjIwMPB5P6EYkImE1qtOZlpYW\nLl++zOOPP87XX3/N6tWr6evrIyYmBgCn00lbWxs+nw+n0xl8X0JCAu3t7fh8PuLj44Hry2paLBau\nXr1KdPSoz65EJEJG9VMbCATo7Oxk7969tLS04Ha7/+31W71vJO3flJg4deQdDaHJUr+jwxGS/YyE\n0+kw7v9kOf4TrfZwjCpEpk+fTlpaGlFRUSQnJzNlyhRiYmK4cuUKdrsdr9eLy+XC5XLh8/mC7/N6\nvaSmpt7U7vf7CQQCQ85C2tu7R9PVkEhMnDpp6l+8eCkk+xlpTZP+T6bjP5Fq36g/lFFdE8nMzKSx\nsZFAIEBHRwd9fX1kZGRw4sQJAE6ePMmiRYuYN28e586do7u7m56eHjweD/PnzyczM5Pa2loA6urq\nSE9PH003RGQcGNVMZMaMGeTk5JCfnw/Ali1bmDt3LuvWrePIkSMkJSWxdOlSrFYrJSUlFBUVYbFY\nKC4uxuFwkJubS319PYWFhdjtdkpLS0M6KBEJH0tgOBckxoFIT+kmS/2mpn+yYV8jjvikkOxvKJc6\nWnj25+nMmXPnqPcxmY7/RKp9o/5Q9MSqiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiI\nEYWIiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiIEYWIiBhRiIiIEYWI\niBhRiIiIEYWIiBgZdYhcvnyZ7Oxsjh07RmtrK263m+XLl/Pkk0/S398PQE1NDXl5eeTn51NdXQ1c\nXzazpKSEwsJC3G43zc3NoRmJiETEqEPk5ZdfJj4+HoAXX3yRFStWUFlZyaxZszh69Ci9vb2Ul5ez\nf/9+Dh48yIEDB+jq6uL48ePExcVx6NAhVq1axe7du0M2GBEJv1GFSFNTE5999hn33nsvAKdPnyYr\nKwuAxYsX09DQwNmzZ0lJScHhcGC320lLS8Pj8dDY2Eh2djYAGRkZeDyeEA1FRCJhVCHy3HPPsWHD\nhuD3fX19xMTEAOB0Omlra8Pn8+F0OoPbJCQk0N7ejs/nC85goqKisFgsXL161WQMIhJBI17Q+623\n3mL+/PnccccdAHx7Kd9bLe070vZvG86aoGNpstTv6HCEZD8j4XQ6jPs/WY7/RKs9HCMOkffee4/m\n5mZOnTrFV199hc1mY8qUKVy5cgW73Y7X68XlcuFyufD5fMH3eb1eUlNTb2r3+/0EAgGio4fuRqQX\nNZ4s9S9evBSS/Yy0pkn/J9Pxn0i1b9QfyohDZM+ePcGvX3rpJZKSkvj44485ceIEDz74ICdPnmTR\nokXMmzePzZs3093dTVRUFB6Ph02bNnHp0iVqa2tZuHAhdXV1pKenj7QLIjKOjDhEvs1isVBcXMy6\ndes4cuQISUlJLF26FKvVSklJCUVFRcFtHA4Hubm51NfXU1hYiN1up7S0NBTjEJEIMQqR1atXB79+\n/fXX/+31nJwccnJybmqLiori2WefNSkrIuOInlgVESMKERExohARESMKERExohARESMKERExohAR\nESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMKERExohARESMK\nERExohARESMKERExohARESOjXnemrKwMj8fD1atX+cUvfsHcuXNZu3YtAwMDJCYmUlZWhs1mo6am\nhjfffJOoqCjy8/PJy8vD7/ezfv16WltbsVqt7Nixg+Tk5FCOS0TCZFQh0tjYyKeffkpVVRWdnZ08\n/PDDZGRksGLFCnJyctizZw9Hjx7loYceory8nOrqamJiYsjLy2PJkiW8++67xMXFsWvXLurr69m9\ne/dNy3OKyMQxqtOZe+65h+effx6AqVOn0tfXx4cffkhWVhYAixcvpqGhgbNnz5KSkoLD4cBut5OW\nlobH46GxsZHs7GwAMjIy8Hg8IRqOiITbqELEarUSGxsLQHV1Nffeey+9vb3ExMQA4HQ6aWtrw+fz\n4XQ6g+9LSEigvb0dn89HfHz89Q5ERWGxWLh69arpWEQkAozW4n3nnXf43e9+x2uvvcb9998fbA8E\nAv9x+5G2f1Ni4tTRdTJEJkv9jg5HSPYzEk6nw7j/k+X4T7TawzHqEPnggw+oqKjgtddew+FwEBsb\nS39/PzabDa/Xi8vlwuVy4fP5gu/xer2kpqbe1O73+wkEAkRHD96V9vbu0XbVWGLi1ElT/+LFSyHZ\nz0hrmvR/Mh3/iVT7Rv2hjOp0pru7m7KyMioqKrj99tsBWLBgAbW1tQCcPHmSRYsWMW/ePM6dO0d3\ndzc9PT14PB7mz59PZmZmcNu6ujrS09NH0w0RGQdGNRN5++236ezsZM2aNQBYLBZKS0vZvHkzR44c\nISkpiaVLl2K1WikpKaGoqAiLxUJxcTEOh4Pc3Fzq6+spLCzEbrdTWloa0kGJSPhYAsO5IDEORHpK\nN1nqNzX9kw37GnHEJ4Vkf0O51NHCsz9PZ86cO0e9j8l0/CdS7Rv1h6InVkXEiEJERIwoRETEiEJE\nRIwoRETEiNETqyLjTX9/P83Nn4d0nx0djkEf0ktOnoXNZgtpzYlEISKTSnPz56x5robYaa6w1Ovt\nauOFpx80uoU90SlEZNKJneYK23MwomsiImJIM5Fv+U/n1EOdE5v6rp9Ty8SmEPkWnVOLjIxC5D/Q\nObXI8OmaiIgYUYiIiBGFiIgY0TUREQMD167yxRehfUL2m759Z3A83slTiIgYuHzpAruOXCR2WuuY\n1xqvd/IUIjKmQvGbeiTP6YzlrOBWvut38xQiMqbC+Zsa4ML//T8k/I//GZZact2ECJH/vayY26be\nEZZaPu9/Y0mYF5Za3xXh/E3d2+UNSx35/yZEiFy1fZ8rU/9XWGr1d17DHpZKIpODbvGKiJGIzUR2\n7NjB2bNnAdi0aRMpKSmR6oqIGIjITOT06dN88cUXVFVVsX37drZv3x6JbohICEQkRBobG8nOzgZg\nzpw5dHV10dPTE4muiIihiISIz+cjPj4++L3T6aS9vT0SXRERQ+Pi7kwgEMBisdzydf/XX2C1hGe1\nz0D3f9N77WpYasH1pxCHekAqlH8U6YsvPqe3qy0k+xqOvu6LwK3/bVVv+IbzfyXUEhP/a8htIhIi\nLpcLn88X/L6trY3ExMRbbv/HYxXh6NZ3Qnr6f5GfvzTS3ZBJJCKnM5mZmZw4cQKAv//978yYMYPY\n2NhIdEVEDEVkJpKWlsaPfvQjCgoKsFqtbN26NRLdEJEQsAQCgfBcbBCRSUlPrIqIEYWIiBhRiIiI\nkXEfIjt27KCgoICCggLOnTsX9vrnz58nOzubysrKsNcGKCsro6CggLy8PE6dOhW2un19faxZswa3\n201+fj5/+tOfwlb7my5fvkx2djbHjh0La92//OUvpKen43a7cbvd/OpXvwprfYCamhoeeughHnnk\nEd57772w1q6urg6O3e12k5aWdsttx8XDZrfyzc/YNDU1sWnTJqqqqsJWv6+vj507d7Jw4cKw1fym\nxsZGPv30U6qqqujs7GTp0qUsWbIkLLXr6uq4++67KSoq4ssvv+Sxxx7jvvvuC0vtb3r55ZeJi4sb\n9GHEsfKTn/yEF154Iex1ATo6Oti7dy/Hjh2jp6eHX//619x7771hq5+Xl0deXh4AH374IbW1tbfc\ndlyHyK0+YzNlypSw1LfZbFRUVLBv376w1Pu2e+65h7vvvhuAqVOn0tvbO+TTvaGSm5sb/PrLL79k\n5syZY17z25qamvjss8+47777iMRNxEjeuGxoaGDBggXExsYSGxvLM888E7G+7N27l127dt3y9XF9\nOhPpz9hYrdaI/mVtq9UafAivurqa++67L+y/kQsKCnj66afZsGFDWOsCPPfccxGpC2CxWGhqauLx\nxx+nsLCQP//5z2Gt39LSwuXLl3n88cdZvnw5DQ0NYa1/w9mzZ5k5cyYJCQm33GZcz0S+LVy/hceb\nd955h6NHj/L666+HvXZVVRXnz5/n6aefpqamJmx133rrLebPn88dd9wRkRnBrFmzWL16NQ888ADN\nzc2sXLmSU6dOER0dnh+ZQCBAZ2cne/fupaWlhZUrV1JXVxeW2t9UXV3NI488Mug24zpERvoZm8no\ngw8+YN++fbz66qs4HI6w1f3b3/5GQkICM2fO5K677uLatWtcvHgRp9MZlvrvvfcezc3NnDp1iq++\n+gqbzcb3v/99MjIywlJ/xowZPPDAAwAkJyczffp0vF4vSUnh+Vux06dPJy0tjaioKJKTk5kyZUpY\nj/8Np0+fHvKJ8nF9OjNePmMTqXPj7u5uysrKeOWVV7j99tvDWvuvf/0rb7zxBnD9tLK3tzes/4H3\n7NlDdXU1R44c4ac//SlPPPFE2AIE4A9/+AMvvfQSABcuXODChQvMmDEjbPUzMzNpbGwkEAjQ0dER\n9uMP4PV6iY2NHXL2Na5nIpH+jM2ZM2fYsmULFy5cwGq1UlVVxW9/+1umTZsWlvpvv/02nZ2drFmz\nJthWVlYWloucy5YtY+PGjSxfvpzLly/zy1/+csxrjidZWVmUlJSwbNkyBgYG2LZtW9hOZeD6TCgn\nJ4f8/HwAtmzZErbaN/h8PqZPnz7kdvrsjIgYGdenMyIy/ilERMSIQkREjChERMSIQkREjChERMSI\nQkREjChERMTI/wNzQ7RdBJKXeAAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d64a14890>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(4,4), dpi=1600)\n",
"plt.hist(train.Workclass, bins = len(unique_working_classes))\n",
"plt.show()\n",
"\n",
"fig = plt.figure(figsize=(4,4), dpi=1600)\n",
"plt.hist(test.Workclass, bins = len(unique_working_classes))\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([6, 5, 3, 0, 1, 4, 7, 2])"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.Workclass.unique()"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Federal-gov',\n",
" 1: 'Local-gov',\n",
" 2: 'Never-worked',\n",
" 3: 'Private',\n",
" 4: 'Self-emp-inc',\n",
" 5: 'Self-emp-not-inc',\n",
" 6: 'State-gov',\n",
" 7: 'Without-pay'}"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Workclass Decoder\n",
"\n",
"workclass_decoder = dict(zip(train.Workclass.unique(),unique_working_classes))\n",
"workclass_decoder"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# # Combine bins based on some common sense\n",
"# new_workclass_encoder = {0:0,1:0,2:1,3:2,4:2,5:2,6:0,7:1}\n",
"\n",
"# new_workclass_train = [new_workclass_encoder[i] for i in train.Workclass]\n",
"# train.Workclass = new_workclass_train\n",
"\n",
"# new_workclass_test = [new_workclass_encoder[i] for i in test.Workclass]\n",
"# test.Workclass = new_workclass_test\n",
"\n",
"# new_workclass_decoder = {0:'Government',1:'Never Worked / Without Pay / Information NA', 2:'Private'}"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# new_workclass_decoder"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# fig = plt.figure(figsize=(2,5), dpi=1600)\n",
"# plt.hist(train.Workclass, bins = 3)\n",
"\n",
"# fig = plt.figure(figsize=(2,5), dpi=1600)\n",
"# plt.hist(test.Workclass, bins = 3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"*** Education ***"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Bachelors' 'HS-grad' '11th' 'Masters' '9th' 'Some-college' 'Assoc-acdm'\n",
" 'Assoc-voc' '7th-8th' 'Doctorate' 'Prof-school' '5th-6th' '10th' '1st-4th'\n",
" 'Preschool' '12th']\n"
]
}
],
"source": [
"education_levels_train = train.Education.unique()\n",
"print education_levels_train"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'10th': 0,\n",
" '11th': 1,\n",
" '12th': 2,\n",
" '1st-4th': 3,\n",
" '5th-6th': 4,\n",
" '7th-8th': 5,\n",
" '9th': 6,\n",
" 'Assoc-acdm': 7,\n",
" 'Assoc-voc': 8,\n",
" 'Bachelors': 9,\n",
" 'Doctorate': 10,\n",
" 'HS-grad': 11,\n",
" 'Masters': 12,\n",
" 'Preschool': 13,\n",
" 'Prof-school': 14,\n",
" 'Some-college': 15}\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAfMAAAFXCAYAAAC2gqezAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAH3dJREFUeJzt3X1s1fX99/HXOYee48pB2lPOcdo1nTA3rwiDRtxa6FC6\naiOJKEstWDhGQ3INJ0RiM24LMyZAqQGUCYpDBBpuupWhDVlKURm6Xm1wHhW3XCQ/cdP+mtL20Btb\nWugpnOsPf+tFoRR7ek4Pn9Pn4y/59px+Pu+ebs+eu++xBIPBoAAAgLGs0d4AAAAYGmIOAIDhiDkA\nAIYj5gAAGI6YAwBgOGIOAIDhbhjz06dPKzs7W/v27ZMk1dfX66mnnpLX69XTTz8tv98vSSovL1du\nbq7y8vJUVlYmSQoEAiooKFB+fr68Xq9qa2t7v+e8efP0xBNP6IUXXojQaAAAjAwDxryrq0sbN25U\nZmZm77FXXnlFeXl5KikpUXZ2tt566y11dXVp+/bt2r17t0pKSrRnzx61tbXpyJEjSkhI0P79+7Vo\n0SJt3rxZkrRu3ToVFhbqwIEDam9v1wcffBDZKQEAiGEDxtxut2vHjh0aN25c77G1a9cqJydHkpSY\nmKjW1lZ99tlnmjRpkpxOpxwOh9LS0uTz+VRTU6Ps7GxJUkZGhnw+nwKBgOrq6jRx4kRJUlZWlqqr\nqyM1HwAAMW/AmNtsNtnt9j7H4uPjZbPZdOnSJR04cECPPPKI/H6/XC5X72WSkpLU1NQkv9+vxMTE\nbxeyWmWxWOT3+zV27Njey7pcLjU2NoZzJgAARpSQXgB36dIlLVu2TOnp6UpPT7/m69c7Q2x/xzmb\nLAAAQxNSzFeuXKk777xTzz77rCTJ4/H0vhBOkhoaGuTxePocDwQCCgaDcrvdam1tveayAyH4AABc\n36jvcqErY1peXi673a7Fixf3HvvpT3+qwsJCtbe3y2q1yufzafXq1ero6FBFRYUyMzN1/Phxpaen\na9SoURo/frw+/vhj3XvvvTp27Ji8Xu+A61ssFjU1tYc44s3P7R7DfAaL5flieTaJ+Uw3Eub7rgaM\n+aeffqo1a9bo3LlzstlsOnjwoC5duqRbbrmlN8B33XWX1q5dq4KCAi1cuFAWi0VLliyR0+nUrFmz\nVFVVpfz8fDkcDhUVFUmSVq1apbVr1+ry5cuaMmWKMjIyhjAuAAAjm8WUj0CN9b++mM9csTxfLM8m\nMZ/pRsJ83xVngAMAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDE\nHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAc\nMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAM\nR8wBADAcMQcAwHCjor0BALhZdXd3q7b2q2FZKyUlVXa7fVjWQuwh5gBwHbW1X+m5l8oVP9YT0XU6\n2xr1ym9na8KEuyK6DmIXMQeAAcSP9ciZmBztbQAD4jlzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAM\nR8wBADDcDWN++vRpZWdna9++fZKk+vp6eb1ezZ8/X0uXLlV3d7ckqby8XLm5ucrLy1NZWZkkKRAI\nqKCgQPn5+fJ6vaqtre39nvPmzdMTTzyhF154IUKjAQAwMgwY866uLm3cuFGZmZm9x7Zu3aoFCxZo\n3759Sk1N1aFDh9TZ2ant27dr9+7dKikp0Z49e9TW1qYjR44oISFB+/fv16JFi7R582ZJ0rp161RY\nWKgDBw6ovb1dH3zwQWSnBAAghg0Yc7vdrh07dmjcuHG9x06ePKmsrCxJ0syZM1VdXa1Tp05p0qRJ\ncjqdcjgcSktLk8/nU01NjbKzsyVJGRkZ8vl8CgQCqqur08SJEyVJWVlZqq6ujtR8AADEvAHPAGez\n2WSz2foc6+rqUlxcnCTJ5XKpsbFRfr9fLper9zJJSUlqamqS3+9XYmKiJMlqtcpiscjv92vs2LG9\nl/3P9wAAAKEZ0gvggsHgkI9f77IAAOC7GfS52ePj49Xd3S273a6GhgZ5PB55PB75/f7eyzQ0NGjK\nlCl9jgcCAQWDQbndbrW2tva5rMdz4w8xcLvHDHarRmE+s8XyfLE8mzTwfC0tzmHbh8vljMjPeiTf\nfiPJd4r5lfeep02bpoqKCs2ePVuVlZWaMWOGJk+erMLCQrW3t8tqtcrn82n16tXq6OhQRUWFMjMz\ndfz4caWnp2vUqFEaP368Pv74Y9177706duyYvF7vDffQ1NQe+pQ3Obd7DPMZLJbni+XZpBvP19zc\nMWx7aW7uCPvPeqTffqYbzB8qA8b8008/1Zo1a3Tu3DnZbDYdPHhQO3fu1MqVK1VaWqrk5GTNmTNH\nNptNBQUFWrhwoSwWi5YsWSKn06lZs2apqqpK+fn5cjgcKioqkiStWrVKa9eu1eXLlzVlyhRlZGQM\nbWIAAEYwS9CQJ61j/a8v5jNXLM8Xy7NJN57vzJn/0so3aiL+EagdLXXa8L/Tw/555iP99jPdYO6Z\ncwY4AAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcA\nwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wB\nADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFz\nAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHCj\nBnuF8+fPa/ny5frmm2/U3d2txYsXa8KECVq2bJkuX74st9ut4uJi2e12lZeXa+/evbJarcrLy1Nu\nbq4CgYBWrFih+vp62Ww2rV+/XikpKZGYDQCAEWHQMT98+LDGjx+v559/Xo2NjXryySeVlpamBQsW\nKCcnR1u2bNGhQ4f06KOPavv27SorK1NcXJxyc3P14IMP6v3331dCQoI2bdqkqqoqbd68WVu2bInE\nbAAAjAiDfpg9KSlJra2tkqS2tja5XC6dPHlSWVlZkqSZM2equrpap06d0qRJk+R0OuVwOJSWliaf\nz6eamhplZ2dLkjIyMuTz+cI4DgAAI8+gY/7www+rvr5eDz30kJ588kmtWLFCXV1diouLkyS5XC41\nNjbK7/fL5XL1Xi8pKUlNTU3y+/1KTEz8dnGrVRaLRT09PWEaBwCAkWfQD7O/8847uv322/WHP/xB\np0+fVmFhoSwWS+/Xg8Fgv9cb7PGrud1jBrtVozCf2WJ5vlieTRp4vpYW57Dtw+VyRuRnPZJvv5Fk\n0DH/5JNPlJmZKUm6++67dfbsWX3ve9/TxYsX5XA41NDQII/HI4/HI7/f33u9hoYGTZkypc/xQCCg\nYDCoUaNuvI2mpvbBbtUYbvcY5jNYLM8Xy7NJN56vublj2PbS3NwR9p/1SL/9TDeYP1QG/TB7amqq\nPvvsM0lSXV2dRo8erWnTpuno0aOSpMrKSs2YMUOTJ0/W559/rvb2dp0/f14+n09Tp07V9OnTVVFR\nIUk6fvy40tPTB7sFAABwhUHfM587d65WrVolr9ernp4evfjiixo/fryWL1+u0tJSJScna86cObLZ\nbCooKNDChQtlsVi0ZMkSOZ1OzZo1S1VVVcrPz5fD4VBRUVEk5gIAYMQYdMzj4+P18ssvX3N8165d\n1xzLyclRTk5On2NWq1UbNmwY7LIAAOA6OAMcAACGI+YAABiOmAMAYDhiDgCA4Yg5AACGI+YAABiO\nmAMAYDhiDgCA4Yg5AACGI+YAABiOmAMAYDhiDgCA4Qb9QSsAANwMuru7debMfw3beikpqbLb7cO2\n3mAQcwCAkf7973/ruZfKFT/WE/G1Otsa9cpvZ2vChLsivlYoiDkAwFjxYz1yJiZHextRx3PmAAAY\njpgDAGA4Yg4AgOGIOQAAhiPmAAAYjpgDAGA4Yg4AgOGIOQAAhiPmAAAYjpgDAGA4Yg4AgOGIOQAA\nhiPmAAAYjpgDAGA4Yg4AgOGIOQAAhiPmAAAYjpgDAGA4Yg4AgOGIOQAAhiPmAAAYjpgDAGA4Yg4A\ngOGIOQAAhiPmAAAYjpgDAGA4Yg4AgOFGhXrF8vJyvfnmm7LZbHruuef04x//WMuWLdPly5fldrtV\nXFwsu92u8vJy7d27V1arVXl5ecrNzVUgENCKFStUX18vm82m9evXKyUlJZxzAQAwYoR0z7ylpUXb\ntm3TgQMHtGPHDr333nvaunWrFixYoH379ik1NVWHDh1SZ2entm/frt27d6ukpER79uxRW1ubjhw5\nooSEBO3fv1+LFi3S5s2bwz0XAAAjRkgxr66u1rRp0xQfHy+3260XX3xRJ0+eVFZWliRp5syZqq6u\n1qlTpzRp0iQ5nU45HA6lpaXJ5/OppqZG2dnZkqSMjAz5fL7wTQQAwAgT0sPsdXV1unDhgp555hl9\n8803Wrx4sbq6uhQXFydJcrlcamxslN/vl8vl6r1eUlKSmpqa5Pf7lZiYKEmyWq2yWCzq6enRqFEh\nP+oPAMCIFVI9g8GgWltbtW3bNtXV1cnr9V7z9etdbzDHr+R2jxn8Rg3CfGaL5flieTZp4PlaWpzD\ntg+XyxmRn3Us334tLfXDul6kbqNwCCnm48aNU1pamqxWq1JSUjR69GjFxcXp4sWLcjgcamhokMfj\nkcfjkd/v771eQ0ODpkyZ0ud4IBBQMBi84b3ypqb2ULZqBLd7DPMZLJbni+XZpBvP19zcMWx7aW7u\nCPvPOtZvv+EWidtoIIP5wyGk58ynT5+umpoaBYNBtbS0qKurSxkZGTp69KgkqbKyUjNmzNDkyZP1\n+eefq729XefPn5fP59PUqVM1ffp0VVRUSJKOHz+u9PT0ULYBAAAU4j3z2267TTk5OcrLy5MkrVmz\nRhMnTtTy5ctVWlqq5ORkzZkzRzabTQUFBVq4cKEsFouWLFkip9OpWbNmqaqqSvn5+XI4HCoqKgrr\nUAAAjCQhv+Js7ty5mjt3bp9ju3btuuZyOTk5ysnJ6XPMarVqw4YNoS4NAACuwBngAAAwHDEHAMBw\nxBwAAMMRcwAADEfMAQAwHDEHAMBwxBwAAMMRcwAADEfMAQAwHDEHAMBwxBwAAMOFfG52ALhad3e3\namu/Gpa1UlJSZbfbh2Ut4GZHzAGETW3tV3rupXLFj/VEdJ3Otka98tvZmjDhroiuA5iCmAMIq/ix\nHjkTk6O9DWBE4TlzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAM\nR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAA\nwxFzAAAMR8wBADAcMQcAwHDEHAAAwxFzAAAMR8wBADAcMQcAwHDEHAAAw4Uc8wsXLig7O1uHDx9W\nfX29vF6v5s+fr6VLl6q7u1uSVF5ertzcXOXl5amsrEySFAgEVFBQoPz8fHm9XtXW1oZnEgAARqiQ\nY/7aa68pMTFRkrR161YtWLBA+/btU2pqqg4dOqTOzk5t375du3fvVklJifbs2aO2tjYdOXJECQkJ\n2r9/vxYtWqTNmzeHbRgAAEaikGJ+5swZffnll7r//vslSSdPnlRWVpYkaebMmaqurtapU6c0adIk\nOZ1OORwOpaWlyefzqaamRtnZ2ZKkjIwM+Xy+MI0CAMDIFFLMX3rpJa1cubL3311dXYqLi5MkuVwu\nNTY2yu/3y+Vy9V4mKSlJTU1N8vv9vfforVarLBaLenp6hjIDAAAj2qBj/vbbb2vq1Km64447JEnB\nYLDP16/+d6jHAQDAdzNqsFc4ceKEamtrdezYMZ09e1Z2u12jR4/WxYsX5XA41NDQII/HI4/HI7/f\n33u9hoYGTZkypc/xQCCgYDCoUaNuvA23e8xgt2oU5jNbLM83mNlaWpwR3ElfLpczLD/3gb6HifNc\nLZZ/N1ta6od1vUjdRuEw6Jhv2bKl979fffVVJScn65NPPtHRo0c1e/ZsVVZWasaMGZo8ebIKCwvV\n3t4uq9Uqn8+n1atXq6OjQxUVFcrMzNTx48eVnp7+ndZtamof7FaN4XaPYT6DxfJ8g52tubkjgru5\ndq2h/txvNJ9p81wtln83oyESt9FABvOHw6BjfjWLxaIlS5Zo+fLlKi0tVXJysubMmSObzaaCggIt\nXLiw9zJOp1OzZs1SVVWV8vPz5XA4VFRUNNQtAAAwog0p5osXL+797127dl3z9ZycHOXk5PQ5ZrVa\ntWHDhqEsCwAArsAZ4AAAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEA\nMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMA\nAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQc\nAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwxBwDAcMQcAADDEXMAAAxHzAEAMBwx\nBwDAcKNCvWJxcbF8Pp96enr061//WhMnTtSyZct0+fJlud1uFRcXy263q7y8XHv37pXValVeXp5y\nc3MVCAS0YsUK1dfXy2azaf369UpJSQnnXAAAjBghxbympkZffPGFDh48qNbWVj322GPKyMjQggUL\nlJOToy1btujQoUN69NFHtX37dpWVlSkuLk65ubl68MEH9f777yshIUGbNm1SVVWVNm/erC1btoR7\nNgAARoSQHma/77779PLLL0uSxowZo66uLn300UfKysqSJM2cOVPV1dU6deqUJk2aJKfTKYfDobS0\nNPl8PtXU1Cg7O1uSlJGRIZ/PF6ZxAAAYeUKKuc1mU3x8vCSprKxM999/vzo7OxUXFydJcrlcamxs\nlN/vl8vl6r1eUlKSmpqa5Pf7lZiY+O0GrFZZLBb19PQMdRYAAEakIb0A7t1339Wf//xnrV27ts/x\nYDDY7+UHexwAANxYyC+A+/DDD7Vjxw69+eabcjqdio+PV3d3t+x2uxoaGuTxeOTxeOT3+3uv09DQ\noClTpvQ5HggEFAwGNWrUwFtxu8eEulUjMJ/ZYnm+wczW0uKM4E76crmcYfm5D/Q9TJznarH8u9nS\nUj+s60XqNgqHkGLe3t6u4uJi7dmzR7feeqskadq0aaqoqNDs2bNVWVmpGTNmaPLkySosLFR7e7us\nVqt8Pp9Wr16tjo4OVVRUKDMzU8ePH1d6evoN12xqag9lq0Zwu8cwn8Fieb7Bztbc3BHB3Vy71lB/\n7jeaz7R5rhbLv5vREInbaCCD+cMhpJj/5S9/UWtrq5577jlJksViUVFRkQoLC1VaWqrk5GTNmTNH\nNptNBQUFWrhwoSwWi5YsWSKn06lZs2apqqpK+fn5cjgcKioqCmUbAABAIcZ87ty5mjt37jXHd+3a\ndc2xnJwc5eTk9DlmtVq1YcOGUJYGAABX4QxwAAAYjpgDAGC4kF/NDgAIj8uXevT111+F/fu2tDiv\neRFfSkqq7HZ72NdCdBFzAIiyCx3ntKm0WfFjI/tWq862Rr3y29maMOGuiK6D4UfMAeAmED/WI2di\ncrS3AUPxnDkAAIYj5gAAGI6YAwBgOGIOAIDhiDkAAIbj1exAjOvu7lZtbWjvYe7vfcoDicR7pQHc\nGDEHYlxt7Vd67qVyxY/1RHytc//9f5X0g/8V8XUA9EXMgRFguN7D3NnWEPE1AFyL58wBADAcMQcA\nwHDEHAAAw/Gc+f8Yyit+B4tPLQIAhBMx/x/D9YpfPrUIABBuxPwKfGoRAMBExByIkuF6aocTuQCx\nj5gDUTJcT+1wIhcg9hFzIIqG46kdTuQCxD4jYv7Bh/9HLa3nI7pGXd1/R/T7AwAQKUbE/He/L1ec\nK7IPE55vbZQ9fkxE1wAAIBKMiLnje2MUNzohomsEuiN7zx8AgEjhDHAAABiOmAMAYDhiDgCA4Yg5\nAACGM+IFcIDEh+EAwPUQcxiDD8MBgP4RcxiFD8MBbn7D9ShaW1tTxNcwBTEHAIQVnzsw/Ig5cJXL\nl3oG9UljLS1ONTd3DHodPs0MsYzPHRhexBy4yoWOc9pU2qz4sfURXYd7FQDChZgPs/7u9YV6z+67\n4FXZoeFexc1tsI+eXM+N/rfHoycwBTEfZsN1r0/iVdmIXTx6AvRFzKMg1l6RfaNXrobrkQfuJeFK\nPHoC/H/EHEPGK1cBILqIOcKCe0kAED2cmx0AAMMRcwAADBe1h9nXr1+vU6dOSZJWr16tSZMmRWsr\nMStcb9+5EV6YBgDRFZWYnzx5Ul9//bUOHjyoM2fOaPXq1Tp48GA0thLTePsOAIwMUYl5TU2NsrOz\nJUkTJkxQW1ubzp8/r9GjR0djOzGNF6YB+A8erYtdUYm53+/XPffc0/tvl8ulpqYmYg4AEcSjdbHr\npnhrWjAYlMViue7XA998LZslGNE9XG7z64I1IaJrSFJXe7Ok689q4lqswzrDvRbrhL7O98YkRXwd\n6dszUEbacP5uD8c8QxGVmHs8Hvn9/t5/NzY2yu12X/fy7x3eMRzbAgDASFF5a9r06dN19OhRSdI/\n//lP3XbbbYqPj4/GVgAAMF5U7pmnpaXpnnvu0bx582Sz2bR27dpobAMAgJhgCQaDkX0yGgAARBRn\ngAMAwHDEHAAAwxFzAAAMd9PHfP369Zo3b57mzZunzz//PNrbCbvi4mLNmzdPubm5OnbsWLS3E3YX\nLlxQdna2Dh8+HO2thF15ebkeffRR/epXv9KJEyeivZ2wOn/+vBYvXqwnn3xS8+bN09/+9rdobyks\nTp8+rezsbO3bt0+SVF9fL6/Xq/nz52vp0qXq7u6O8g6Hpr/5nnrqKXm9Xj399NN93hJsoqvn+48P\nP/xQd999d5R2FT5XzxcIBFRQUKDHH39cTz31lL755pvrXvemjvmV53Bft26d1q1bF+0thVVNTY2+\n+OILHTx4UDt37tT69eujvaWwe+2115SQkDDgSYFM1NLSom3btunAgQPasWOH3nvvvWhvKawOHz6s\n8ePHa+/evdq6dWtM/G+vq6tLGzduVGZmZu+xrVu3asGCBdq3b59SU1N16NChKO5waPqb75VXXlFe\nXp5KSkqUnZ2tt956K4o7HJr+5pOkixcv6o033pDH44nSzsKjv/n++Mc/KikpSX/60580a9Ys/f3v\nf7/u9W/qmF/vHO6x4r777tPLL78sSRozZow6OzsVS28uOHPmjL788ks98MADMTWXJFVXV2vatGmK\nj4+X2+3Wiy++GO0thVVSUpJaW1slSW1tbXK5XFHe0dDZ7Xbt2LFD48aN6z128uRJZWVlSZJmzpyp\n6urqaG1vyPqbb+3atcrJyZEkJSYm9t6mJupvPkl6/fXXtWDBAo0adVOc0DRk/c3317/+VY888ogk\nKS8vr/d3tT83dcz9fr8SExN7//2fc7jHCpvN1nuynLKyMj3wwAMxdQ/2pZde0sqVK6O9jYioq6vT\nhQsX9Mwzz2j+/PlGR6A/Dz/8sOrr6/XQQw/J6/VqxYoV0d7SkNlsNtnt9j7Hurq6FBcXJ+nb/39p\nbLy5T9k5kP7mi4+Pl81m06VLl3TgwIHeMJiov/n+9a9/6cyZM71/sJisv/nq6up04sQJeb1ePf/8\n82pra7vu9W/qmF/tRudwN9W7776rQ4cOac2aNdHeSti8/fbbmjp1qu64446Yu1cuffu72Nraqm3b\ntqmoqEirVq2K9pbC6p133tHtt9+uyspK7d69O+YeeehPLP6eStKlS5e0bNkypaenKz09PdrbCauN\nGzdq+fLl0d5GxASDQY0fP14lJSW66667tGPH9U9tflM/LjHYc7ib6MMPP9Qbb7yhnTt3yul0Rns7\nYXPixAnV1tbq2LFjOnv2rOx2u77//e8rIyMj2lsLi3HjxiktLU1Wq1UpKSkaPXq0mpubY+LhaEn6\n5JNPep+7u/vuu3X27NmY/GM6Pj5e3d3dstvtamhoMP551/6sXLlSd955p5599tlobyWsGhoa9OWX\nX+r555+XJDU1Ncnr9aqkpCTKOwufcePG6Wc/+5kkKTMzU7///e+ve9mb+p55rJ/Dvb29XcXFxXr9\n9dd16623Rns7YbVlyxaVlZWptLRUjz/+uJ599tmYCbn07e9mTU2NgsGgWlpa1NnZGTMhl6TU1FR9\n9tlnkr59qC8+Pj5mQn7lPfBp06apoqJCklRZWakZM2ZEa1thc+V85eXlstvtWrx4cRR3FF7/me+2\n225TZWWlSktLVVpaKrfbHRMhv/L2+8UvfqEPPvhAkvSPf/xD48ePv+71bvrTuW7atEkfffRR7znc\nf/KTn0R7S2FTWlqqV199VT/84Q97jxUXF+v222+P3qYi4NVXX9UPfvADPfbYY9HeSliVlpaqrKxM\nkvSb3/xGM2fOjPKOwqezs1OrVq3SuXPn1NPTo6VLl+rnP/95tLc1JJ9++qnWrFmjc+fOyWazKSEh\nQTt37tTKlSt18eJFJScna8OGDbLZbNHeakj6m+/SpUu65ZZbNHr0aEnSj370I/3ud7+L8k5D0998\nJSUlSkj49qOrf/nLXxr9rpLr/X6uX79eTU1NGj16tDZu3HjdOw03fcwBAMDAbuqH2QEAwI0RcwAA\nDEfMAQAwHDEHAMBwxBwAAMMRcwAADEfMAQAwHDEHAMBw/w8GskZC9vha7gAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65103f90>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAe4AAAFXCAYAAABk0q3rAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHslJREFUeJzt3X9Q1XXe9/HXOQfO2QuOCQfPsWIZd3Pb2ilX2akNjKVg\nac/EzGo2RISyU8PubD90dGLzR2rtNBMijZJWlo1Z6Vqyi2tLzQ5Sq+u2DKw1p5Zqrua6s92W2wg4\nggSCAnruP7riTsUDyvnB5/B8/BVfDnw+bw755Pz6HksgEAgIAAAYwRrtDQAAgLEj3AAAGIRwAwBg\nEMINAIBBCDcAAAYh3AAAGCRutAvU1tbqhRdekM1m09KlS/X9739fy5cv1+nTp+V2u1VZWSm73a7a\n2lrt2LFDVqtVhYWFKigo0ODgoFauXKnW1lbZbDaVl5crLS0tEnMBABCTLMFex93V1aWioiLt3btX\nx48f11NPPaXBwUHdfPPN8nq9qqqq0qWXXqr58+fr9ttvV01NjeLj41VQUKDf/e532r9/vz788EOt\nXbtWDQ0NqqmpUVVVVSTnAwAgpgS9q7yxsVFz585VQkKC3G63HnvsMR06dEi5ubmSpJycHDU2Nqq5\nuVmzZs2S0+mUw+FQenq6fD6fmpqalJeXJ0nKzMyUz+cL/0QAAMSwoHeVHzlyRCdOnNB9992nL7/8\nUosXL1Z/f7/i4+MlSS6XS+3t7fL7/XK5XMNfl5KSoo6ODvn9fiUnJ0uSrFarLBaLhoaGFBc36j30\nAABgBEELGggEdOzYMT3zzDM6cuSISkpKzvn8+b7uQo4DAICxCXpX+bRp05Seni6r1aq0tDQlJiYq\nMTFRJ0+elCS1tbXJ4/HI4/HI7/cPf91IxwcHBxUIBEa9tU3cAQA4v6AVvfHGG7Vq1Sr96le/0rFj\nx9Tf36+srCzt27dP8+bNU319vbKzszV79mytWbNGPT09slqt8vl8Wr16tXp7e1VXV6esrCwdOHBA\nGRkZo27IYrGoo6MnZANONG73FOYzVCzPJjGf6ZjPXG73lAu6fNBwT58+XV6vV4WFhZKktWvX6tpr\nr9WKFStUXV2t1NRULViwQDabTWVlZSotLZXFYtGSJUvkdDqVn5+vhoYGFRcXy+FwqKKi4uInAwAA\nwV8OFi2x+leVFNt/NUqxPV8szyYxn+mYz1wXeoubM6cBAGAQwg0AgEEINwAABiHcAAAYhHADAGAQ\n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\nBQ23w+HQhg0bzjm+ffv2c455vV55vd4zjlmtVq1bt26cWwQAAF/jzGkAABiEcAMAYBDCDQCAQQg3\nAAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQcb0ftwA8E0DAwNqafksYuul\npc2Q3W6P2HrAREa4AVywlpbPtPSJWiVM9YR9rb7udm16aJ5mzrwy7GsBJiDcAC5KwlSPnMmp0d4G\nMOnwGDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRw\nAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh\n3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBB4sZyocrKSvl8Pg0NDenXv/61rr32\nWi1fvlynT5+W2+1WZWWl7Ha7amtrtWPHDlmtVhUWFqqgoECDg4NauXKlWltbZbPZVF5errS0tHDP\nBQBATBo13E1NTfrkk0+0e/duHTt2TLfddpsyMzO1aNEieb1eVVVVac+ePZo/f762bNmimpoaxcfH\nq6CgQLfccov279+vpKQkbdiwQQ0NDdq4caOqqqoiMRsAADFn1LvKr7/+ej355JOSpClTpqi/v1/v\nvPOOcnNzJUk5OTlqbGxUc3OzZs2aJafTKYfDofT0dPl8PjU1NSkvL0+SlJmZKZ/PF8ZxAACIbaOG\n22azKSEhQZJUU1Ojm266SX19fYqPj5ckuVwutbe3y+/3y+VyDX9dSkqKOjo65Pf7lZyc/NViVqss\nFouGhobCMQsAADFvzE9Oe+utt/THP/5RjzzyyBnHA4HAiJe/0OMAAGB0Y3py2ttvv62tW7fqhRde\nkNPpVEJCggYGBmS329XW1iaPxyOPxyO/3z/8NW1tbZozZ84ZxwcHBxUIBBQXF3xZt3vKOEaa+JjP\nXLE8mzT2+bq6nGHeyZlcLmdIfvbBvkckZwrVPGeL5d/Prq7WiK0VrusnVEYNd09PjyorK/Xyyy/r\nkksukSTNnTtXdXV1mjdvnurr65Wdna3Zs2drzZo16unpkdVqlc/n0+rVq9Xb26u6ujplZWXpwIED\nysjIGHVTHR09459sgnK7pzCfoWJ5NunC5uvs7A3zbs5db7w/+9Hmi+RMoZjnbLH++xlJ4bh+grnQ\n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\nCQkJ4V4WAICYFPZb3Onp6brmmmtUVFQkm82mRx55JNxLAgAQsyyBQCAQ7U0AAICx4cxpAAAYhHAD\nAGAQwg0AgEEmVLjLy8tVVFSkoqIiffDBB9HeTshVVlaqqKhIBQUFevPNN6O9nZA7ceKE8vLytHfv\n3mhvJeRqa2s1f/583X777Tp48GC0txNSx48f1+LFi/WLX/xCRUVF+vvf/x7tLYXExx9/rLy8PO3a\ntUuS1NraqpKSEi1cuFDLli3TwMBAlHc4PiPNd/fdd6ukpET33HPPGS/DNc3Zs33t7bff1tVXXx2l\nXYXO2fMNDg6qrKxMd9xxh+6++259+eWXQb9+woT7m+c0f/zxx/X4449He0sh1dTUpE8++US7d+/W\ntm3bVF5eHu0thdyzzz6rpKSkoCfYMVFXV5eeeeYZvfrqq9q6dav+8pe/RHtLIbV3715dccUV2rFj\nhzZv3hwT/+/19/dr/fr1ysrKGj62efNmLVq0SLt27dKMGTO0Z8+eKO5wfEaab9OmTSosLNTOnTuV\nl5enF198MYo7vHgjzSZJJ0+e1PPPPy+PxxOlnYXGSPP9/ve/V0pKiv7whz8oPz9f7777btDvMWHC\nfb5zmseK66+/Xk8++aQkacqUKerr61MsPaH/8OHD+vTTT3XzzTfH1FyS1NjYqLlz5yohIUFut1uP\nPfZYtLcUUikpKTp27Jgkqbu7Wy6XK8o7Gj+73a6tW7dq2rRpw8cOHTqk3NxcSVJOTo4aGxujtb1x\nG2m+Rx55RF6vV5KUnJw8fJ2aZqTZJOm5557TokWLFBcX8RN+htRI8/31r3/Vz3/+c0lSYWHh8O/p\n+UyYcPv9fiUnJw9//PU5zWOFzWYbPvFMTU2Nbr755pi6ZfrEE09o1apV0d5GWBw5ckQnTpzQfffd\np4ULFxr9D/5Ibr31VrW2tupnP/uZSkpKtHLlymhvadxsNpvsdvsZx/r7+xUfHy/pq39f2tsn/qkt\nz2ek+RISEmSz2XTq1Cm9+uqrwyEwzUiz/etf/9Lhw4eH/zAx2UjzHTlyRAcPHlRJSYkefPBBdXd3\nB/0eEybcZxvtnOameuutt7Rnzx6tXbs22lsJmddee03XXXedLr/88pi7tS199bt47NgxPfPMM6qo\nqNDDDz8c7S2F1J/+9Cdddtllqq+v10svvRRz9yiMJBZ/TyXp1KlTWr58uTIyMpSRkRHt7YTM+vXr\ntWLFimhvI2wCgYCuuOIK7dy5U1deeaW2bt0a9PIT5j6HCz2nuYnefvttPf/889q2bZucTme0txMy\nBw8eVEtLi95880198cUXstvtuvTSS5WZmRntrYXEtGnTlJ6eLqvVqrS0NCUmJqqzszMm7lKWpPfe\ne2/48barr75aX3zxRUz+4ZyQkKCBgQHZ7Xa1tbUZ/1jpSFatWqXvfve7euCBB6K9lZBpa2vTp59+\nqgcffFCS1NHRoZKSEu3cuTPKOwudadOm6cc//rEkKSsrS0899VTQy0+YW9yxfk7znp4eVVZW6rnn\nntMll1wS7e2EVFVVlWpqalRdXa077rhDDzzwQMxEW/rqd7OpqUmBQEBdXV3q6+uLmWhL0owZM/TP\nf/5T0ld32SUkJMRMtL95y3ru3Lmqq6uTJNXX1ys7Ozta2wqZb85XW1sru92uxYsXR3FHofP1bNOn\nT1d9fb2qq6tVXV0tt9sdE9H+5nX3k5/8RH/7298kSR9++KGuuOKKoF87oU55umHDBr3zzjvD5zS/\n6qqror2lkKmurtbTTz+t73znO8PHKisrddlll0VvU2Hw9NNP69vf/rZuu+22aG8lpKqrq1VTUyNJ\nuv/++5WTkxPlHYVOX1+fHn74YR09elRDQ0NatmyZbrjhhmhva1zef/99rV27VkePHpXNZlNSUpK2\nbdumVatW6eTJk0pNTdW6detks9mivdWLMtJ8p06d0re+9S0lJiZKkr73ve/p0UcfjfJOL9xIs+3c\nuVNJSV+9FfNPf/pTo1/Zcb7fzfLycnV0dCgxMVHr168PeuNgQoUbAAAEN2HuKgcAAKMj3AAAGIRw\nAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBB/h/VntIOqIXL8QAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d64a14810>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"train.Education = number.fit_transform(train.Education)\n",
"new_education_levels = train.Education.unique()\n",
"education_levels_decoder = dict(zip(education_levels_train, new_education_levels))\n",
"pprint(education_levels_decoder)\n",
"plt.hist(train.Education, bins = len(new_education_levels))\n",
"plt.show()\n",
"\n",
"test.Education = number.fit_transform(test.Education)\n",
"plt.hist(test.Education, bins = len(new_education_levels))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"...it would make sense to club bins in a more sensible way"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'10th': 0,\n",
" '11th': 1,\n",
" '12th': 2,\n",
" '1st-4th': 3,\n",
" '5th-6th': 4,\n",
" '7th-8th': 5,\n",
" '9th': 6,\n",
" 'Assoc-acdm': 7,\n",
" 'Assoc-voc': 8,\n",
" 'Bachelors': 9,\n",
" 'Doctorate': 10,\n",
" 'HS-grad': 11,\n",
" 'Masters': 12,\n",
" 'Preschool': 13,\n",
" 'Prof-school': 14,\n",
" 'Some-college': 15}\n"
]
}
],
"source": [
"pprint(education_levels_decoder)"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# new_education_levels_encoder = {0:1,1:1,2:2,3:0,4:0,5:0,6:0, 7:5, 8:5, 9:3, 10:7, 11:2, 12:4, 13:0, 14:6, 15:3}\n",
"\n",
"# new_education_levels_train = [new_education_levels_encoder[i] for i in train.Education]\n",
"# train.Education = new_education_levels_train\n",
"\n",
"# new_education_levels_test = [new_education_levels_encoder[i] for i in test.Education]\n",
"# test.Education = new_education_levels_test\n",
"\n",
"# new_education_levels_decoder = {0:'< 9th', 1:'High School', 2:'High School Grad', 3:'Bachelors', 4:'Masters', 5:'Assoc-acdm / Assoc-voc', 6:'Prof School', 7:'Doctorate'}"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# plt.hist(train.Education, bins = len(new_education_levels_decoder))\n",
"# plt.show()\n",
"# plt.hist(test.Education, bins = len(new_education_levels_decoder))\n",
"# plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Income Group"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Int64Index([ 7, 8, 9, 10, 11, 14, 19, 20, 25,\n",
" 27,\n",
" ...\n",
" 32530, 32532, 32533, 32536, 32538, 32539, 32545, 32554, 32557,\n",
" 32560],\n",
" dtype='int64', length=7841)\n"
]
}
],
"source": [
"# Rows for which Income is under $50k\n",
"print train[train['Income.Group'] != '<=50K'].index"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"temp = [0]*len(train)\n",
"for i in train[train['Income.Group'] != '<=50K'].index:\n",
" temp[i] = 1\n",
"train['Income.Group'] = temp"
]
},
{
"cell_type": "code",
"execution_count": 42,
"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>ID</th>\n",
" <th>Age</th>\n",
" <th>Workclass</th>\n",
" <th>Education</th>\n",
" <th>Marital.Status</th>\n",
" <th>Occupation</th>\n",
" <th>Relationship</th>\n",
" <th>Race</th>\n",
" <th>Sex</th>\n",
" <th>Hours.Per.Week</th>\n",
" <th>Native.Country</th>\n",
" <th>Income.Group</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>39</td>\n",
" <td>6</td>\n",
" <td>9</td>\n",
" <td>Never-married</td>\n",
" <td>Adm-clerical</td>\n",
" <td>Not-in-family</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>50</td>\n",
" <td>5</td>\n",
" <td>9</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Exec-managerial</td>\n",
" <td>Husband</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>13</td>\n",
" <td>United-States</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>38</td>\n",
" <td>3</td>\n",
" <td>11</td>\n",
" <td>Divorced</td>\n",
" <td>Handlers-cleaners</td>\n",
" <td>Not-in-family</td>\n",
" <td>White</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>53</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Handlers-cleaners</td>\n",
" <td>Husband</td>\n",
" <td>Black</td>\n",
" <td>Male</td>\n",
" <td>40</td>\n",
" <td>United-States</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>28</td>\n",
" <td>3</td>\n",
" <td>9</td>\n",
" <td>Married-civ-spouse</td>\n",
" <td>Prof-specialty</td>\n",
" <td>Wife</td>\n",
" <td>Black</td>\n",
" <td>Female</td>\n",
" <td>40</td>\n",
" <td>Cuba</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ID Age Workclass Education Marital.Status Occupation \\\n",
"0 1 39 6 9 Never-married Adm-clerical \n",
"1 2 50 5 9 Married-civ-spouse Exec-managerial \n",
"2 3 38 3 11 Divorced Handlers-cleaners \n",
"3 4 53 3 1 Married-civ-spouse Handlers-cleaners \n",
"4 5 28 3 9 Married-civ-spouse Prof-specialty \n",
"\n",
" Relationship Race Sex Hours.Per.Week Native.Country Income.Group \n",
"0 Not-in-family White Male 40 United-States 0 \n",
"1 Husband White Male 13 United-States 0 \n",
"2 Not-in-family White Male 40 United-States 0 \n",
"3 Husband Black Male 40 United-States 0 \n",
"4 Wife Black Female 40 Cuba 0 "
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.head()"
]
},
{
"cell_type": "code",
"execution_count": 43,
"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>ID</th>\n",
" <th>Age</th>\n",
" <th>Workclass</th>\n",
" <th>Education</th>\n",
" <th>Hours.Per.Week</th>\n",
" <th>Income.Group</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>32561.000000</td>\n",
" <td>32561.000000</td>\n",
" <td>32561.000000</td>\n",
" <td>32561.000000</td>\n",
" <td>32561.000000</td>\n",
" <td>32561.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>16281.000000</td>\n",
" <td>38.581647</td>\n",
" <td>3.094438</td>\n",
" <td>10.298210</td>\n",
" <td>40.437456</td>\n",
" <td>0.240810</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>9399.695394</td>\n",
" <td>13.640433</td>\n",
" <td>1.107194</td>\n",
" <td>3.870264</td>\n",
" <td>12.347429</td>\n",
" <td>0.427581</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>1.000000</td>\n",
" <td>17.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>8141.000000</td>\n",
" <td>28.000000</td>\n",
" <td>3.000000</td>\n",
" <td>9.000000</td>\n",
" <td>40.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>16281.000000</td>\n",
" <td>37.000000</td>\n",
" <td>3.000000</td>\n",
" <td>11.000000</td>\n",
" <td>40.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>24421.000000</td>\n",
" <td>48.000000</td>\n",
" <td>3.000000</td>\n",
" <td>12.000000</td>\n",
" <td>45.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>32561.000000</td>\n",
" <td>90.000000</td>\n",
" <td>7.000000</td>\n",
" <td>15.000000</td>\n",
" <td>99.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ID Age Workclass Education Hours.Per.Week \\\n",
"count 32561.000000 32561.000000 32561.000000 32561.000000 32561.000000 \n",
"mean 16281.000000 38.581647 3.094438 10.298210 40.437456 \n",
"std 9399.695394 13.640433 1.107194 3.870264 12.347429 \n",
"min 1.000000 17.000000 0.000000 0.000000 1.000000 \n",
"25% 8141.000000 28.000000 3.000000 9.000000 40.000000 \n",
"50% 16281.000000 37.000000 3.000000 11.000000 40.000000 \n",
"75% 24421.000000 48.000000 3.000000 12.000000 45.000000 \n",
"max 32561.000000 90.000000 7.000000 15.000000 99.000000 \n",
"\n",
" Income.Group \n",
"count 32561.000000 \n",
"mean 0.240810 \n",
"std 0.427581 \n",
"min 0.000000 \n",
"25% 0.000000 \n",
"50% 0.000000 \n",
"75% 0.000000 \n",
"max 1.000000 "
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Marital Status"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 32561\n",
"unique 7\n",
"top Married-civ-spouse\n",
"freq 14976\n",
"Name: Marital.Status, dtype: object"
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train['Marital.Status'].describe()"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 16281\n",
"unique 7\n",
"top Married-civ-spouse\n",
"freq 7403\n",
"Name: Marital.Status, dtype: object"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test['Marital.Status'].describe()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Never-married' 'Married-civ-spouse' 'Divorced' 'Married-spouse-absent'\n",
" 'Separated' 'Married-AF-spouse' 'Widowed']\n"
]
}
],
"source": [
"marital_status_levels= train['Marital.Status'].unique()\n",
"# Encode marital status variable\n",
"print marital_status_levels"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"train['Marital.Status'] = number.fit_transform(train['Marital.Status'])\n",
"test['Marital.Status'] = number.fit_transform(test['Marital.Status'])"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"new_marital_status_levels = train['Marital.Status'].unique()"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([4, 2, 0, 3, 5, 1, 6])"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"new_marital_status_levels"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 2190., 14., 7403., 210., 5434., 505., 525.]),\n",
" array([ 0. , 0.85714286, 1.71428571, 2.57142857, 3.42857143,\n",
" 4.28571429, 5.14285714, 6. ]),\n",
" <a list of 7 Patch objects>)"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nerRKS0vV2tqqrVu36q233lJRUZF27typpqYm7d+/XxEREXr77bf1zDPPaNOmTb29XwD6iU8hUlFR\nocTERDkcDkVHR2vt2rX08QIByqfDmdraWrW3t2vBggW6fPmycnJyeqWP15MmPAD+xaffWpfLpcbG\nRm3ZskW1tbVyOp13fL2rf+fN8lv5Y0cpXbyeo4vXM/74c94Tn0IkKipK8fHxCg4OVmxsrEJDQzV4\n8OA+7eP1x45Sung9QxevZwKmi1eSkpKSVFlZKZfLpYaGBrW1tSkhIYE+XiAA+fROJCYmRmlpacrI\nyJAkrV69WhMmTKCPFwhAPp/JzMzMVGZm5m3L6OMFAg9XrAIwQogAMEKIADBCiAAwQogAMEKIADBC\niAAwQogAMEKIADBCiAAwQogAMEKIADBCiAAwQogAMEKIADBCiAAwMiAer75jZ7Gar3RYtHWXfp2W\novDwCIu2D/i3AREi7xyq1uCoCZZsu7XpnCaN/xchAnSBwxkARnwOkfb2dqWmpmrfvn2qq6uT0+nU\nvHnz9Pzzz6uj48ahR1lZmdLT05WRkaGSkhJJNyoiFi9erLlz58rpdKqmpqZ39gSAJXwOkddee83d\nYkcPLxC4fAqR6upqnT59WtOmTZMkeniBAOZTiGzYsEErVqxwf94bPbwABiav/zrz7rvvasqUKbrv\nvvsk3dmj2xc9vFaLiAj90TpBung9RxevZwKii/fo0aOqqalReXm5zp49K7vdrtDQ0D7t4bVaY2PL\nHR2pdPF6ji5ezwzULl6vf3sLCgrcH7/66qsaNWqUPv/8cx08eFCPPvrobT28ubm5am5uVnBwsKqq\nqrRq1SpduXJFBw4cUHJyMj28wF3A+C3AzY5deniBwGQUIjk5Oe6P6eEFAhNXrAIwQogAMEKIADBC\niAAwQogAMEKIADBCiAAwQogAMEKIADBCiAAwQogAMEKIADBCiAAwQogAMEKIADBCiAAwQogAMEKI\nADBCiAAw4vMzVvPz81VVVaWrV6/qt7/9rSZMmKClS5fq+vXrio6OVn5+vux2u8rKyrRr1y4FBwcr\nIyND6enp6uzs1PLly1VXVyebzaa8vDzFxsb25n4B6Cc+hUhlZaVOnTql4uJiNTY26je/+Y0SEhKU\nnZ2ttLQ0FRQUqLS0VLNnz9bWrVtVUlKiwYMHKz09XTNmzNChQ4cUERGhjRs36vjx49q0adNtVRQA\nBg6fDmcefPBBvfzyy5KkoUOHqq2tTX//+9/p4wUCkE8hYrPZ5HA4JEklJSWaNm2aWltb6eMFApBR\n78yHH36ov/zlL9qxY4cefvhh9/K7rY+XLl66eOni7ZrPIXLs2DEVFhZqx44dCgsLk8PhUEdHh+x2\n+13Xx0sXL128dPF2zafDmebmZuXn56uwsFD33nuvJCkxMVEHDhyQpNv6eE+cOKHm5ma1tLSoqqpK\nU6ZMUVJSkntd+niBgc2nl//3339fjY2NWrhwoaQbfbwvvfSScnNz6eMFAoxPIZKZmanMzMw7ltPH\nCwQerlgFYIQQAWCEEAFghBABYIQQAWCEEAFghBABYIQQAWDEf29YAfzA9WtXdebMt/2yrYaGsNvu\nFers7JQk993xVoiO/q8e1yFEgG60X7mojXsvyRFe1+/bvviv/9U9Q4fLET6i37ctSa1N5/VJKSEC\nGHOEj1DYsFH9vt3WpnOWbdsbnBMBYIQQAWCEEAFghBABYIQQAWCEv86gW71xncQPr3/wRn9dowHf\nESLolpXXSUg3rpUY/h//acm24RnLQiQvL09fffWVJGnVqlV64IEHrBoFPbDyWoXWpnOWbBees+Sc\nyKeffqozZ86ouLhY69at07p166wYA0AvsCREbq3RHDNmjJqamtTS0mLFKAAMWXI4U19fr/Hjx7s/\nj4yM1IULFxQaGmrFON26fu2qamrO6J4hIbctNzlZ6A1OLMLf+cWJVZfLpaCgoC6/3nn5jGxB1lRt\ntp39Rv+zK0RDwk5Ysv2mc6cVMfJ+S7YtSW3NlyR1/b1h+3fntqUbN+B5wpIQ+WG95vnz5xUdHd3l\n+h/tK+yPsQD4wJJzIklJSTp48KAk6Z///KdiYmLkcDisGAWAIUveicTHx2v8+PHKysqSzWbTmjVr\nrBgDQC8Icrlc1pxsAHBX4N4ZAEYIEQBGCBEARvw+RPLy8pSVlaWsrCydOGHNtRo/dPLkSaWmpmr3\n7t1Wj+KWn5+vrKwspaenq7y83Opx1NbWpoULF8rpdCojI0NHjhyxeiS39vZ2paamat++fVaPIkn6\n5JNPNHXqVDmdTjmdTv3+97+3eiRJUllZmWbPnq3HH39cR48e7XI9v7jYrCu33mNTXV2tVatWqbi4\n2NKZ2tratH79eiUnJ1s6x60qKyt16tQpFRcXq7GxUY899phmzJhh6UyHDx/WxIkT9fTTT+u7777T\nU089penTp1s6002vvfaaIiIiur3Asb/94he/0ObNm60ew62hoUFbtmzRvn371NLSoj/84Q+aNm3a\nj67r1yHS1T02Vl4eb7fbVVhYqG3btlk2ww89+OCDmjhxoiRp6NCham1t7fEq4L42a9Ys98ffffed\nRo4cadkst6qurtbp06c1ffp0+dMfJv1pFkmqqKhQYmKiHA6HHA6H1q5d2+W6fn04U19fr2HDhrk/\nv3mPjZVsNpvsdrulM/yQzWZzX6xXUlKi6dOn+82rbFZWlpYsWaIVK1ZYPYokacOGDX4zy01BQUGq\nrq7WggULNHfuXP3tb3+zeiTV1taqvb1dCxYs0Lx581RRUdHlun79TuSHrH519XcffvihSktL9cYb\nb1g9iltxcbFOnjypJUuWqKyszNJZ3n33XU2ZMkX33XefX73yjx49Wjk5OZo5c6Zqamo0f/58lZeX\na9Ag6349XS6XGhsbtWXLFtXW1mr+/Pk6fPjwj67r1yHi7T02gezYsWPatm2btm/frrCwMKvH0ddf\nf63hw4dr5MiRGjdunK5du6ZLly4pMjLSspmOHj2qmpoalZeX6+zZs7Lb7frJT36ihIQEy2aSpJiY\nGM2cOVOSFBsbq6ioKJ07d06jRllXWhUVFaX4+HgFBwcrNjZWoaGhXX7//Ppwxp/vsfGnV7Lm5mbl\n5+fr9ddf17333mv1OJKkzz77TG+++aakG4elra2tlgaIJBUUFKikpER79+7VE088oWeffdbyAJGk\n9957T6+++qok6eLFi7p48aJiYmIsnSkpKUmVlZVyuVxqaGjo9vvn1+9E/PEemy+++EKrV6/WxYsX\nZbPZVFxcrD/96U8KDw+3bKb3339fjY2NWrhwoXtZfn6+pScz58yZo5UrV2revHlqb2/X7373O8tm\n8XcpKSlavHix5syZo+vXr+uFF16w9FBGuvHuKC0tTRkZGZKk1atXd7ku984AMOLXhzMA/B8hAsAI\nIQLACCECwAghAsAIIQLACCECwAghAsDI/wMeQIPUHnssRQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d6487dc90>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d647de690>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(4,4), dpi=1600)\n",
"plt.hist(train['Marital.Status'], bins = len(new_marital_status_levels))\n",
"\n",
"fig = plt.figure(figsize=(4,4), dpi=1600)\n",
"plt.hist(test['Marital.Status'], bins = len(new_marital_status_levels))"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{0: 'Divorced', 1: 'Married-AF-spouse', 2: 'Married-civ-spouse', 3: 'Married-spouse-absent', 4: 'Never-married', 5: 'Separated', 6: 'Widowed'}\n"
]
}
],
"source": [
"marital_level_status_decoder = dict(zip(new_marital_status_levels, marital_status_levels))\n",
"print marital_level_status_decoder"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Occupation"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Adm-clerical' 'Exec-managerial' 'Handlers-cleaners' 'Prof-specialty'\n",
" 'Other-service' 'Sales' 'Craft-repair' 'Transport-moving'\n",
" 'Farming-fishing' 'Machine-op-inspct' 'Tech-support' 'Protective-serv'\n",
" 'Armed-Forces' 'Priv-house-serv']\n"
]
}
],
"source": [
"occupation_levels = train.Occupation.unique()\n",
"print occupation_levels"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0, 3, 5, 9, 7, 11, 2, 13, 4, 6, 12, 10, 1, 8])"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train.Occupation = number.fit_transform(train.Occupation)\n",
"test.Occupation = number.fit_transform(test.Occupation)\n",
"new_occupation_levels = train.Occupation.unique()\n",
"new_occupation_levels"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Adm-clerical',\n",
" 1: 'Armed-Forces',\n",
" 2: 'Craft-repair',\n",
" 3: 'Exec-managerial',\n",
" 4: 'Farming-fishing',\n",
" 5: 'Handlers-cleaners',\n",
" 6: 'Machine-op-inspct',\n",
" 7: 'Other-service',\n",
" 8: 'Priv-house-serv',\n",
" 9: 'Prof-specialty',\n",
" 10: 'Protective-serv',\n",
" 11: 'Sales',\n",
" 12: 'Tech-support',\n",
" 13: 'Transport-moving'}"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"new_occupation_levels_decoder = dict(zip(new_occupation_levels,occupation_levels))\n",
"new_occupation_levels_decoder"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nz7hLSkp0+PBhSdLatWs1depUK5YFAGDMifkz7kOHDun48ePau3evnnrqKT311FOxXhIAgDEr5uGu\nr69XXl6eJGnKlClqa2vT6dOnY70sAABjUsxfKg+Hw7r55pv7P/Z6vWpubta4ceNivXTUzp3r1dGj\n/23pmvxKCwBgOCz/qfJIJCKbzXbRz9s7jqqvr8XCHUmtnQ36j/U79TWP17I120KfKuWqb1q23pe6\n2lskXfzff6ysmWjrMivrmr5mPNftbGuyfM3LEfNw+/1+hcPh/o+bmprk8/kuevk//dfmWG8JAABj\nxfw97jvuuEP79++XJH388ceaNGmS3G53rJcFAGBMivkz7szMTN18881auHChHA6HHn/88VgvCQDA\nmGWLRCKReG8CAABEhzOnAQBgEMINAIBBCDcAAAYZVeEuKSnRwoULtXDhQn344Yfx3o6lSktLtXDh\nQuXn5+vNN9+M93bi4syZM8rLy9Nrr70W761YrqqqSvPmzdN9992nt99+O97bsdTp06e1bNkyPfDA\nA1q4cKHefffdeG/JEkeOHFFeXp727NkjSWpsbFRhYaEWL16sRx55RN3d3XHeYWwNNP8PfvADFRYW\n6sEHHzzv14jHmq/O/qV33nlHN95445DXHzXhTuRzmtfX1+uTTz7R3r17tXPnTpWUlMR7S3Hx/PPP\nKyUlZdAT9IxFra2teu655/Tqq69qx44d+tOf/hTvLVnqtdde09e//nXt2rVL27ZtS4jHfldXl55+\n+mnl5OT0H9u2bZuWLFmiPXv2aPLkydq3b18cdxhbA82/detWFRQUaPfu3crLy9PLL78cxx3GzkCz\nS9LZs2f14osvyu/3D3kboybciXxO89tuu03PPPOMJGn8+PHq7OxUov2w/9GjR/Xpp5/qrrvuSrjZ\n6+rqNGPGDLndbvl8Pj355JPx3pKl0tLSdOrUKUlSW1ubvF7rzmAYL06nUzt27NDEiRP7jx06dEiz\nZs2SJOXm5qquri5e24u5geZ//PHHFQgEJEmpqan9XxNjzUCzS9ILL7ygJUuWKClp6N/SHjXhDofD\nSk1N7f/4y3OaJwKHw9F/UprKykrdddddCfesc9OmTVqzZk28txEXJ06c0JkzZ/TQQw9p8eLFY/p/\n2AO555571NjYqLvvvluFhYVavXp1vLcUcw6HQ06n87xjXV1dSk5OlvTF//+amsw6DeelGGh+t9st\nh8Ohc+fO6dVXX9X3vve9OO0utgaa/e9//7uOHj3a/43LUCw/V3m0hjqn+Vj01ltvad++fSovL4/3\nViz1+uuv69Zbb9XVV1+dcM+2pS++1k+dOqXnnntOJ06c0AMPPKCDBw/Ge1uW+f3vf6+rrrpKv/zl\nL3XkyBGtX79ev/3tb+O9rbhKxMeBJJ07d04rV65UVlaWsrKy4r0dyzz99NNav3591JcfNeG+1HOa\njzXvvPOOXnzxRe3cuVMejyfe27HU22+/rYaGBr355pv6/PPP5XQ6deWVVyo7OzveW7PExIkTlZmZ\nKbvdroyMDI0bN04tLS0J8ZKxJL3//vv97/fdeOON+vzzzxPyG3e3263u7m45nU6FQqGo3usca9as\nWaPrrrtOS5cujfdWLBMKhfTpp5/qpz/9qSSpublZhYWF2r1790WvM2peKk/kc5q3t7ertLRUL7zw\ngq644op4b8dyZWVlqqysVEVFhb7//e9r6dKlCRNt6Yuv/fr6ekUiEbW2tqqzszNhoi1JkydP1l//\n+ldJX7xt4Ha7Eyba//7MesaMGaqurpYk1dTUaObMmfHalmX+ff6qqio5nU4tW7YsjjuyzpezT5o0\nSTU1NaqoqFBFRYV8Pt+g0ZZG2SlPN2/erPfee6//nOY33HBDvLdkiYqKCj377LO69tpr+4+Vlpbq\nqquuit+m4uTZZ5/VNddco3vvvTfeW7FURUWFKisrJUkPP/ywcnNz47wj63R2duqxxx7TyZMn1dvb\nq0ceeUS33357vLcVUx988IHWr1+vkydPyuFwKCUlRTt37tSaNWt09uxZpaena8OGDXI4HPHeakwM\nNP+5c+f0ta99TePGjZMkfeMb39ATTzwR552OvIFm3717t1JSUiRJ3/nOd4b8zZJRFW4AADC4UfNS\nOQAAGBrhBgDAIIQbAACDEG4AAAxCuAEAMAjhBgDAIIQbAACDEG4AAAzy/wFXgliQCHVcFwAAAABJ\nRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d647e8690>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAe4AAAFXCAYAAABk0q3rAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHmRJREFUeJzt3X9Q1XUe7/HXOUfO2TkcEw5yyiXGdd3SpmWVnZrEXM3C\nzuRM/mhZNZTahmaaUrKJfog/qnEmVBokG7N0jb1reZNZ3HZpbkNWOo0xsbZztrImd2+2o1QEHEAu\nCMoPz/2jG3dNhCNyvofPOc/HX/H1wOfz5gs9zw/4YguFQiEBAAAj2KO9AQAAED7CDQCAQQg3AAAG\nIdwAABiEcAMAYBDCDQCAQcYM9o9dXV1as2aNWlpadPbsWT300EOaMmWKnnjiCZ07d06pqakqKSmR\n0+lUVVWV9uzZI7vdriVLlignJ0c9PT1as2aN6uvr5XA4VFxcrPT0dKtmAwAg5tgG+z3ut956S/X1\n9crPz9e3336r++67T7/+9a91yy23yO/3q6ysTFdddZUWLlyou+66S5WVlUpISFBOTo5ee+01HTx4\nUJ999pk2bNigmpoaVVZWqqyszMr5AACIKYM+VT5//nzl5+dLkr799ltdddVVOnLkiG699VZJ0ty5\nc/Xhhx/q008/VUZGhjwej1wulzIzMxUIBFRbW6vs7GxJUlZWlgKBQITHAQAgtg36VPkPli1bpsbG\nRr300ku67777lJCQIEnyer1qbGxUMBiU1+vtv31KSoqampoUDAaVnJwsSbLb7bLZbOrt7dWYMWEt\nCwAAfiSsgu7bt0/Hjh3TY489dt7xiz3LfqnHAQBAeAYN92effaaUlBRNmDBBU6dOVV9fnxITE3X2\n7Fm5XC41NDTI5/PJ5/MpGAz2v19DQ4OmT59+3vGenh6FQqEhH22HQiHZbLYRGA1ALPr3v/+tvKL/\nKfc4n6XrdrY16tVNubr22mstXRf4sUEr+o9//EPffvut1q5dq2AwqK6uLv3mN7/R22+/rQULFujA\ngQOaPXu2pk2bpvXr16u9vV12u12BQEDr1q1TR0eHqqurNWvWLB06dEgzZswYckM2m01NTe0jNqBp\nUlPHxu388Ty7xPzhzt/S0iH3OJ88yWkW7OrCtSN1jjj/8Tt/aurYS7r9oOG+++67tXbtWi1fvlxn\nzpzR008/reuvv15PPvmkKioqlJaWpsWLF8vhcKiwsFD5+fmy2WwqKCiQx+PR/PnzVVNTo9zcXLlc\nLm3evPmyhgMAIN4NGm6Xy6XS0tILjpeXl19wzO/3y+/3n3fMbrdr06ZNl7lFAADwA66cBgCAQQg3\nAAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDC\nDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiE\ncAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAG\nIdwAABiEcAMAYBDCDQCAQQg3AAAGIdwAABiEcAMAYBDCDQCAQQg3AAAGGTPUDUpKShQIBNTb26sH\nHnhA7733nj7//HMlJSVJku6//37NmTNHVVVV2rNnj+x2u5YsWaKcnBz19PRozZo1qq+vl8PhUHFx\nsdLT0yM+FAAAsWrQcNfW1urLL7/Uvn37dOrUKS1atEhZWVl67LHHNGfOnP7bdXZ2aseOHaqsrFRC\nQoJycnI0b948HTx4UElJSSotLVVNTY22bt2qsrKyiA8FAECsGvSp8htvvFHPP/+8JGns2LHq6upS\nX1+fQqHQebf75JNPlJGRIY/HI5fLpczMTAUCAdXW1io7O1uSlJWVpUAgEKExAACID4OG2+FwyO12\nS5IqKys1Z84cORwOvfbaa7r33nv16KOPqrW1VcFgUF6vt//9UlJS1NTUpGAwqOTk5O8Xsttls9nU\n29sbwXEAAIhtQ77GLUnvvvuu9u/fr/Lych09elTJycmaOnWqdu3ape3btyszM/O82//4EflQxwEA\nQHiGDPfhw4e1a9cu7d69Wx6PR1lZWf3/dtttt+mZZ56R3+9XMBjsP97Q0KDp06fL5/P1H+/p6VEo\nFNKYMUPfV0hNHTucWWJGPM8fz7NLzB/O/K2tHgt2MjCv1xPRc8T5j+/5wzVoRdvb21VSUqI//elP\nuuKKKyRJDz/8sFauXKkpU6boyJEjuvbaazVt2jStX79e7e3tstvtCgQCWrdunTo6OlRdXa1Zs2bp\n0KFDmjFjRlibampqv/zJDJWaOjZu54/n2SXmD3f+lpYOC3Zz8bUjdY44//E7/6XeYRk03G+99ZZO\nnTql1atX9x/77W9/q6KiIiUmJioxMVHFxcVyuVwqLCxUfn6+bDabCgoK5PF4NH/+fNXU1Cg3N1cu\nl0ubN28e3lQAAEDSEOFeunSpli5desHxRYsWXXDM7/fL7/efd8xut2vTpk2XuUUAAPADrpwGAIBB\nCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBg\nEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAA\nGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcA\nAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGGTMUDcoKSlR\nIBBQb2+vHnjgAf3yl7/UE088oXPnzik1NVUlJSVyOp2qqqrSnj17ZLfbtWTJEuXk5Kinp0dr1qxR\nfX29HA6HiouLlZ6ebsVcAADEpEHDXVtbqy+//FL79u3TqVOntGjRImVlZWnFihXy+/0qKyvT/v37\ntXDhQu3YsUOVlZVKSEhQTk6O5s2bp4MHDyopKUmlpaWqqanR1q1bVVZWZtVsGEB3d7fq6k5Yvm56\n+kQ5nU7L1wWAWDNouG+88Ub96le/kiSNHTtWXV1d+uijj7Rx40ZJ0ty5c1VeXq5JkyYpIyNDHo9H\nkpSZmalAIKDa2lotWrRIkpSVlaW1a9dGchajXCygra0etbR0RGzdkydPqLTiE7nH+SK2xo91tjVq\n2+MLNHnyNZatCQCxatBwOxwOud1uSVJlZaXmzJmjDz74QAkJCZIkr9erxsZGBYNBeb3e/vdLSUlR\nU1OTgsGgkpOTJUl2u102m029vb0aM2bIZ+hjXl3dCa1+rsrSgEpS89dfKOXq6+RJTrN0XQDAyAir\noO+++67+8pe/6JVXXtHtt9/efzwUCg14+0s9/mOpqWPDup3JWls9co/zWR7QzrYGS9f7gdfrCeu8\nxsO5HwzzDz1/a6vHgp0MLNyv4+Hi/Mf3/OEaMtyHDx/Wzp079corr8jj8cjtdqu7u1tOp1MNDQ3y\n+Xzy+XwKBoP979PQ0KDp06efd7ynp0ehUCisR9tNTe2XMZIZIvl0+GjU0tIx5HlNTR0bF+f+Ypg/\nvPmj+b0TztfxcHH+43f+S73DMuivg7W3t6ukpEQ7d+7UFVdcIUmaOXOmqqurJUkHDhzQ7NmzNW3a\nNB09elTt7e06ffq0AoGAbrjhBt188839tz106JBmzJgxnJkAAMD/M+jD37feekunTp3S6tWrJUk2\nm02bN2/W+vXrVVFRobS0NC1evFgOh0OFhYXKz8+XzWZTQUGBPB6P5s+fr5qaGuXm5srlcmnz5s2W\nDAUAQKwaNNxLly7V0qVLLzheXl5+wTG/3y+/33/eMbvdrk2bNl3mFgEAwA+4choAAAYh3AAAGIRw\nAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAbh72sCwCjW3d2turoTlq+bnj5RTqfT\n8nUxNMINAKNYXd0JrX6uSu5xPsvW7Gxr1LbHF2jy5GssWxPhG3XhLli3Tb294f3d7pGSNt6tB35/\nt6VrAkC43ON88iSnRXsbGCVGXbiPt0+QI8Fl6ZpjWq1/GgoAgOHgh9MAADAI4QYAwCCEGwAAgxBu\nAAAMQrgBADAI4QYAwCCEGwAAgxBuAAAMQrgBADAI4QYAwCCEGwAAgxBuAAAMQrgBADAI4QYAwCCE\nGwAAgxBuAAAMQrgBADAI4QYAwCCEGwAAg4yJ9gYAXL7u7m7V1Z2Iytrp6RPldDqjsjYQjwg3EAPq\n6k5o9XNVco/zWbpuZ1ujtj2+QJMnX2PpukA8I9xAjHCP88mTnBbtbQCIMF7jBgDAIIQbAACDEG4A\nAAxCuAEAMAjhBgDAIIQbAACDEG4AAAwSVriPHTum7Oxs7d27V5K0Zs0a3XnnncrLy1NeXp7ef/99\nSVJVVZVycnK0ZMkSVVZWSpJ6enpUWFio3Nxc5eXlqa6uLkKjAAAQ+4a8AEtXV5e2bNmiWbNm9R+z\n2Wx67LHHNGfOnP5jnZ2d2rFjhyorK5WQkKCcnBzNmzdPBw8eVFJSkkpLS1VTU6OtW7eqrKwsMtMA\nABDjhnzE7XQ6tXPnTo0fP/6846FQ6Ly3P/nkE2VkZMjj8cjlcikzM1OBQEC1tbXKzs6WJGVlZSkQ\nCIzg9gEAiC9DhtvhcAz4BwRee+013XvvvXr00UfV2tqqYDAor9fb/+8pKSlqampSMBhUcnLy94vZ\n7bLZbOrt7R3BEQAAiB/Dulb5ggULlJycrKlTp2rXrl3avn27MjMzz7vNjx+RD3U8mlyuBKWmjrV0\nzdZWj6XrRZvX6wnrc2z1eRhthjt/NL+ewj234Qjn48TKrAMZ6GNHa95IzzqQeP/+D9ewwp2VldX/\n37fddpueeeYZ+f1+BYPB/uMNDQ2aPn26fD5f//Genh6FQiGNGTO6/rbJ2bM9ampqt3TNlpYOS9eL\ntpaWjiE/x6mpYy0/D6PJ5cwfza+ncM5tOMKdPxZmHcjF5o/WvJGcdSDx/P1/qXdYwv51sP9+pPzw\nww/rX//6lyTpyJEjuvbaazVt2jQdPXpU7e3tOn36tAKBgG644QbdfPPNqq6uliQdOnRIM2bMuKQN\nAgCA/2/Ih74ff/yxNmzYoObmZjkcDu3bt08FBQUqKipSYmKiEhMTVVxcLJfLpcLCQuXn58tms6mg\noEAej0fz589XTU2NcnNz5XK5tHnzZivmAgAgJg0Z7unTp+vNN9+84Pjtt99+wTG/3y+/33/eMbvd\nrk2bNl3GFgEAwA+4choAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcA\nAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMIN\nAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRw\nAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh\n3AAAGCSscB87dkzZ2dnau3evJKm+vl55eXlavny5HnnkEXV3d0uSqqqqlJOToyVLlqiyslKS1NPT\no8LCQuXm5iovL091dXURGgUAgNg3ZqgbdHV1acuWLZo1a1b/sRdeeEErVqyQ3+9XWVmZ9u/fr4UL\nF2rHjh2qrKxUQkKCcnJyNG/ePB08eFBJSUkqLS1VTU2Ntm7dqrKysogOBURTd3e36upOXPL7tbZ6\n1NLSMaw1T5689PUAmGnIcDudTu3cuVO7du3qP3bkyBFt3LhRkjR37lyVl5dr0qRJysjIkMfjkSRl\nZmYqEAiotrZWixYtkiRlZWVp7dq1kZgDGDXq6k5o9XNVco/zWbZm89dfKOXq6yxbD0D0DBluh8Mh\nh8Nx3rGuri4lJCRIkrxerxobGxUMBuX1evtvk5KSoqamJgWDQSUnJ0uS7Ha7bDabent7NWbMkEsD\nxnKP88mTnGbZep1tDZatBSC6LvuH00Kh0IgcBwAAQxvWw163263u7m45nU41NDTI5/PJ5/MpGAz2\n36ahoUHTp08/73hPT49CodCoe7TtciUoNXWspWu2tnosXS/avF5PWJ9jq89DJHBuhy+cjxPNz+9I\nzjqQgT52tOaN9KwDiYXvfyuEXdD/fqQ8c+ZMVVdXa8GCBTpw4IBmz56tadOmaf369Wpvb5fdblcg\nENC6devU0dGh6upqzZo1S4cOHdKMGTMiMsjlOHu2R01N7ZauOdwfQjJVS0vHkJ/j1NSxlp+HSODc\nDk+45z+an9+RmnUgF5s/WvNGctaBxMr3/3Bc6h2WIcP98ccfa8OGDWpubpbD4dC+ffu0e/duFRUV\nqaKiQmlpaVq8eLEcDocKCwuVn58vm82mgoICeTwezZ8/XzU1NcrNzZXL5dLmzZuHPRwAAPFuyHBP\nnz5db7755gXHy8vLLzjm9/vl9/vPO2a327Vp06bL2CIAAPgBV04DAMAghBsAAIMQbgAADEK4AQAw\nCOEGAMAghBsAAIMQbgAADEK4AQAwCOEGAMAghBsAAIMQbgAADEK4AQAwCOEGAMAghBsAAIMQbgAA\nDEK4AQAwCOEGAMAghBsAAIMQbgAADDIm2hsAAECSuru7VVd3wvJ109Mnyul0Wr7ucBFuAMCoUFd3\nQqufq5J7nM+yNTvbGrXt8QWaPPkay9a8XIQbADBquMf55ElOi/Y2RjVe4wYAwCCEGwAAgxBuAAAM\nwmvciFnR+gnVkyetXxNA/CDciFnR+AlVSWr++gulXH2dpWsCiB+EGzEtGj+h2tnWYOl6AOILr3ED\nAGAQwg0AgEEINwAABiHcAAAYhHADAGAQwg0AgEEINwAABiHcAAAYhHADAGAQwg0AgEEINwAABiHc\nAAAYhHADAGAQwg0AgEGG9Wc9//73v2v16tW65pprJElTpkzR/fffr8cff1znzp1TamqqSkpK5HQ6\nVVVVpT179shut2vJkiXKyckZ0QEAAIgnw/573DfddJO2bdvW/3ZRUZFWrFghv9+vsrIy7d+/XwsX\nLtSOHTtUWVmphIQE5eTkaN68eRo3btyIbB4AgHgz7HCHQqHz3j5y5Ig2btwoSZo7d67Ky8s1adIk\nZWRkyOPxSJIyMzMVCAQ0d+7cy9gyACCSzvX16uTJE5au2drqsXxNUw0r3DabTcePH9eDDz6otrY2\nrVy5Ul1dXUpISJAkeb1eNTY2KhgMyuv19r9fSkqKmpqaRmbnAICIONPRrNKKFrnH1Vu6bvPXXyjl\n6ussXdNEwwr3xIkTtWrVKt1xxx2qq6tTXl6e+vr6+v/9x4/GhzqO2BbuvffWVo9aWjpGbF3uvQPD\n5x7nkyc5zdI1O9saLF3PVMMK95VXXqk77rhDkpSenq7x48fr888/V3d3t5xOpxoaGuTz+eTz+RQM\nBvvfr6GhQZmZmSOz8xHkciUoNXWspWu2tnosXS+auPce27xez4h9/4TzcaL5vTOSsw5koI8dT/+v\niJZIn9eRNqxwv/nmmzpx4oRWrVql5uZmtbS06K677lJ1dbUWLFigAwcOaPbs2Zo2bZrWr1+v9vZ2\n2e12BQIBrVu3bqRnuGxnz/aoqand0jVH8pGlCbj3HrtaWjpG5PsnNXVsWB8nmt87IzXrQC42f7z9\nvyIaInlew3GpdxqGFe5bb71VhYWFuvvuu3Xu3Dk988wzuu666/Tkk0+qoqJCaWlpWrx4sRwOhwoL\nC5Wfny+bzaaCgoL+H1QDAACXbljhTkxM1Msvv3zB8fLy8guO+f1++f3+4SwDAAB+hCunAQBgEMIN\nAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGIRwAwBgEMINAIBBCDcAAAYh3AAAGGRY\nf2QEAOLNub5enTx5ImIfv7XVM+Cf8IzkmjAT4QaAMJzpaFZpRYvc4+otXbf56y+UcvV1lq6J0Y1w\nA0CY3ON88iSnWbpmZ1uDpeth9OM1bgAADEK4AQAwCOEGAMAghBsAAIMQbgAADEK4AQAwCOEGAMAg\nhBsAAIMQbgAADEK4AQAwCOEGAMAghBsAAIMQbgAADEK4AQAwCOEGAMAghBsAAIMQbgAADEK4AQAw\nCOEGAMAghBsAAIMQbgAADDIm2hsAYK5zfb06efLEiHys1laPWlo6hrzdSK0HmIpwAxi2Mx3NKq1o\nkXtcvWVrNn/9hVKuvs6y9YDRhnADuCzucT55ktMsW6+zrcGytYDRiNe4AQAwCOEGAMAghBsAAINY\n8hp3cXGxPv30U0nSunXrlJGRYcWyAADEnIg/4j5y5IhOnjypffv26dlnn9Wzzz4b6SUBAIhZEQ93\nbW2tsrOzJUmTJ09WW1ubTp8+HellAQCISRF/qjwYDOr666/vf9vr9aqpqUmJiYmRXjos5/p61Nrc\nqOPH/7el63IRCQDAcFj+e9yhUEg2m+2i/277P1/onByW7aejLai6jm49vOUvlq0pSW0NXylpwrWW\nrilJXe0tki7++Y+VNeNtXWZlXdPXjNa6nW2Nlq43EiIebp/Pp2Aw2P92Y2OjUlNTL3r7//U/no70\nlgAAMFbEX+O++eab9fbbb0uSPv/8c1155ZVyu92RXhYAgJgU8UfcmZmZuv7667Vs2TI5HA499dRT\nkV4SAICYZQuFQqFobwIAAISHK6cBAGAQwg0AgEEINwAABhk14S4uLtayZcu0bNkyHT16NNrbsVxJ\nSYmWLVumnJwcvfPOO9HeTlScOXNG2dnZeuONN6K9FctVVVVp4cKFuuuuu/T+++9HezuWOn36tFat\nWqV77rlHy5Yt0wcffBDtLVni2LFjys7O1t69eyVJ9fX1ysvL0/Lly/XII4+ou7s7yjuMnIFm//3v\nf6+8vDzdd9995/0KcSz68fw/OHz4sKZOnTrk+4+KcMf79cxra2v15Zdfat++fdq9e7eKi4ujvaWo\neOmll5SUlDToBXpiUWtrq1588UW9/vrr2rlzp957771ob8lSb7zxhn7+859rz549euGFF+Li+7+r\nq0tbtmzRrFmz+o+98MILWrFihfbu3auJEydq//79Udxh5Aw0+7Zt27RkyRK9+uqrys7O1h//+Mco\n7jCyBppfks6ePatdu3bJ5/MN+TFGRbjj/XrmN954o55//nlJ0tixY9XZ2al4+2H/48eP66uvvtIt\nt9wSd7N/+OGHmjlzptxut1JTU7Vx48Zob8lSKSkpOnXqlCSpra1NXq83yjuKPKfTqZ07d2r8+PH9\nx44cOaJbb71VkjR37lx9+OGH0dpeRA00+1NPPSW/3y9JSk5O7v96iEUDzS9JL7/8slasWKExY4b+\nLe1REe5gMKjk5OT+t3+4nnm8cDgc/Relqays1C233BJ3jzqfe+45FRUVRXsbUfHNN9/ozJkzevDB\nB7V8+fKY/R/2xdxxxx2qr6/X7bffrry8PK1ZsybaW4o4h8Mhp9N53rGuri4lJCRI+v7/gY2N5l2K\nMxwDze52u+VwONTX16fXX39dd955Z5R2F3kDzf+f//xHx48f77/zMhTLr1UejqGuZx6r3n33Xe3f\nv1/l5eXR3oql/vrXv+qGG27QT3/607h7tC19//V+6tQpvfjii/rmm290zz336NChQ9HelmX+9re/\nacKECfrDH/6gY8eOacOGDfrzn/8c7W1FVTx+H/T19emJJ57QjBkzNGPGjGhvx1JbtmzRhg0bwr79\nqAj3pV7PPBYdPnxYu3bt0u7du+XxeKK9HUu9//77qqur0zvvvKPvvvtOTqdTV111lbKysqK9NUuM\nHz9emZmZstvtSk9PV2JiolpaWuLiKWNJ+uc//9n/et/UqVP13XffxeWdd7fbre7ubjmdTjU0NIT1\nWmcsKSoq0qRJk7Ry5cpob8VSDQ0N+uqrr/Too49KkpqampSXl6dXX331ou8zKp4qj/frmbe3t6uk\npEQvv/yyrrjiimhvx3JlZWWqrKxURUWFfve732nlypVxE23p+6//2tpahUIhtba2qrOzM26iLUkT\nJ07UJ598Iun7lw3cbnfcRPu/H1nPnDlT1dXVkqQDBw5o9uzZ0dqWJf579qqqKjmdTq1atSqKO7LW\nD/NfeeWVOnDggCoqKlRRUaHU1NRBoy2NokuelpaW6qOPPuq/nvmUKVOivSXLVFRUaPv27frZz37W\nf6ykpEQTJkyI3qaiZPv27br66qu1aNGiaG/FUhUVFaqsrJQkPfTQQ5o7d26Ud2Sdzs5OrV27Vs3N\nzert7dUjjzyim266KdrbiqiPP/5YGzZsUHNzsxwOh5KSkrR7924VFRXp7NmzSktL06ZNm+RwWPcn\njq0y0Ox9fX36yU9+osTEREnSL37xCz39dGz+pciB5n/11VeVlJQkSbrtttuG/M2SURNuAAAwtFHx\nVDkAAAgP4QYAwCCEGwAAgxBuAAAMQrgBADAI4QYAwCCEGwAAgxBuAAAM8n8BmIH4jfX3ByoAAAAA\nSUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65658450>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.hist(train.Occupation, bins = len(new_occupation_levels))\n",
"plt.show()\n",
"\n",
"plt.hist(test.Occupation, bins = len(new_occupation_levels))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Relationshop"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Not-in-family' 'Husband' 'Wife' 'Own-child' 'Unmarried' 'Other-relative']\n"
]
}
],
"source": [
"relationship_levels = train.Relationship.unique()\n",
"print relationship_levels"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"train.Relationship = number.fit_transform(train.Relationship)\n",
"test.Relationship = number.fit_transform(test.Relationship)"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Husband',\n",
" 1: 'Not-in-family',\n",
" 2: 'Other-relative',\n",
" 3: 'Own-child',\n",
" 4: 'Unmarried',\n",
" 5: 'Wife'}"
]
},
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"new_relationship_levels = train.Relationship.unique()\n",
"relationship_levels_decoder = dict(zip(new_relationship_levels, relationship_levels))\n",
"relationship_levels_decoder"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n5t177726++67JUmJiYnq7+//2icGTkUFBQVDv/700091++23R3Ga2Hb+/HlduHBB999/v/iffYbH\n/ny9xsZGzZ8/XwkJCUpISNCTTz457Pkx/XY6z1iPjM1mk91uj/YYRrDZbEMPFqqpqdH9999PwIdR\nXFysJ554Qhs3boz2KDHr6aefZn8iYLFYdP78eT3yyCMqKSnRH//4x2iPFJNaWlp06dIlPfLII1q+\nfLkaGxuHPT+mX4n/K14xYay89dZbOnr0qF599dVojxLTqqurde7cOT3xxBOqra2N9jgx54033tC8\nefN0xx138Crza8ycOVOrV6/Wgw8+qObmZq1cuVKnTp1SXJxRGRp34XBYPT092rNnj1paWrRy5UrV\n19ff8PyY3r2RPmMdiMR7772nl156SS+//LKcTme0x4lJf/3rX5WSkqLbb79dd911l65du6auri65\nXK5ojxZT3nnnHTU3N+vUqVP67LPPZLfb9Y1vfEM5OTnRHi3mzJgxQw8++KAkKT09XampqWpra1Na\nWlqUJ4stqampysrKktVqVXp6uqZNmzbsv72YfjudZ6yPDK8Evl4wGFRlZaVefPFF3XbbbdEeJ2b9\n5S9/0WuvvSbpiy9r9ff3E/CvsHv3btXU1OjIkSP60Y9+pEcffZSA38Dvfvc7Pf/885Kkzs5OdXZ2\nasaMGVGeKvYsWLBATU1NCofD6u7u/tp/ezH9SpxnrEfmzJkz2rJlizo7O2Wz2VRdXa1f//rXmj59\nerRHizlvvvmmenp6tHbt2qFjlZWVfOPWv1i2bJk2bdqk5cuX69KlS/rZz34W7ZFguLy8PJWVlWnZ\nsmUaHBzUtm3beCv9K8yYMUP5+fkqKiqSJG3ZsmXY83l2OgAAhorpt9MBAMCNEXEAAAxFxAEAMBQR\nBwDAUEQcAABDEXEAAAxFxAEAMBQRBwDAUP8XgV5DSNl3CucAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d647f0810>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAesAAAFXCAYAAACC+2avAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHadJREFUeJzt3X9Q1PXi7/HX7sLuDK4pC7tmXMY/nE6dKQLO1DdQhoTB\n2ZGZqweHQ4rSTF/OmbJkbIZjamA1zQmJRjl10o5NWVp24A6eOtQUYkdO0+VA1OxpyObrH9lMcZUW\nVn4cCBCQvX/0vdxjKawnl327PB9/uZ/97Lx/qPPczy5+tASDwaAAAICxrJGeAAAAmBmxBgDAcMQa\nAADDEWsAAAxHrAEAMByxBgDAcDEzPdnQ0KC//OUv049PnTql999/X9u3b9fU1JTcbrdqampkt9vV\n2NioI0eOyGq1qqioSIWFhZqYmNDOnTvV3d0tm82mqqoqJScnh31RAABEE0uo/876k08+0fvvv6/R\n0VGtWrVKXq9XtbW1uvHGG7Vu3TqtX79eDQ0Nio2NVWFhod544w2dPHlSp06d0u7du9Xa2qqGhgbV\n1taGe00AAESVkD8G379/vx566CF1dHQoNzdXkpSTk6O2tjZ1dnYqJSVFTqdTDodD6enp8vl8am9v\nV15eniQpMzNTPp8vPKsAACCKhRTrzs5OLV26VImJiRodHVVsbKwkyeVyqaenR4FAQC6Xa/r8hIQE\n9fb2KhAIKD4+/vuBrFZZLBZNTk6GYRkAAESvkGLd0NCg9evX/+j4lT5Bv9rjAADgykKKdUdHh9LT\n0yVJcXFxGh8flyT5/X55PB55PB4FAoHp8y93fGJiQsFgUDExM/5MG0EHAOAHZi6nvg9vXFzcdGRX\nrFihpqYmrV27Vs3NzcrOzlZqaqoqKys1NDQkq9Uqn8+niooKDQ8Pq6mpSVlZWWppaVFGRsasE7JY\nLOrtHfrpK4tybvdC9ilE7FVo2KfQsVehYZ9C43YvnPWcWWMdCASUmJg4/bisrEw7duxQfX29kpKS\nVFBQIJvNpvLycpWWlspisaisrExOp1P5+flqbW1VcXGxHA6Hqqurf9qKAACYh0L+p1tziXdis+Md\na+jYq9CwT6Fjr0LDPoUmlCtr7mAGAIDhiDUAAIYj1gAAGI5YAwBgOGINAIDhiDUAAIYj1gAAGI5Y\nAwBgOGINAIDhiDUAAIYj1gAAGI5YAwBgOGINAIDhiDUAAIYj1gAAGI5YAwBguJhIT+CHDh56UyMj\n45Gexpyamgpq/f/0yumc/T8gBwDMP8bFuu5/D8gZnxTpacyp4b6zWvkf3xJrAMBl8TE4AACGI9YA\nABiOWAMAYDhiDQCA4Yg1AACGI9YAABiOWAMAYDhiDQCA4Yg1AACGI9YAABiOWAMAYDhiDQCA4Yg1\nAACGI9YAABiOWAMAYDhiDQCA4Yg1AACGi5nthMbGRr3yyiuy2Wzatm2bfvazn+nRRx/V1NSU3G63\nampqZLfb1djYqCNHjshqtaqoqEiFhYWamJjQzp071d3dLZvNpqqqKiUnJ8/FugAAiBozXln39/dr\n//79+tOf/qSDBw/qr3/9q55//nlt3rxZR48e1bJly3Ts2DGNjIzowIEDeu211/T666/r8OHDGhwc\n1LvvvqvFixfrzTff1IMPPqh9+/bN1boAAIgaM8a6ra1NK1asUFxcnNxut5566il1dHQoNzdXkpST\nk6O2tjZ1dnYqJSVFTqdTDodD6enp8vl8am9vV15eniQpMzNTPp8v/CsCACDKzPgx+NmzZzU2NqYt\nW7bon//8p7Zu3arR0VHFxsZKklwul3p6ehQIBORyuaZfl5CQoN7eXgUCAcXHx0uSrFarLBaLJicn\nFRMz66fvAADgv81YzWAwqIGBAe3fv19nz55VSUnJj56/0uuu5jgAALiyGWOdmJio9PR0Wa1WJScn\na8GCBYqNjdWFCxfkcDjk9/vl8Xjk8XgUCASmX+f3+5WWlnbJ8YmJCQWDQa6qr8DlcsrtXnhVr7na\n8+cz9io07FPo2KvQsE/XxozlXLlypXbt2qXf/OY3GhgY0OjoqLKysnT8+HGtXbtWzc3Nys7OVmpq\nqiorKzU0NCSr1Sqfz6eKigoNDw+rqalJWVlZamlpUUZGxlyt67rT1zes3t6hkM93uxde1fnzGXsV\nGvYpdOxVaNin0ITyhmbGWC9ZskRer1dFRUWSpN27d+v222/Xjh07VF9fr6SkJBUUFMhms6m8vFyl\npaWyWCwqKyuT0+lUfn6+WltbVVxcLIfDoerq6muzMgAA5hFL0LAvknP+84Cc8UmRnsacGu47qz0P\nZGj58ptDfg3vWEPHXoWGfQodexUa9ik0oVxZcwczAAAMR6wBADAcsQYAwHDEGgAAwxFrAAAMR6wB\nADAcsQYAwHDEGgAAwxFrAAAMR6wBADAcsQYAwHDEGgAAwxFrAAAMR6wBADAcsQYAwHDEGgAAwxFr\nAAAMR6wBADAcsQYAwHDEGgAAwxFrAAAMR6wBADAcsQYAwHDEGgAAwxFrAAAMR6wBADAcsQYAwHDE\nGgAAwxFrAAAMR6wBADAcsQYAwHDEGgAAwxFrAAAMR6wBADAcsQYAwHAxMz358ccfa9u2bbr55psl\nSbfccot+/etfa/v27ZqampLb7VZNTY3sdrsaGxt15MgRWa1WFRUVqbCwUBMTE9q5c6e6u7tls9lU\nVVWl5OTkOVkYAADRYsZYS9Ldd9+t5557bvrxrl27tHnzZnm9XtXW1urYsWNat26dDhw4oIaGBsXG\nxqqwsFCrV6/WyZMntXjxYu3du1etra3at2+famtrw7ogAACizawfgweDwUsed3R0KDc3V5KUk5Oj\ntrY2dXZ2KiUlRU6nUw6HQ+np6fL5fGpvb1deXp4kKTMzUz6fLwxLAAAgus14ZW2xWHTmzBlt2bJF\ng4ODevjhhzU6OqrY2FhJksvlUk9PjwKBgFwu1/TrEhIS1Nvbq0AgoPj4eEmS1WqVxWLR5OSkYmJm\nvaAHAAD/bcZqLlu2TFu3btWaNWvU1dWlkpISXbx4cfr5H151/7vHAQDAlc0Y6yVLlmjNmjWSpOTk\nZCUmJuqLL77Q+Pi47Ha7/H6/PB6PPB6PAoHA9Ov8fr/S0tIuOT4xMaFgMMhV9RW4XE653Quv6jVX\ne/58xl6Fhn0KHXsVGvbp2pixnO+8846+/vprbd26VefPn1dfX5/Wr1+vpqYmrV27Vs3NzcrOzlZq\naqoqKys1NDQkq9Uqn8+niooKDQ8Pq6mpSVlZWWppaVFGRsZcreu609c3rN7eoZDPd7sXXtX58xl7\nFRr2KXTsVWjYp9CE8oZmxljn5uaqvLxcGzdu1NTUlJ588kn9/Oc/144dO1RfX6+kpCQVFBTIZrOp\nvLxcpaWlslgsKisrk9PpVH5+vlpbW1VcXCyHw6Hq6uprtjgAAOYLS9CwL5Jz/vOAnPFJkZ7GnBru\nO6s9D2Ro+fKbQ34N71hDx16Fhn0KHXsVGvYpNKFcWXMHMwAADEesAQAwHLEGAMBwxBoAAMMRawAA\nDEesAQAwHLEGAMBwxBoAAMMRawAADEesAQAwHLEGAMBwxBoAAMMRawAADEesAQAwHLEGAMBwxBoA\nAMMRawAADEesAQAwHLEGAMBwxBoAAMMRawAADEesAQAwHLEGAMBwxBoAAMMRawAADEesAQAwXEyk\n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\n/X/WNTU18vl8mpyc1AMPPKDbb79djz76qKampuR2u1VTUyO73a7GxkYdOXJEVqtVRUVFKiws1MTE\nhHbu3Knu7m7ZbDZVVVUpOTk53OsCACBqzBrr9vZ2ffnll6qrq9PAwIB++ctfKjMzU5s3b5bX61Vt\nba2OHTumdevW6cCBA2poaFBsbKwKCwu1evVqnTx5UosXL9bevXvV2tqqffv2qba2di7WBgBAVJj1\nY/C77rpLv//97yVJCxcu1OjoqD755BPl5uZKknJyctTW1qbOzk6lpKTI6XTK4XAoPT1dPp9P7e3t\nysvLkyRlZmbK5/OFcTkAAESfWWNts9kUFxcnSWpoaNA999yjkZERxcbGSpJcLpd6enoUCATkcrmm\nX5eQkKDe3l4FAgHFx8d/P5jVKovFosnJyXCsBQCAqBTyD5h98MEH+vOf/6zHH3/8kuPBYPCy51/t\ncQAAcHkh/YDZRx99pIMHD+qVV16R0+lUXFycxsfHZbfb5ff75fF45PF4FAgEpl/j9/uVlpZ2yfGJ\niQkFg0HFxIQ0LOYBl8spt3th2MeZizFC1d/vjPQUImaufr/nQrSsI9zYp2tj1moODQ2ppqZGhw8f\n1g033CBJWrFihZqamrR27Vo1NzcrOztbqampqqys1NDQkKxWq3w+nyoqKjQ8PKympiZlZWWppaVF\nGRkZYV8Urh99fcPq7R0K6xhu98Kwj3E1+vqGIz2FiJmL3++5YNqfKVOxT6EJ5Q3NrLF+7733NDAw\noG3btkmSLBaLqqurVVlZqfr6eiUlJamgoEA2m03l5eUqLS2VxWJRWVmZnE6n8vPz1draquLiYjkc\nDlVXV//0lQEAMI/MGut7771X995774+OHzp06EfHvF6vvF7vJcesVqv27NnzE6YIAMD8xh3MAAAw\nHLEGAMBwxBoAAMMRawAADEesAQAwHLEGAMBwxBoAAMMRawAADEesAQAwHP+jBoA5MXVxUt9883Wk\np3FN9Pc7r+oe78nJy2S328M4I0Q7Yg1gTowNn9fe+j7FLeqO9FTm1Mhgj57bvlbLl98c6angOkas\nAcyZuEUeOeOTIj0N4LrDd9YAABiOWAMAYDhiDQCA4Yg1AACGI9YAABiOWAMAYDhiDQCA4Yg1AACG\nI9YAABiOWAMAYDhiDQCA4Yg1AACGI9YAABiOWAMAYDhiDQCA4Yg1AACGI9YAABiOWAMAYDhiDQCA\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65861550>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.hist(train.Relationship, bins=len(relationship_levels))\n",
"plt.show()\n",
"\n",
"plt.hist(test.Relationship, bins=len(relationship_levels))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Race"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['White' 'Black' 'Asian-Pac-Islander' 'Amer-Indian-Eskimo' 'Other']\n"
]
}
],
"source": [
"race_levels = train.Race.unique()\n",
"print race_levels"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[4 2 1 0 3]\n"
]
}
],
"source": [
"train.Race = number.fit_transform(train.Race)\n",
"test.Race = number.fit_transform(test.Race)\n",
"new_race_levels = train.Race.unique()\n",
"print new_race_levels"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Amer-Indian-Eskimo',\n",
" 1: 'Asian-Pac-Islander',\n",
" 2: 'Black',\n",
" 3: 'Other',\n",
" 4: 'White'}"
]
},
"execution_count": 62,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"race_levels_decoder = dict(zip(new_race_levels,race_levels))\n",
"race_levels_decoder"
]
},
{
"cell_type": "code",
"execution_count": 63,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nudTZ2XnJqAPA5eB+CxOPey5MXpPm5jOWZclms13ycdupz3Tu7OBVXNHV44iwh3y2Af9XOsdL9QnV\n7++SdOn/x3Hl+DW+Ovh1nnh9pzrG9LyQRd3j8cjn8wW/7ujokNvtvuT5tTtLr8ayAAAIWyH7K223\n3nqr3nrrLUnSZ599pmnTpikmJiZUywEAIOyF7JV6WlqabrzxRi1btkwOh0Pr168P1VIAADCCzbIs\nK9SLAAAAV447ygEAYAiiDgCAIYg6AACGmDR/T/2C4e4H//e//11btmyRw+FQZmamVq1aFapljtlw\n82VlZen666+X3X7+Z63nn39e06ZNC8k6x6q5uVkPP/ywHnjgAd13331DHjNh/4abL9z3r6KiQl6v\nV2fPntXKlSu1aNGi4GMm7N1w84X73vX396ukpERdXV06c+aMVq1apQULFgQfD/f9G2m+cN8/STp9\n+rR+9rOfafXq1VqyZEnw+Kj3zppE3n//fWvlypWWZVnW8ePHrXvvvXfI47m5udZXX31lDQ4OWvn5\n+dbx48dDscwxG2m+hQsXWn19faFY2rjo6+uzfvWrX1lPP/209corr3zr8XDfv5HmC+f9a2xstH79\n619blmVZ3d3d1oIFC4Y8Hu57N9J84bx3lmVZf/nLX6ydO3dalmVZra2t1h133DHk8XDfv5HmC/f9\nsyzLqqystO655x7rj3/845Djo927SfX2+6XuBy9JLS0tio+P17Rp02Sz2TR//nw1NjaGcrmjNtx8\nF1hh/JcRoqKitH37dk2d+u379Juwf8PNd0G47t/NN9+srVu3SpLi4uLU19cXnMWEvRtuvgvCde8k\nKTc3V4WFhZKkL7/8Utdff33wMRP2b7j5Lgjn/Ttx4oT+85//aMGCBUPmGMveTaq33y92P3ifz6fY\n2Fh1dnbK5XINeaylpSUUyxyzy7nf/dNPP63W1lbNnTtXxcXFoVjmmDkcDjkcjos+ZsL+DTffBeG6\nfw6HI3jzp5qaGi1YsCB422ZT9u5S810Qrnv335YtW6b29na9+OKLwWMm7N8FF5vvgnDev+eee07r\n16/X66+/PuT4WPZuUkX9m4b7ySucfyq7wPrG/e7XrFmj2267TfHx8Vq9erXeeust5eTkhHCF4+eb\nv4GasH/fZML+vf322zpw4IB27doVPGbS3l1sPsmMvZOk6upqNTc36/HHH1dtba0ks/bvYvNJ4b1/\nf/rTn3TTTTfpu9/97rf2Zix7N6nefh/ufvDTpk0b8lh7e7s8Hs9VX+OVGOl+93fddZdcLlfwD0T8\n61//CsUyJ8Q3Zw/H/RtJuO/fe++9px07dmjnzp1yOp3B46bs3aXmk8J/7z799FO1tZ3/52ZnzZql\nc+fOqaurS5IZ+zfcfFJ479+7776ruro63XvvvaqpqVFVVVXwLXa32z3qvZtUUR/ufvBJSUnq7e1V\na2urzp49q7/97W+aN29eKJc7asPN5/f7tWLFCp0+fVqS9OGHH+qGG24I2VqvxMV+mjRh/y642Hzh\nvn9+v18VFRV68cUXdd111w15zIS9G26+cN876fya//CHP0g6/zFfX1+fEhMTJZmxf8PNF+77t2XL\nFtXU1Gj//v365S9/qdWrVysjI0OS9L3vfW/UezfpbhO7efNmffDBB8H7wf/jH/9QXFycsrOz9eGH\nH+r555+XJOXk5OiBBx4I8WpHb7j59uzZo9dff10xMTH68Y9/rLKyslAvd1Q++ugjPfXUUzp58qQc\nDocSEhJ09913a/r06Ubs30jzhfP+7d+/X9u2bdP3v//94LH09HQlJycbsXcjzRfOeydJZ86cUWlp\nqb766iudPn1aRUVF6u7uNub3zpHmC/f9u2Dbtm1KSkqSpDHv3aSLOgAAGJtJ9fY7AAAYO6IOAIAh\niDoAAIYg6gAAGIKoAwBgCKIOAIAhiDoAAIYg6gAAGOL/A/xnSRn7Gr92AAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65d8e7d0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n/6trrrkm9JgJezfWfOfE6t6d09raqk8++UQLFiwYNUsk+3dFffx+vnvC+/1+TZo0Sd3d3XK73aMe\na2trG49lRuTr3O/+oYceUnt7u2bPnq3y8vLxWGbEHA6HHA7HeR+L9b2Txp7vnFjfv3M3gKqrq9OC\nBQtCt242Zf8uNN85sbx/krR48WJ1dnbqueeeCx0zYe/OOd9858T63j3++OOqrKzUyy+/POp4JPt3\nRUX9y8b66ivWvzKzvnS/+xUrVuh//ud/NHnyZC1btkwHDhxQfn7+OK4wer78H89Y37vzMWX/Xnvt\nNe3bt09bt24NHTNp/843n2TG/u3Zs0fHjh3Tr3/9a9XX10sya+/ON58U+3v36quvas6cObr22mu/\nsj+R7N8V9fH7WPeEnzp16qjHOjs75fV6L/saI3Wx+93ffvvtcrvdoR+G+Oc//zkey7wkvjx7rO3d\n12HC/r399tt6/vnn9cILL8jlcoWOm7J/F5pPiu39+9vf/qaOjs//V7M33HCDzp49q5MnT0oyY+/G\nmk+K7b2TpDfffFMNDQ264447VFdXp5qamtBH7B6PJ+z9u6KiPtY94dPS0tTf36/29nYNDw/rjTfe\nUE5OznguNyxjzRYIBLRkyRKdPn1akvTuu+/q+uuvH7e1fhPn+0oy1vfui843nwn7FwgEtGnTJj33\n3HO6+uqrRz1mwv6NNV+s79+7776rl156SdLn3+YbGBhQSkqKJDP2bqz5Yn3vJGnz5s2qq6vT3r17\n9Ytf/ELLli1Tdna2JOnb3/522Pt3xd0m9sknn9Q777wTuif8P/7xDyUlJSkvL0/vvvuunnjiCUlS\nfn6+7r333nFebXjGmm3Hjh16+eWXlZiYqB/84AeqqKgY7+WG5ciRI1q/fr1OnDghh8Oh5ORk/exn\nP9O0adOM2LuLzRfr+7d3714988wz+s53vhM6lpWVpe9///tG7N/F5ovl/Ttz5ozWrl2r48eP6/Tp\n0yorK1NPT48x/9282HyxvHdf9swzzygtLU2SIt6/Ky7qAAAgMlfUx+8AACByRB0AAEMQdQAADEHU\nAQAwBFEHAMAQRB0AAEMQdQAADEHUAQAwxP8HpfeyRxgw3JIAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65c24d50>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.hist(train.Race, bins = len(race_levels))\n",
"plt.show()\n",
"\n",
"plt.hist(test.Race, bins = len(race_levels))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Sex"
]
},
{
"cell_type": "code",
"execution_count": 64,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Female', 1: 'Male'}"
]
},
"execution_count": 64,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sex_levels = train.Sex.unique()\n",
"train.Sex = number.fit_transform(train.Sex)\n",
"test.Sex = number.fit_transform(test.Sex)\n",
"new_sex_levels = train.Sex.unique()\n",
"sex_levels_decoder = dict(zip(new_sex_levels, sex_levels))\n",
"sex_levels_decoder"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d65d8edd0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d64732750>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(3,4), dpi=1600)\n",
"plt.hist(train.Sex, bins = 2)\n",
"plt.show()\n",
"\n",
"fig = plt.figure(figsize=(3,4), dpi=1600)\n",
"plt.hist(test.Sex, bins = 2)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Native Country"
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"native_country_levels = train['Native.Country'].unique()\n",
"train['Native.Country'] = number.fit_transform(train['Native.Country'])\n",
"test['Native.Country'] = number.fit_transform(test['Native.Country'])\n",
"new_native_country_levels = train['Native.Country'].unique()\n",
"native_country_levels_decoder = dict(zip(new_native_country_levels, native_country_levels))"
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{0: 'Cambodia',\n",
" 1: 'Canada',\n",
" 2: 'China',\n",
" 3: 'Columbia',\n",
" 4: 'Cuba',\n",
" 5: 'Dominican-Republic',\n",
" 6: 'Ecuador',\n",
" 7: 'El-Salvador',\n",
" 8: 'England',\n",
" 9: 'France',\n",
" 10: 'Germany',\n",
" 11: 'Greece',\n",
" 12: 'Guatemala',\n",
" 13: 'Haiti',\n",
" 14: 'Holand-Netherlands',\n",
" 15: 'Honduras',\n",
" 16: 'Hong',\n",
" 17: 'Hungary',\n",
" 18: 'India',\n",
" 19: 'Iran',\n",
" 20: 'Ireland',\n",
" 21: 'Italy',\n",
" 22: 'Jamaica',\n",
" 23: 'Japan',\n",
" 24: 'Laos',\n",
" 25: 'Mexico',\n",
" 26: 'Nicaragua',\n",
" 27: 'Outlying-US(Guam-USVI-etc)',\n",
" 28: 'Peru',\n",
" 29: 'Philippines',\n",
" 30: 'Poland',\n",
" 31: 'Portugal',\n",
" 32: 'Puerto-Rico',\n",
" 33: 'Scotland',\n",
" 34: 'South',\n",
" 35: 'Taiwan',\n",
" 36: 'Thailand',\n",
" 37: 'Trinadad&Tobago',\n",
" 38: 'United-States',\n",
" 39: 'Vietnam',\n",
" 40: 'Yugoslavia'}"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"native_country_levels_decoder"
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAfQAAAFXCAYAAABUXrzKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3X1M1Gfe7/HPzPBwr4wVRmfsKevtRlNxI1bYtilTXYyU\nlkh23bplrVLZnoae7YNSN8VaRPTmjxtENj7UEFtd61atFbPYbLBpqNqSalio1kmrNaG7dZPWKAuM\nAgeEyihz/uhxbh956ijM5fv1l/y4YK4vl/BmBhwtfr/fLwAAENKsQ70BAADw4xF0AAAMQNABADAA\nQQcAwAAEHQAAAxB0AAAMENbbK7u6upSXl6fz58/r4sWLevnllxUXF6dly5app6dHTqdTpaWlioiI\nUGVlpXbs2CGr1ap58+YpIyNDPp9PeXl5amhokM1mU3FxscaNG6f6+noVFhbKYrEoLi5OhYWFd2hc\nAADM1Os99Orqaj3wwAPauXOnNmzYoNWrV2vjxo1auHChdu3apfHjx2vv3r3q7OzUpk2b9M4772jn\nzp3avn272tra9MEHHyg6OlrvvfeeXnzxRa1bt06SVFRUpIKCAu3evVvt7e06dOjQHRkWAABT9Rr0\n9PR0ZWdnS5LOnj2re++9V0eOHFFKSookadasWaqtrdXx48c1depU2e12RUZGKjExUR6PR3V1dUpN\nTZUkud1ueTwe+Xw+nTlzRvHx8ZKklJQU1dbW3s4ZAQAwXq8PuV8xf/58NTU16c0339Rzzz2n8PBw\nSZLD4VBTU5O8Xq8cDkdg/ejRo9Xc3Cyv16uYmBhJktVqlcVikdfr1ahRowJrr7wPAAAweP0Kenl5\nuerr67V06dJrrt/qWWMHcp1nngUA4Mfr9SH3r776Sg0NDZKkyZMn6/Lly4qKitLFixclSY2NjXK5\nXHK5XPJ6vYG3u9l1n88nv98vp9Op1tbWG9b2hfADAHBrvd5D//zzz3X27Fnl5+fL6/Wqq6tLv/zl\nL/XRRx9pzpw52r9/v5KTkzVt2jQVFBSovb1dVqtVHo9HK1asUEdHh6qqqjRjxgxVV1crKSlJYWFh\nmjBhgo4dO6YHH3xQBw4cUFZWVp8btVgsam5uD9rgQ8HpHBnyM0hmzGHCDBJzDCcmzCAFd47u7m6d\nPv1tv9aOGzdeERERQbldk85iIHoN+oIFC5Sfn69nnnlG33//vf7rv/5LU6ZM0euvv649e/YoNjZW\nc+fOlc1mU25urrKzs2WxWJSTkyO73a709HTV1NQoMzNTkZGRKikpkSTl5+dr1apV6unpUUJCgtxu\n9+AnBgAMS6dPf6slf6rUiFG9Pwrb2dakN16bo4kT779DOzOTJZT++9RQ/47LpO8aQ30OE2aQmGM4\nMWEGKbhznDr1Ty3fUid7TGyv6zpazmj1H5KCFnSTzmIgeKY4AAAMQNABADAAQQcAwAAEHQAAAxB0\nAAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAE\nHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAA\nQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAM\nQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADBAWF8LSktL5fF4dOnSJb3wwgv6+OOPdfLkSUVHR0uS\nnn/+ec2cOVOVlZXasWOHrFar5s2bp4yMDPl8PuXl5amhoUE2m03FxcUaN26c6uvrVVhYKIvFori4\nOBUWFt7uOQEAMFqvQa+rq9M333yj8vJytba26sknn5Tb7dbSpUs1c+bMwLrOzk5t2rRJFRUVCg8P\nV0ZGhh5//HF98sknio6O1tq1a1VTU6N169Zp/fr1KioqUkFBgeLj45Wbm6tDhw4pOTn5tg8LAICp\nen3I/eGHH9aGDRskSSNHjlRXV5cuX74sv99/zbovv/xSU6dOld1uV2RkpBITE+XxeFRXV6fU1FRJ\nktvtlsfjkc/n05kzZxQfHy9JSklJUW1t7e2YDQCAu0avQbfZbBoxYoQkqaKiQjNnzpTNZtO7776r\nZ599Vq+++qpaWlrk9XrlcDgCbzd69Gg1NzfL6/UqJibmhxuyWmWxWOT1ejVq1KjAWofDoaamptsx\nGwAAd40+f4YuSQcPHtTevXu1bds2nThxQjExMZo8ebK2bNmisrIyJSYmXrP++nvwvV2/1VoAANB/\nfQb98OHD2rJli7Zu3Sq73S632x143WOPPabCwkKlpaXJ6/UGrjc2NiohIUEulytw3efzye/3y+l0\nqrW19Zq1LperX5t1Okf2e7DhyoQZJDPmMGEGiTmGExNmkII3R0uLvd9rHQ57UD9+ppzFQPQa9Pb2\ndpWWlmr79u265557JEmvvPKKFi1apLi4OB05ckSTJk3StGnTVFBQoPb2dlmtVnk8Hq1YsUIdHR2q\nqqrSjBkzVF1draSkJIWFhWnChAk6duyYHnzwQR04cEBZWVn92mxzc/uPn3gIOZ0jQ34GyYw5TJhB\nYo7hxIQZpODOcf58x4DWBut2TTqLgeg16B9++KFaW1u1ZMmSwLWnnnpKy5cvV1RUlKKiolRcXKzI\nyEjl5uYqOztbFotFOTk5stvtSk9PV01NjTIzMxUZGamSkhJJUn5+vlatWqWenh4lJCRcc68fAAAM\nnMUfQj/EDvXvuEz6rjHU5zBhBok5hhMTZpCCO8epU//U8i11ssfE9rquo+WMVv8hSRMn3h+U2zXp\nLAaCZ4oDAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQ\ndAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAA\nBB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAw\nAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAADEDQAQAwAEEHAMAABB0AAAMQdAAA\nDBDW14LS0lJ5PB5dunRJL7zwguLj47Vs2TL19PTI6XSqtLRUERERqqys1I4dO2S1WjVv3jxlZGTI\n5/MpLy9PDQ0NstlsKi4u1rhx41RfX6/CwkJZLBbFxcWpsLDwDowKAIC5er2HXldXp2+++Ubl5eXa\nunWrioqKtHHjRi1cuFC7du3S+PHjtXfvXnV2dmrTpk165513tHPnTm3fvl1tbW364IMPFB0drffe\ne08vvvii1q1bJ0kqKipSQUGBdu/erfb2dh06dOiODAsAgKl6DfrDDz+sDRs2SJJGjhyprq4uHT16\nVCkpKZKkWbNmqba2VsePH9fUqVNlt9sVGRmpxMREeTwe1dXVKTU1VZLkdrvl8Xjk8/l05swZxcfH\nS5JSUlJUW1t7O2cEAMB4vQbdZrNpxIgRkqSKigrNnDlTnZ2dCg8PlyQ5HA41NTXJ6/XK4XAE3m70\n6NFqbm6W1+tVTEzMDzdktcpiscjr9WrUqFGBtVfeBwAAGLw+f4YuSQcPHtT777+vt99+W0888UTg\nut/vv+n6gVy/1dqbcTpH9nvtcGXCDJIZc5gwg8Qcw4kJM0jBm6Olxd7vtQ6HPagfP1POYiD6DPrh\nw4e1efNmvf3227Lb7RoxYoS6u7sVERGhxsZGuVwuuVwueb3ewNs0NjYqISHhmus+n09+v19Op1Ot\nra3XrHW5XP3abHNz+0DnG1aczpEhP4NkxhwmzCAxx3BiwgxScOc4f75jQGuDdbsmncVA9PqQe3t7\nu0pLS7V582bdc889kqRHH31UVVVVkqT9+/crOTlZ06ZN04kTJ9Te3q4LFy7I4/HooYce0vTp0wNr\nq6urlZSUpLCwME2YMEHHjh2TJB04cEDJyckDHhQAAPyPXu+hf/jhh2ptbdWSJUskSRaLRSUlJSoo\nKNCePXsUGxuruXPnymazKTc3V9nZ2bJYLMrJyZHdbld6erpqamqUmZmpyMhIlZSUSJLy8/O1atUq\n9fT0KCEhQW63+/ZPCgCAwSz+gfwQe4iF+kMoJj0MFOpzmDCDxBzDiQkzSMGd49Spf2r5ljrZY2J7\nXdfRckar/5CkiRPvD8rtmnQWA8EzxQEAYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAG\nIOgAABiAoAMAYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCA\nAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAGIOgAABiAoAMA\nYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAGIOgAABiAoAMAYACCDgCAAQg6AAAGIOgA\nABiAoAMAYACCDgCAAfoV9Pr6eqWmpmrXrl2SpLy8PP36179WVlaWsrKy9Omnn0qSKisrlZGRoXnz\n5qmiokKS5PP5lJubq8zMTGVlZen06dOB9zl//nwtWLBAhYWFt2E0AADuHmF9Lejq6tKaNWs0Y8aM\nwDWLxaKlS5dq5syZgWudnZ3atGmTKioqFB4eroyMDD3++OP65JNPFB0drbVr16qmpkbr1q3T+vXr\nVVRUpIKCAsXHxys3N1eHDh1ScnLy7ZkSAADD9XkPPSIiQps3b9aYMWOuue73+695+csvv9TUqVNl\nt9sVGRmpxMREeTwe1dXVKTU1VZLkdrvl8Xjk8/l05swZxcfHS5JSUlJUW1sbrJkAALjr9Bl0m82m\niIiIG66/++67evbZZ/Xqq6+qpaVFXq9XDocj8PrRo0erublZXq9XMTExP9yY1SqLxSKv16tRo0YF\n1jocDjU1NQVjHgAA7kp9PuR+M3PmzFFMTIwmT56sLVu2qKysTImJidesuf4efG/Xb7X2ek7nyIFv\ndpgxYQbJjDlMmEFijuHEhBmk4M3R0mLv91qHwx7Uj58pZzEQgwq62+0O/Pmxxx5TYWGh0tLS5PV6\nA9cbGxuVkJAgl8sVuO7z+eT3++V0OtXa2nrNWpfL1eftNje3D2a7w4bTOTLkZ5DMmMOEGSTmGE5M\nmEEK7hznz3cMaG2wbteksxiIfv+ztavvRb/yyiv6+uuvJUlHjhzRpEmTNG3aNJ04cULt7e26cOGC\nPB6PHnroIU2fPl1VVVWSpOrqaiUlJSksLEwTJkzQsWPHJEkHDhzgF+IAAPgR+ryH/sUXX2jlypU6\nd+6cbDabysvLlZOTo+XLlysqKkpRUVEqLi5WZGSkcnNzlZ2dLYvFopycHNntdqWnp6umpkaZmZmK\njIxUSUmJJCk/P1+rVq1ST0+PEhISrrnXDwAABqbPoCckJGjfvn03XH/iiSduuJaWlqa0tLRrrlmt\nVq1evfqGtRMnTgz8u3YAAPDj8ExxAAAYgKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEI\nOgAABiDoAAAYgKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAA\ngg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEIOgAABiDoAAAY\ngKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEIOgAABiDoAAAYgKADAGAAgg4AgAEIOgAA\nBiDoAAAYgKADAGCAfgW9vr5eqamp2rVrlySpoaFBWVlZeuaZZ/THP/5R3d3dkqTKykplZGRo3rx5\nqqiokCT5fD7l5uYqMzNTWVlZOn36dOB9zp8/XwsWLFBhYeFtGA0AgLtHn0Hv6urSmjVrNGPGjMC1\njRs3auHChdq1a5fGjx+vvXv3qrOzU5s2bdI777yjnTt3avv27Wpra9MHH3yg6Ohovffee3rxxRe1\nbt06SVJRUZEKCgq0e/dutbe369ChQ7dvSgAADNdn0CMiIrR582aNGTMmcO3IkSNKSUmRJM2aNUu1\ntbU6fvy4pk6dKrvdrsjISCUmJsrj8aiurk6pqamSJLfbLY/HI5/PpzNnzig+Pl6SlJKSotra2tsx\nHwAAd4WwvhbYbDbZbLZrrnV1dSk8PFyS5HA41NTUJK/XK4fDEVgzevRoNTc3y+v1KiYmRpJktVpl\nsVjk9Xo1atSowNor7wMAAAzOj/6lOL/f/6Ov32otAADonz7vod/MiBEj1N3drYiICDU2Nsrlcsnl\ncsnr9QbWNDY2KiEh4ZrrPp9Pfr9fTqdTra2t16x1uVx93q7TOXIw2x1WTJhBMmMOE2aQmGM4MWEG\nKXhztLTY+73W4bAH9eNnylkMRL+DfvW96EcffVRVVVWaM2eO9u/fr+TkZE2bNk0FBQVqb2+X1WqV\nx+PRihUr1NHRoaqqKs2YMUPV1dVKSkpSWFiYJkyYoGPHjunBBx/UgQMHlJWV1ecempvbBzflMOF0\njgz5GSQz5jBhBok5hhMTZpCCO8f58x0DWhus2zXpLAaiz6B/8cUXWrlypc6dOyebzaby8nJt3bpV\ny5cv1549exQbG6u5c+fKZrMpNzdX2dnZslgsysnJkd1uV3p6umpqapSZmanIyEiVlJRIkvLz87Vq\n1Sr19PQoISFBbrd7cBMDAIC+g56QkKB9+/bdcH3btm03XEtLS1NaWto116xWq1avXn3D2okTJwb+\nXTsAAPhxeKY4AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNAB\nADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0\nAAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAE\nHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADAAQQcAwAAEHQAAAxB0AAAMQNABADBA\n2GDe6LPPPtOSJUt0//33S5Li4uL0/PPP67XXXlNPT4+cTqdKS0sVERGhyspK7dixQ1arVfPmzVNG\nRoZ8Pp/y8vLU0NAgm82m4uJijRs3LqiDAQBwNxlU0CXpkUce0RtvvBF4efny5Vq4cKHS0tK0fv16\n7d27V7/5zW+0adMmVVRUKDw8XBkZGXr88cf1ySefKDo6WmvXrlVNTY3WrVun9evXB2UgAADuRoN+\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f5d64739510>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\nSdHrr7/+hV9/8803Qx9nZ2f3e6