{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# matplotlib-applied\n", "\n", "* Applying Matplotlib Visualizations to Kaggle: Titanic\n", "* Bar Plots, Histograms, subplot2grid\n", "* Normalized Plots\n", "* Scatter Plots, subplots\n", "* Kernel Density Estimation Plots" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Applying Matplotlib Visualizations to Kaggle: Titanic" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Prepare the titanic data to plot:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "import pandas as pd\n", "import numpy as np\n", "import pylab as plt\n", "import seaborn\n", "\n", "# Set the global default size of matplotlib figures\n", "plt.rc('figure', figsize=(10, 5))\n", "\n", "# Set seaborn aesthetic parameters to defaults\n", "seaborn.set()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "df_train = pd.read_csv('../data/titanic/train.csv')\n", "\n", "def clean_data(df):\n", " \n", " # Get the unique values of Sex\n", " sexes = np.sort(df['Sex'].unique())\n", " \n", " # Generate a mapping of Sex from a string to a number representation \n", " genders_mapping = dict(zip(sexes, range(0, len(sexes) + 1)))\n", "\n", " # Transform Sex from a string to a number representation\n", " df['Sex_Val'] = df['Sex'].map(genders_mapping).astype(int)\n", " \n", " # Get the unique values of Embarked\n", " embarked_locs = np.sort(df['Embarked'].unique())\n", "\n", " # Generate a mapping of Embarked from a string to a number representation \n", " embarked_locs_mapping = dict(zip(embarked_locs, \n", " range(0, len(embarked_locs) + 1)))\n", " \n", " # Transform Embarked from a string to dummy variables\n", " df = pd.concat([df, pd.get_dummies(df['Embarked'], prefix='Embarked_Val')], axis=1)\n", " \n", " # Fill in missing values of Embarked\n", " # Since the vast majority of passengers embarked in 'S': 3, \n", " # we assign the missing values in Embarked to 'S':\n", " if len(df[df['Embarked'].isnull()] > 0):\n", " df.replace({'Embarked_Val' : \n", " { embarked_locs_mapping[np.nan] : embarked_locs_mapping['S'] \n", " }\n", " }, \n", " inplace=True)\n", " \n", " # Fill in missing values of Fare with the average Fare\n", " if len(df[df['Fare'].isnull()] > 0):\n", " avg_fare = df['Fare'].mean()\n", " df.replace({ None: avg_fare }, inplace=True)\n", " \n", " # To keep Age in tact, make a copy of it called AgeFill \n", " # that we will use to fill in the missing ages:\n", " df['AgeFill'] = df['Age']\n", "\n", " # Determine the Age typical for each passenger class by Sex_Val. \n", " # We'll use the median instead of the mean because the Age \n", " # histogram seems to be right skewed.\n", " df['AgeFill'] = df['AgeFill'] \\\n", " .groupby([df['Sex_Val'], df['Pclass']]) \\\n", " .apply(lambda x: x.fillna(x.median()))\n", " \n", " # Define a new feature FamilySize that is the sum of \n", " # Parch (number of parents or children on board) and \n", " # SibSp (number of siblings or spouses):\n", " df['FamilySize'] = df['SibSp'] + df['Parch']\n", " \n", " return df\n", "\n", "df_train = clean_data(df_train)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Bar Plots, Histograms, subplot2grid" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nU6uBqnXr1ggICIBCoUBAQADc3d1x+fJl8/t6vR7e3t7w9PSEXq+vs/zuOZvu5uPTyil24oNylr/U\n6dfjsScici5WA1WPHj3wt7/9Da+99hp+/PFH3Lx5E71790ZJSQnCw8NRVFSEXr16QalUYvny5TAY\nDDAajSgrK6sziva9OEL3nq34+no51CUDajzN/dgzTBKRM7IaqKKionDo0CHEx8dDCIHMzEz4+fkh\nIyMDOTk5CAgIQHR0NORyORITE6FWqyGEQGpqKtzd3ZtiG4iIiIjsyq5TzzT3v9Kb8/Y3Z8392DtL\nD5UjHcPm/jPX2Lg/G5+j7FNL5y8O7ElEREQkEQMVERERkUQNGindWY1etMveJdjNB+kD7F0CEd2D\no5yXeA4hqos9VEREREQSMVARERERScRARURERCQRAxURERGRRAxURERERBIxUBERERFJ1KyHTSAi\n57du3Trs2rULVVVVSEhIQFhYGNLT0yGTyRAYGIisrCy4uLggLy8Pubm5cHV1RXJyMqKiouxdOhE5\nEPZQEZHTKikpwddff40PP/wQGo0Gly9fxsKFC5GSkoItW7ZACIHCwkKUl5dDo9EgNzcXGzduRE5O\nDoxGo73LJyIHwkBFRE5r7969CAoKwhtvvIGkpCT0798fJ0+eRFhYGAAgMjIS+/btw/HjxxESEgKF\nQgEvLy/4+/ujtLTUztUTkSPhJT8icloVFRW4ePEi1q5di/PnzyM5ORlCCMhkMgCAh4cHtFotdDod\nvLx+mfTUw8MDOp3OYts+Pq3g6iq3af0PM2eZ5PpBNffttwVH36cMVETktFq3bo2AgAAoFAoEBATA\n3d0dly9fNr+v1+vh7e0NT09P6PX6OstrB6x7qaiotFndjqC8XGvvEuzG19erWW+/LTjKPrUU+njJ\nj4icVo8ePfDll19CCIErV67g5s2b6N27N0pKSgAARUVFCA0NhVKpxOHDh2EwGKDValFWVoagoCA7\nV09EjoQ9VETktKKionDo0CHEx8dDCIHMzEz4+fkhIyMDOTk5CAgIQHR0NORyORITE6FWqyGEQGpq\nKtzd3e1dPhE5EAYqInJq06dPr7ds06ZN9ZapVCqoVKqmKImInBAv+RERERFJxEBFREREJFGDLvnF\nxsbC09MTAODn54ekpCSONExERET0f6wGKoPBACEENBqNeVlSUhJSUlIQHh6OzMxMFBYWIjg4GBqN\nBvn5+TAYDFCr1YiIiIBCobDpBhARERHZm9VAVVpaips3b2L06NGorq7Gm2++WW+k4eLiYri4uJhH\nGlYoFOaRhpVKpc03goiIiMierAaqFi1aYMyYMRg2bBjOnDmDsWPHcqRhJ+DoI9I6Ou5/IiLnYjVQ\ndejQAe3bt4dMJkOHDh3QunVrnDx50vw+Rxp2TI4wIq2zcpQRgW2FYZKInJHVp/y2bduGRYsWAQCu\nXLkCnU6HiIgIjjRMRERE9H+s9lDFx8djxowZSEhIgEwmw4IFC+Dj48ORhomIiIj+j9VApVAosGzZ\nsnrLOdIwERER0W0c2JOIiIhIIgYqIiIiIokYqIiIiIgkYqAiIiIikoiBioiIiEiiBk2OTETkqDi5\nOxE1BQYqInJanNydiJoKAxUROS1O7k5ETYWBioicli0ndyciqo2Bioicli0nd/fxaQVXV7nNan/Y\nNfdJrpv79tuCo+9TBioiclrbtm3DqVOnMGfOnHqTu4eHh6OoqAi9evWCUqnE8uXLYTAYYDQaGzS5\ne0VFZRNtxcOpvFxr7xLsxtfXq1lvvy04yj61FPoYqIjIaXFydyJqKgxUROS0OLk7ETUVDuxJRERE\nJBEDFREREZFEDFREREREEjFQEREREUnEQEVEREQkUYMC1dWrV9GvXz+UlZXh7NmzSEhIgFqtRlZW\nFkwmEwAgLy8PcXFxUKlU2L17t02LJiIiInqYWA1UVVVVyMzMRIsWLQAACxcuREpKCrZs2QIhBAoL\nC1FeXg6NRoPc3Fxs3LgROTk5MBqNNi+eiIiI6GFgNVBlZ2dj+PDhePTRRwGg3sSi+/btw/Hjx80T\ni3p5eZknFiUiIiJqDiwO7FlQUIA2bdqgb9++WL9+PQA06sSizX0uLHty9DmTHB33PxGRc7EYqPLz\n8yGTybB//358++23SEtLw7Vr18zvS5lYFOBcWPbkCHMmOStHmbPKVhgmicgZWbzkt3nzZmzatAka\njQZPPfUUsrOzERkZiZKSEgBAUVERQkNDoVQqcfjwYRgMBmi12gZNLEpERETkLH71XH5paWmcWJSI\niIiolgYHKo1GY/43JxYlIiIi+gUH9iQiIiKSiIGKiIiISCIGKiIiIiKJGKiIyOlx+iwisjUGKiJy\napw+i4iaAgMVETk1Tp9FRE3hV49DRUTkKGw5fVZznzqruY9439y33xYcfZ8yUBGR07Ll9FnNfeqs\n5j59UnPefltwlH1qKfTxkh8ROS1On0VETYU9VETUrHD6LCKyBQYqImoWOH0WEdkSL/kRERERScRA\nRURERCQRAxURERGRRAxURERERBIxUBERERFJxEBFREREJBEDFREREZFEVsehqqmpwezZs3H69GnI\nZDK8/fbbcHd3R3p6OmQyGQIDA5GVlQUXFxfk5eUhNzcXrq6uSE5ORlRUVFNsA9GvNnrRLnuXYDcf\npA+wdwlERE7HaqDavXs3ACA3NxclJSV49913IYRASkoKwsPDkZmZicLCQgQHB0Oj0SA/Px8GgwFq\ntRoRERFQKBQ23wgiIiIie7IaqAYNGoT+/fsDAC5evAhvb2/s27cPYWFhAIDIyEgUFxfDxcUFISEh\nUCgUUCgU8Pf3R2lpKZRKpU03gIiIiMjeGnQPlaurK9LS0jBv3jzExMRACAGZTAYA8PDwgFarhU6n\nqzM7u4eHB3Q6nW2qJiIiInqINHguv+zsbEydOhUqlQoGg8G8XK/Xw9vbG56entDr9XWW1w5Y9+Lj\n0wqurvIHKJuk8vW1fGzIefHYExE1PquBavv27bhy5QrGjx+Pli1bQiaToWvXrigpKUF4eDiKiorQ\nq1cvKJVKLF++HAaDAUajEWVlZQgKCrLYdkVFZaNtCP065eVae5dAdmLvY89AR0TOyGqgeu655zBj\nxgyMGDEC1dXVmDlzJp544glkZGQgJycHAQEBiI6OhlwuR2JiItRqNYQQSE1Nhbu7e1NsAxEREZFd\nWQ1UrVq1wooVK+ot37RpU71lKpUKKpWqcSojIiIichAc2JOIiIhIogbflE5E5Gg4MDERNRUGKiJy\nWhyYmIiaCgMVETktDkxMRE2FgYqInNqdgYl37tyJlStXori4uFEGJm7u4+g19+Evmvv224Kj71MG\nKiJyerYYmLi5j6Nn7/HM7MnX16tZb78tOMo+tRT6+JQfETmt7du3Y926dQBQb2BiACgqKkJoaCiU\nSiUOHz4Mg8EArVbboIGJiYhqYw8VETktDkxMRE2FgYqInBYHJiaipsJLfkREREQSMVARERERScRA\nRURERCQRAxURERGRRAxURERERBIxUBERERFJxEBFREREJBEDFREREZFEDFREREREEjFQEREREUlk\nceqZqqoqzJw5ExcuXIDRaERycjI6duyI9PR0yGQyBAYGIisrCy4uLsjLy0Nubi5cXV2RnJyMqKio\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Size of matplotlib figures that contain subplots\n", "figsize_with_subplots = (10, 10)\n", "\n", "# Set up a grid of plots\n", "fig = plt.figure(figsize=figsize_with_subplots) \n", "fig_dims = (3, 2)\n", "\n", "# Plot death and survival counts\n", "plt.subplot2grid(fig_dims, (0, 0))\n", "df_train['Survived'].value_counts().plot(kind='bar', \n", " title='Death and Survival Counts',\n", " color='r',\n", " align='center')\n", "\n", "# Plot Pclass counts\n", "plt.subplot2grid(fig_dims, (0, 1))\n", "df_train['Pclass'].value_counts().plot(kind='bar', \n", " title='Passenger Class Counts')\n", "\n", "# Plot Sex counts\n", "plt.subplot2grid(fig_dims, (1, 0))\n", "df_train['Sex'].value_counts().plot(kind='bar', \n", " title='Gender Counts')\n", "plt.xticks(rotation=0)\n", "\n", "# Plot Embarked counts\n", "plt.subplot2grid(fig_dims, (1, 1))\n", "df_train['Embarked'].value_counts().plot(kind='bar', \n", " title='Ports of Embarkation Counts')\n", "\n", "# Plot the Age histogram\n", "plt.subplot2grid(fig_dims, (2, 0))\n", "df_train['Age'].hist()\n", "plt.title('Age Histogram')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Get the unique values of Embarked and its maximum\n", "family_sizes = np.sort(df_train['FamilySize'].unique())\n", "family_size_max = max(family_sizes)\n", "\n", "df1 = df_train[df_train['Survived'] == 0]['FamilySize']\n", "df2 = df_train[df_train['Survived'] == 1]['FamilySize']\n", "plt.hist([df1, df2], \n", " bins=family_size_max + 1, \n", " range=(0, family_size_max), \n", " stacked=True)\n", "plt.legend(('Died', 'Survived'), loc='best')\n", "plt.title('Survivors by Family Size')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Normalized Plots" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\natiw4VXVBxQlhC+gEO3atUt79uzRgAEDFBISopCQEL3wwgsKCwvTtm3bVL58eZnfPX41Ozs71+dL\nlSrlfl29enXdeeed2rx5s9asWaPRo0dfNl54eLi6deumnj176vz582revLkcDoe6d++udu3aqWnT\npgoPD1dcXFyucQty55136pVXXtGYMWPUqFEj3XrrrZo+fbr27dun8PBwNW/eXE6n84p9ulwuDRgw\nQI8//rikS9fBnT179orj/P4aOGOMO3i2aNFCmZmZ+uqrr5SYmKipU6de8fP/e83X7+VX74wZM/T9\n999r+/bt7mC8YMGCK7ZPnz5dxhitXLnSfU3VmTNn5Ovrq9TUVPn4+MjL69IPzW02m3t8u92e69/n\nt/e4XK58+ytRooT73+F/BQcHKykpSSEhIbna582bpxo1aqhJkyaWzt/f31/r1q3T7t279fXXX2vY\nsGHq27ev+vXrd8X6gaKKW00Ahah8+fJasGCBEhMT3W0pKSnKzMxUUFCQypcvr2PHjun06dMyxigu\nLi7f/nr16qW33npLFy5c0D333HPZ+SpVqqhRo0aKiopy7xodPnxY6enpGjZsmEJDQ/XNN98oKyvr\nqndMftOlSxcFBwdr0qRJkqStW7fqySefVLdu3VShQgVt375dOTk5ki6FKKfTKUlq1aqVVq9erfT0\ndEnSG2+8oZdeeumKY+zYsUPHjh2TdOlXnA888ICkSyHm8ccf19///nd16dJFvr6+f6j2/Oo9c+aM\n2rRpo7Jly6pfv34aNmyYDhw4kGd7QECAgoODtWTJEkmXrq377aL+/LRp00YffPCBe+dv/fr1stls\nf7o/Serfv79WrVqlrVu3utsSEhK0bNmyy66Hs2L+mzZtUr9+/dS4cWM999xz6tatm5KTk//Q3wko\nCtj5AgpRrVq1NH/+fL3++us6ceKEfH19FRgYqOjoaNWuXVuSFBkZqfDwcFWqVElt27bNt7/Q0FC9\n9tprGjhwYJ7v6dmzp4YOHaoFCxZIunTLiLZt26pjx44qXbq0atSoobp16+rw4cMqUaLEH5rPq6++\nqq5du+rLL7/Us88+q2nTpunNN9+Ut7e3mjRpop9//lmS9MADD2j8+PGSpIEDB+rkyZPq1auXbDab\nqlWrpilTplyx/6CgII0ePVqnTp1S7dq1FR0d7T7XrVs3TZ06VREREX+o5t/kVW/58uU1ePBg9evX\nT35+fvL29taECRPybJcu7RSNHz9eYWFhysrKUpcuXdS1a1cdOXIkz/GfeeYZRUdHKywsTIGBgapQ\noYL7ovg/058k1axZUwsXLtTs2bM1depUuVwud+APCgrK9Xkr5p+Tk6OEhAR16dJFpUqVUpkyZdzr\nAChObOaPfLcAADeo9evXa+3atfrnP/9Z2KX8KR9//LECAgLUpk0buVwuPffcc2rZsqX761gARQfh\nC8BNr0+fPjp16pTmzp3rvkXDzeb7779XVFSUMjMzlZ2drebNm2v06NHy8fEp7NIAXGeELwAAAAtx\nwT0AAICFCF8AAAAWuml+7ZiScr6wSyh2ypUrpdRUR8FvBG5irHMUB6xz61WqFJjnOXa+kCe7/dof\n6gzc6FjnKA5Y5zcWwhcAAICFCF8AAAAWInwBAABYiPAFAABgIcIXAACAhQhfAAAAFiJ8AQAAWIjw\nBQAAYKGb5g73AACg6Nm//99atGiezp07K5fLpcqVq+rZZ4eqdu0619z32rWrdf58uvr06XfNfSUn\nf6sxY17W6tWx19yXR8PX3r17NWPGDC1btixXe3x8vObPny+73a7w8HD16tXLk2UAAIAbUFZWll5+\neZhmzZqv22+vL0n67LNPNHLk81q16iN5e1/bnfm7detxPcq87jwWvt566y199NFHKlmyZK727Oxs\nTZ48WatXr1bJkiX12GOPKTQ0VBUrVvRUKQAA4AZ04cIFpaenKzPzv8+dfOihjvL399euXTs1d+4s\nLVv2viRp9+5Evf76NC1b9r4WL16k//u/f+v06VOqVauO9u1L0qRJ01W//p2SpLFjX1Fw8D06c+a0\nzp5NU6tWbTRv3ut6990YSdL58+fVs2dXvf/+Ol28eEGzZk3TyZMnlJPj1IMPPqS+ff8qSfrww9WK\niVmhgICA67IT9xuPha8aNWpo7ty5eumll3K1//jjj6pRo4bKlCkjSbrnnnu0c+dOdezYMd/+ypUr\nddM+m6pXzODCLqHYeT9iQWGXUOywzq3HOrce6/z6q9Kulp4bPkg+ASXkX6OM/GuVU7kGVeQ4ek7H\nM066H1BdtuylHFCpUqD8/X2VknJS69evl91u15w5c7Rp02dq3bq5zp49q127dmrq1Ml65513lJVV\nQp06tdPMmZN14sQh3X333frii1iFhLRVnTrV1bdvX/Xr10+hoaG6ePGiBg4cqJ0766lWrVp65523\n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\nGzeqdOnSHi0KAACgqCowfN177725jlu0aKGePXtq6NChHisKAACgqCowfB07dsz92hijH374QWlp\naR4tCgAAoKgqMHw98cQTstlsMsbIZrOpfPnyGjNmjBW1AQAAFDkFhq/4+Hgr6gAAACgW8r3D/aZN\nm/TLL79IkuLi4jRo0CDNmTNHTqfTkuIAAACKmjzD1+LFizVv3jxdvHhRycnJGjlypB588EFlZGRo\n6tSpVtYIAABQZOT5teO6desUExOjkiVLasaMGQoNDVXPnj1ljFGnTp0K7NjlcmncuHE6cOCASpQo\noQkTJqhmzZqXve/VV19VmTJlNHLkyGubCQAAwE0gz50vm82mkiVLSpJ27Nih1q1bu9uvRlxcnLKy\nshQTE6MRI0ZoypQpl71n5cqV+v777/9M3QAAADelPMOXt7e3zp07pxMnTui7775Ty5YtJUlHjx6V\n3V7gdfratWuXO7AFBwdr//79uc7v3r1be/fuVURExLXUDwAAcFPJM0U9/fTT6tatm5xOp3r06KHK\nlSvrk08+0euvv65nn322wI7T09MVEBDgPvb29pbT6ZTdbtevv/6q+fPna968edqwYcNVFVquXCnZ\n7d5X9V6gUqXAwi4B8DjWOYqDorjO8wxfHTp0UOPGjZWamqr69etLkvz9/TVhwgQ1b968wI4DAgKU\nkZHhPna5XO4ds08//VSpqal6+umnlZKSogsXLqh27dp69NFH8+wvNdVx1ZMCUlLOF3YJgMexzlEc\n3KzrPL/QmO/3h1WqVFGVKlXcx23atLnqQZs0aaJNmzapU6dOSkpKUlBQkPtc37591bdvX0nSmjVr\n9NNPP+UbvAAAAIqKgi/e+pPat2+vbdu2KTIyUsYYTZo0SbGxsXI4HFznBQAAii2PhS8vLy9FR0fn\naqtTp85l72PHCwAAFCf53uEeAAAA1xfhCwAAwEIe+9oR/5X5TYfCLqH4CS3sAgAAuDJ2vgAAACxE\n+AIAALAQ4QsAAMBChC8AAAALEb4AAAAsRPgCAACwEOELAADAQoQvAAAACxG+AAAALET4AgAAsBDh\nCwAAwEKELwAAAAsRvgAAACxE+AIAALAQ4QsAAMBChC8AAAALEb4AAAAsRPgCAACwEOELAADAQoQv\nAAAACxG+AAAALET4AgAAsBDhCwAAwEKELwAAAAsRvgAAACxE+AIAALAQ4QsAAMBChC8AAAALEb4A\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n+umnn3TXXXfl+Tv+/bRjamqqnn/+eXl5eSkkJESSVK1aNU2aNElr167V0aNH3SuF/ys+Pl5nzpxR\n//793W02m00HDhzQDTfccMX7e/ToIUmqU6eOgoKC9O233yo0NFRjx47V/v37lZCQoBtvvFG1atW6\nas1DhgyRj4+PXC6XSpQooW7duqlt27aSlGO94eHhGjp0qPbs2aNmzZppxIgR8vLyyrF906ZN+u67\n7xQRESHp8vVwaWlp7hpCQ0Pl5eUlf39/1ahRQ+fPn9f+/fvVvHlzValSRZLUq1cv9zVxefXXuHHj\nqx6rl5eXzDU+sS63v68/e/zA9YbwBXhQVlaWSpcurdWrV7vbzp49q4CAAMXHx8vb2zvb+x2OKz+S\nmzdv1rhx4/T444+rVatWqlWrltasWXPN4/yR0+nUq6++qsGDB6t+/fqqX7++Hn/8cc2ePVuxsbHu\n8PXHf0AzMjLcr729vbPV2K1bN61atUq//fabwsPD5efnly18VatWTbfddps2b96slStXusPh5MmT\ntWfPHkVERKhp06ZyOp3X/I+2JJUqVUoxMTHq0KGDFixYoL59+2rfvn3q16+fHnvsMTVv3lwhISF6\n9dVXr/jZrKwsBQUFafny5e62hISEHK/X++M/7sYYORwO2e12RUVFacWKFTp9+rSioqJyrPWP13z9\nUW71hoaG6pNPPtGXX36pbdu2adasWVq6dGmO7S6XS3379tUjjzwi6fLf2fnz591j+fj4uF/bbDYZ\nY2S327P9zn8/TSgpz/5KlSp11WO96667tHDhQmVlZWXrb8+ePVq8eLEmT57skeOvXr16jr9/oDDi\nvwyAB9WsWVMlS5Z0h6KTJ0+qU6dO2rt37zX3sXXrVoWGhuqRRx7RHXfcobi4OGVlZf2lcRwOh44c\nOaLZs2crMzNT0uVAduzYMfcKXPny5d0/9/sqUU7Cw8O1b98+LVu2TN27d7/qe7p376633npLly5d\ncl+n9sUXX+jRRx9Vly5dVKFCBX355ZdXHFNeypQpo6FDh2rWrFlKSEjQjh073GGySZMm+uyzz9x9\n2u129/EGBwfr6NGj2rFjhyTphx9+UNu2bXX69OmrjvPhhx9KuhwWjh496l6h69atm+Li4rRv3z6F\nh4f/qdol5Vrv4MGDtW7dOnXs2FGvvPKK/P39dfLkyRzbW7RooRUrVig5OVmSNG3aNL344ou5jt+i\n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\nIiK0cuVKzZkzRyNHjlRycrIkKSMjQ+vWrcsWvCTphx9+0F133ZWtrUqVKrrnnnuytX377bcqUaKE\nYmNj9emnnyo9PV2ff/65Pv30U1WrVk0rV67U5MmTtXPnzhyPH0DRwcoXAI86ffq0HnzwQUmXQ8yd\nd96pwYMHy8vLS7NmzdLGjRt1+PBhff311/Ly8pLD4VCDBg3UtWtXtWrVSj179lTlypV13333afTo\n0frPf/6j0NBQtW3bVlu2bNHJkyfVu3dvSZfv7P37HewlqWXLlpKk2rVra8OGDUpKStKJEyd03333\nSZIiIiK0aNEiSdKXX36pQ4cOuU8ZOp1OHTt2TJJ05513XvXYbDbbNT2aKCQkRGXLltX777+vQ4cO\n6ciRI0pNTVWDBg00depUJSQk6P7771f//v1zPH4ARQfhC4BH/X7N1/9KSUlRRESEHnzwQYWEhKhu\n3bp6//33JV1+9E98fLy2bNmivn37asqUKWrXrp0aNGigTZs2aeHChfr88891//33q2HDhpo7d64k\nKT09XSkpKe4xSpYsKUnuxwfZ7fYcw5LL5dLChQtVtmxZSVJCQoIqVqyouLg4+fj4XPVn6tevr717\n9+qWW25xtx0+fFhz5sxRTEyMu+2zzz7T9OnT1bt3bz388MNKTEyUMUY333yz1q9fr//85z/atGmT\n3nnnHa1fv/6qx//742IAXP847QigQBw5ckReXl56+umndffdd2vLli3KysrSuXPn1L59e9WpU0cD\nBw5U8+bNdeDAAQ0aNEh79uxRVFSUBg4cqO+//1533XWX4uPjdfjwYUmXQ9sfQ8//CggIUPXq1fX5\n559LktauXeved/fdd2vJkiWSpJ9//lmdO3dWWlparsfQt29fzZw5U0eOHJF0OVBOnDhRVatWzfa+\nbdu2qX379oqIiFDFihW1Y8cOZWVl6b333tOMGTPUvn17vfLKKzp37pwSExOvevwAig5WvgAUiHr1\n6unWW29V+/bt5ePjo5CQEP36668qX768oqKi1LVrV/n6+qpq1ap66KGHFBISopdfflmzZ8+W3W7X\nsGHDVKlSJY0fP16DBg2Sy+VS5cqVNXny5FzHnTRpkl566SW98cYbqlu3rntVa8SIERo5cqQeeOAB\nSVJMTIz8/f1z7evee+/V888/r+eff15ZWVlyOp1q166dnn322Wzv69atm4YMGaKPP/5Y3t7eCg4O\n1vHjx/Xkk0/qn//8px544AE5HA49++yzOR4/gKKDxwsBKFZmzpyp7t27KzAwUBs2bNDatWs1Y8aM\ngi4LQDHCyheAYuWGG27QE088IYfDodKlS2vcuHEFXRKAYoaVLwAAAAtxwT0AAICFCF8AAAAWInwB\nAABYiPAFAABgIcIXAACAhQhfAAAAFvp/v1LXK8e9Do8AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAl8AAAFPCAYAAABzgasbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlclOX+//H3MCOo4L5naUqiFRXuWZqBkooLKiKYYpud\nSs3laKnlMXMlLSu3tDJT06+omUpHzQjLUo8HTTQqbHHJFTdcWASGuX9/+GtOHAXsxNzg8Ho+Hj0e\nc1/XzXV/briIt9d9zz0WwzAMAQAAwBQexV0AAABAaUL4AgAAMBHhCwAAwESELwAAABMRvgAAAExE\n+AIAADAR4QtwoWPHjqlx48bq37//NX3jxo1T48aNdf78+QLHGDt2rBYtWvSnjpuWlqbx48ere/fu\n6tGjh3r27KnVq1f/qTEKkpKSosjIyP/564OCgvTdd99d0z527Fi1a9dOoaGhCg0NVffu3dWhQwe9\n9957hY559OhRPf/883+6lhv5GRQkKChInTp1UmhoqHr27KmuXbtq2rRpcjgc//OYJV1WVpbeeust\n9ezZ0/lzevfdd/X7k4uioqK0efPmYq4SKLlsxV0A4O68vLx0+PBhHT9+XHXr1pUkZWRkaM+ePS47\n5htvvKHy5ctrw4YNslgsSklJUUREhOrUqaO2bdv+5fFr1aqllStXFkGl13r88cf11FNPObdPnDih\nkJAQBQUFydfXN9+vO3HihA4dOuSSmgrz+uuv65577pEkZWdnKyoqSitWrNCAAQOKpR5XMgxDgwcP\nVoMGDRQTEyMvLy+lpqbqmWeeUUZGhkaMGFHcJQIlHitfgItZrVZ16dJFsbGxzrYtW7aoQ4cOzm2H\nw6EpU6YoPDxcISEh6tKly3XD2a+//qonn3xSvXv3VmhoqNasWXPdY545c0ZZWVnKycmRdDUszZkz\nR/Xr15d07crT79vHjh1T+/bt9eSTT6pTp04aN26cJk2a5Nxv27ZtCg8P17Fjx9S0aVM5HA61b98+\nz1gjR47UihUrdPbsWQ0ePFgREREKCgpSVFSUzp0796e/f6dOnZIk+fj4SJIWLFigPn36qHv37urY\nsaM+//xz5ebmavz48frtt9+cwe3bb7/Vo48+ql69eql3797aunVrvsd466231KtXL4WGhjr3e+KJ\nJxQTE+Pc55133tG0adMKrdfT01PNmzfXwYMH861XuvqzjIyMVO/evdWrVy8tX768wPbfa/i9zsGD\nByslJUXS1ZWmN954Q/3791dQUJBeeOEF58rb2rVr1blzZ/Xs2VPR0dG66667bmi8oUOHKiQkRMuW\nLctzfgkJCTp48KDGjRsnLy8vSVKVKlU0Y8YMtWzZ8prvR1GeP+A2DAAuc/ToUSMgIMD47rvvjC5d\nujjbH3vsMePAgQOGn5+fce7cOePbb781nn/+eSM3N9cwDMNYuHCh8cwzzxiGYRhjxowx3n//fSMn\nJ8cICQkxkpKSDMMwjEuXLhldunQx9u7de81xf/zxR+ORRx4xmjZtajz55JPG3LlzjYMHDzr7AwMD\njf3791+zffToUcPPz89ISEgwDMMwfvvtN6N169ZGVlaWYRiGMXz4cGPVqlXO8zIMw3j77beNV199\n1TAMw7hw4YLRqlUr49KlS8aHH35oLFy40DAMw3A4HMagQYOMRYsWXff4vxszZozRtm1bo0ePHkaH\nDh2MVq1aGc8995yxc+dOwzAM49ixY0ZUVJSRmZlpGIZhfPrpp0a3bt0MwzCMf/3rX0bXrl2ddTzy\nyCPG0aNHDcMwjFOnThkPPfSQcfz48WuO6efn56zzwIEDRqtWrYxz584Zn3/+uREWFmYYhmHk5uYa\ngYGBxq+//nrN1//3uZw6dcro3LmzsXnz5gLrHTdunPO4p0+fNkaMGGHk5ubm2/7JJ58YI0aMMHJy\ncgzDMIyVK1cagwYNMgzDMAYMGGAMGzbMyM3NNS5fvmy0bdvW2Llzp/Hzzz8bbdq0MU6ePGkYhmHM\nmTPH8PPzMwzDKHS8cePGXXOuhmEYixYtMoYNG3bdvt8NGDDA2LRpU5GeP+BOuOwImMDf318eHh5K\nSkpStWrVlJ6eLj8/P2d/06ZNValSJa1cuVJHjx7Vrl275O3tnWeMw4cP67ffftNLL73kbLty5Yp+\n+OEHBQQE5Nm3SZMm2rx5s77//nslJCRo+/btWrBggd5++20FBQUVWKvNZnOOd9ttt6lJkyaKj49X\nmzZttHPnTk2dOlWpqanO/cPCwtSnTx+NHTtWn376qQIDA1WhQgU99thj2r17txYvXqzDhw/r559/\n1n333Vfo9+r3y44ZGRkaOXKkPDw8nCsqdevW1WuvvabY2FgdOXJE+/btU3p6+jVjJCYm6syZMxoy\nZIizzWKx6MCBA7rllluu2b9fv36SJD8/P/n6+mrv3r0KDAzUlClTlJycrJSUFN16661q2LDhdWse\nPXq0ypYtK4fDoTJlyig8PFydOnWSpHzrDQ4O1pgxY7R//361adNG48ePl4eHR77tW7du1Xfffaew\nsDBJV1dLMzMznTUEBgbKw8NDPj4+ql+/vi5evKjk5GQ9+OCDql27tiRpwIABmjNnjiQVOl6LFi2u\ne64eHh7Oe7sKU9DP68+eP+BOCF+ASXr06KENGzaoatWqCg0NzdP35ZdfaurUqXriiSfUoUMHNWzY\nUBs2bMizT25uripWrKj169c7286ePasKFSrk2c9ut+vVV1/VqFGj5O/vL39/fz3xxBOaP3++YmJi\nnOHrj39As7Ozna89PT1ls/3nfw3h4eFat26dzp07p+DgYHl7e+cJX3Xr1tVdd92lL7/8UmvXrnWG\nw5kzZ2r//v0KCwtT69atZbfbb/iPtiSVL19eM2bMUEhIiBYvXqxBgwbp+++/1+DBg/X444/rwQcf\nVMuWLfXqq69e87W5ubny9fXN8yaDlJQUVa1a9brH+uMfd8MwZLPZZLVaFRkZqTVr1uj06dMFvsHg\nj/d8/VFB9QYGBuqzzz7Tjh07tHPnTs2bN08rV67Mt93hcGjQoEF69NFHJV39mV28eNF5rLJlyzpf\nWywWGYYhq9Wa53tutVqdrwsbr3z58tc91/vuu09LlixRbm5unvH279+vZcuWaebMmS45/3r16uX7\n/QduNvxzAjBJaGioNm/erI0bN6pbt255+rZv367AwEA9+uijuueeexQXF6fc3Nw8+zRo0EBeXl7O\n8HXy5El169ZNSUlJefaz2Ww6fPiw5s+f77zny2636+jRo877fapWrer8ut9XifITHBys77//XqtW\nrVLfvn2vu0/fvn313nvv6cqVK2revLkk6ZtvvtFjjz2mnj17qlq1atqxY8c151SYSpUqacyYMZo3\nb55SUlKUkJDgDJOtWrXSF1984RzTarU6zzcgIEBHjhxRQkKCJOnHH39Up06ddPr06ese55NPPpF0\nNSwcOXLEuUIXHh6uuLg4ff/99woODv5TtUsqsN5Ro0Zp48aN6tq1q1555RX5+Pjo5MmT+ba3bdtW\na9asUVpamiTp7bff1osvvljg8du2baudO3c67+X6Yxj9X8aTrq7SNmzYUNOnT1dWVpakq/8ImDJl\nim699VaXnT/gTlj5AkxSq1Yt+fr6qkKFCqpcuXKevsjISI0ePVrdu3eX1WpVixYttGXLljyPK/D0\n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\nadOmKTY2VhkZGYqIiFBERIQeffRRlSlTRvXq1VOvXr1cVQoAAECJ4bLw5eHhoUmTJuVp8/X1db7u\n16+f+vXr56rDAwAAlEg8ZBUAAMBEhC8AAAATEb4AAABMRPgCAAAwEeELAADARIQvAAAAExG+AAAA\nTET4AgAAMBHhCwAAwESELwAAABMRvgAAAExE+AIAADAR4QsAAMBEhC8AAAATEb4AAABMRPgCAAAw\nEeELAADARIQvAAAAExG+AAAATET4AgAAMBHhCwAAwESELwAAABMRvgAAAExE+AIAADAR4QsAAMBE\nhC8AAAATEb4AAABMRPgCAAAwEeELAADARIQvAAAAExG+AAAATET4AgAAMBHhCwAAwESELwAAABMR\nvgAAAEx0Q+ErIyNDycnJMgxDGRkZrq4JAADAbRUavnbu3KnQ0FANHjxYZ86cUVBQkL755hszagMA\nAHA7hYavWbNmacWKFapYsaJq1qypjz76SDNmzDCjNgAAALdTaPhyOByqUaOGc/uOO+5waUEAAADu\nzFbYDrVr19bWrVtlsVh06dIlLV++XLfccosZtbmNzH93Lu4SSp+g4i4AAIDrK3Tla9KkSYqNjdXJ\nkycVHBysH3/8UZMnTzajNgAAALdT6MpXcnKyZs2aladty5YteuSRR1xWFAAAgLvKN3xt3LhR2dnZ\nmj17toYNG+Zst9vtWrhwIeELAADgf5Bv+EpLS9PevXuVnp6uXbt2OdutVqtGjhxpSnEAAADuJt/w\n1bdvX/Xt21c7d+5UmzZt/vTADodDEydO1IEDB+Tp6akpU6aofv36zv79+/crOjpahmGoRo0amjlz\npry8vP63swAAALhJFHrPV5kyZfTcc88pIyNDhmHI4XDoxIkTio+PL/Dr4uLilJ2drZiYGCUmJio6\nOlrvvPOOJMkwDP3jH//Q7NmzVb9+fa1evVrHjx9Xw4YNi+asAAAASqhC3+04fvx4dezYUbm5uerf\nv7/q16+vjh07Fjrwnj171K5dO0lSQECAkpKSnH2HDh1S5cqV9eGHH2rAgAG6cOECwQsAAJQKha58\nlS1bVmFhYTp+/LgqVqyoKVOmqHfv3oUOnJaWJh8fH+e21WqV3W6XzWZTamqq9u7dqwkTJqhevXp6\n9tln5e/vX+DlzSpVystms97gaaG0q1GjQnGXALgc8xylgTvO80LDl5eXly5cuKAGDRpo3759atOm\nzQ19uLaPj4/S09Od2w6HQzbb1cNVrlxZ9evXl6+vrySpXbt2SkpKKjB8pabygd64cWfOXC7uEgCX\nY56jNLhZ53lBobHQy46PP/64Ro4cqcDAQK1bt05du3aVv79/oQdt1qyZtm3bJklKTEyUn5+fs++2\n225Tenq6jhw5IknavXu3GjVqVOiYAAAAN7tCV766dOmizp07y2KxaO3atTp8+LDq1atX6MDBwcHa\nvn27IiMjZRiGpk2bptjYWGVkZCgiIkJTp07VqFGjZBiGmjZtqocffrgozgcAAKBEyzd8nT9/XosX\nL1alSpX0+OOPy2azqWzZstq7d68GDRqkHTt2FDiwh4eHJk2alKft98uMktSmTRutWbPmL5YPAABw\nc8k3fI0ePVre3t5KTU1VTk6O2rdvrxdffFGZmZkaN26cmTUCAAC4jXzD12+//aa4uDilpaUpMjJS\nK1asUFRUlB5//HF5enqaWSMAAIDbyDd8/f6YCB8fH124cEFz5sxR06ZNTSsMAADAHeX7bkeLxeJ8\nXb16dYIXAABAEch35Ss9PV27d++Ww+FQZmamdu/eLcMwnP0tW7Y0pUAAAAB3km/4qlWrlt5++21J\nUs2aNZ2vpaurYkuXLnV9dQAAAG4m3/C1bNkyM+sAAAAoFQp9wj0AAACKDuELAADARIQvAAAAE+V7\nz1dhT7GfPn16kRcDAADg7vINX61atTKzDgAAgFIh3/DVq1cv5+sLFy4oMzNThmEoNzdXx44dM6U4\nAAAAd5Nv+PrdrFmztHz5ctntdlWpUkUpKSny9/fX6tWrzagPAADArRR6w/2nn36qr776SiEhIVq6\ndKkWL16sqlWrmlEbAACA2yk0fNWsWVM+Pj5q1KiRkpOTdf/99+vs2bNm1AYAAOB2Cr3s6OPjo3Xr\n1unuu+/WRx99pJo1a+rSpUtm1AYAAOB2Cl35mjp1qs6fP6/WrVurbt26mjBhgkaMGGFGbQAAAG6n\n0JWvTZs2qUePHpKksWPHurwgAAAAd1boyldKSor69u2rp556SuvXr1dmZqYZdQEAALilQsPXmDFj\nFB8fr+eee0779u1Tz5499cILL5hRGwAAgNu5oc92NAxDOTk5ysnJkcVikaenp6vrAgAAcEuF3vM1\nefJkxcXF6c4771SPHj00fvx4eXl5mVEbAACA2yk0fN1+++365JNPeLAqAABAEcg3fMXExCgiIkIX\nL17UihUrrukfOnSoSwsDAABwR/ne82UYhpl1AAAAlAr5rnxFRkZKuvqE+27duql69eqmFQUAAOCu\neM4XAACAiXjOFwAAgIl4zhcAAICJbug5X1988YWaNGnCc74AAAD+okLDV7Vq1bR27Vqe8wUAAFAE\nCr3sGBsbS/ACAAAoIoWufN1xxx2aO3eu7rvvPpUtW9bZ3rJlS5cWBgAA4I4KDV8XLlzQrl27tGvX\nLmebxWLR0qVLXVoYAACAOyo0fC1btsyMOgAAAEqFQsNXVFSULBbLNe2sfAEAAPx5hYav559/3vna\nbrfriy++UMWKFV1aFAAAgLsqNHy1atUqz/YDDzyg8PBwDR8+3GVFAQAAuKtCw9eJEyecrw3D0C+/\n/KILFy64tCgAAAB3VWj4GjBggCwWiwzDkMViUdWqVTV+/HgzagMAAHA7hYav+Ph4M+oAAAAoFQp8\nwv3WrVt19OhRSVJcXJyeffZZzZ49W3a73ZTiAAAA3E2+4WvRokWaO3eusrKylJycrNGjR6tDhw5K\nT0/Xa6+9ZmaNAAAAbiPfy47r169XTEyMypUrp9dff11BQUEKDw+XYRgKCQkpdGCHw6GJEyfqwIED\n8vT01JQpU1S/fv1r9vvHP/6hSpUqafTo0X/tTAAAAG4C+a58WSwWlStXTpK0a9cutWvXztl+I+Li\n4pSdna2YmBiNGjVK0dHR1+yzcuVK/fTTT/9L3QAAADelfMOX1WrVpUuXdOrUKf3444968MEHJUnH\njx+XzVboffras2ePM7AFBAQoKSkpT/+3336rffv2KSIi4q/UDwAAcFPJN0X97W9/U8+ePWW329Wn\nTx/VrFlTGzdu1JtvvqkhQ4YUOnBaWpp8fHyc21arVXa7XTabTadPn9a8efM0d+5cbdq06YYKrVKl\nvGw26w3tC9SoUaG4SwBcjnmO0sAd53m+4atz585q2rSpUlNT1aRJE0mSt7e3pkyZotatWxc6sI+P\nj9LT053bDofDuWK2efNmpaam6m9/+5vOnDmjK1euqGHDhurdu3e+46WmZtzwSQFnzlwu7hIAl2Oe\nozS4Wed5QaGxwOuHtWrVUq1atZzb7du3v+GDNmvWTFu3blVISIgSExPl5+fn7Bs4cKAGDhwoSVq7\ndq0OHjxYYPACAABwF4XfvPU/Cg4O1vbt2xUZGSnDMDRt2jTFxsYqIyOD+7wAAECp5bLw5eHhoUmT\nJuVp8/X1vWY/VrwAAEBpUuAT7gEAAFC0CF8AAAAmInwBAACYiPAFAABgIsIXAACAiQhfAAAAJiJ8\nAQAAmIjRtWJHAAAOGklEQVTwBQAAYCLCFwAAgIkIXwAAACYifAEAAJiI8AUAAGAiwhcAAICJCF8A\nAAAmInwBAACYiPAFAABgIsIXAACAiQhfAAAAJiJ8AQAAmIjwBQAAYCLCFwAAgIkIXwAAACYifAEA\nAJiI8AUAAGAiwhcAAICJCF8AAAAmInwBAACYiPAFAABgIsIXAACAiQhfAAAAJiJ8AQAAmIjwBQAA\nYCLCFwAAgIkIXwAAACYifAEAAJiI8AUAAGAiwhcAAICJCF8AAAAmInwBAACYiPAFAABgIsIXAACA\niQhfAAAAJiJ8AQAAmIjwBQAAYCKbqwZ2OByaOHGiDhw4IE9PT02ZMkX169d39n/66adasmSJrFar\n/Pz8NHHiRHl4kAUBAIB7c1naiYuLU3Z2tmJiYjRq1ChFR0c7+65cuaK33npLS5cu1cqVK5WWlqat\nW7e6qhQAAIASw2Xha8+ePWrXrp0kKSAgQElJSc4+T09PrVy5UuXKlZMk2e12eXl5uaoUAACAEsNl\nlx3T0tLk4+Pj3LZarbLb7bLZbPLw8FD16tUlScuWLVNGRoYefPDBAserUqW8bDarq8qFm6lRo0Jx\nlwC4HPMcpYE7znOXhS8fHx+lp6c7tx0Oh2w2W57tmTNn6tChQ5ozZ44sFkuB46WmZriqVLihM2cu\nF3cJgMsxz1Ea3KzzvKDQ6LLLjs2aNdO2bdskSYmJifLz88vTP2HCBGVlZWn+/PnOy48AAADuzmUr\nX8HBwdq+fbsiIyNlGIamTZum2NhYZWRkyN/fX2vWrFGLFi302GOPSZIGDhyo4OBgV5UDAABQIrgs\nfHl4eGjSpEl52nx9fZ2vk5OTXXVoAACAEosHawEAAJiI8AUAAGAiwhcAAICJCF8AAAAmInwBAACY\niPAFAABgIsIXAACAiQhfAAAAJiJ8AQAAmIjwBQAAYCLCFwAAgIkIXwAAACYifAEAAJiI8AUAAGAi\nwhcAAICJCF8AAAAmInwBAACYiPAFAABgIsIXAACAiQhfAAAAJiJ8AQAAmIjwBQAAYCLCFwAAgIkI\nXwAAACYifAEAAJiI8AUAAGAiwhcAAICJCF8AAAAmInwBAACYiPAFAABgIsIXAACAiQhfAAAAJiJ8\nAQAAmIjwBQAAYCLCFwAAgIkIXwAAACYifAEAAJiI8AUAAGAiwhcAAICJCF8AAAAmInwBAACYiPAF\nAABgIsIXAACAiQhfAAAAJnJZ+HI4HJowYYIiIiIUFRWlI0eO5OmPj49XWFiYIiIitGrVKleVAQAA\nUKK4LHzFxcUpOztbMTExGjVqlKKjo519OTk5mj59uj744AMtW7ZMMTExOnv2rKtKAQAAKDFcFr72\n7Nmjdu3aSZICAgKUlJTk7Pv1119Vr149VapUSZ6enmrevLkSEhJcVQoAAECJYXPVwGlpafLx8XFu\nW61W2e122Ww2paWlqUKFCs4+b29vpaWlFThejRoVCuwvyWLfCC3uEgCXY56jNGCeoyi4bOXLx8dH\n6enpzm2HwyGbzXbdvvT09DxhDAAAwF25LHw1a9ZM27ZtkyQlJibKz8/P2efr66sjR47owoULys7O\n1u7du9W0aVNXlQIAAFBiWAzDMFwxsMPh0MSJE/XTTz/JMAxNmzZNP/zwgzIyMhQREaH4+HjNmzdP\nhmEoLCxM/fv3d0UZAAAAJYrLwhcAAACuxUNWAQAATET4AgAAMBHhCwAAwESELwAAABO57CGrAFAS\nnT9/XgkJCbp8+bIqVqyogIAA1axZs7jLAooU87xk492OyINfWLiz1atXKyYmRs2bN5e3t7fS09OV\nkJCg8PBw9evXr7jLA4oE87zkI3zBiV9YuLvIyEgtW7ZMZcqUcbZlZ2erX79++vjjj4uxMqDoMM9L\nPi47wunjjz/W//3f/133F5bwBXdgt9uVlZWVZ45fuXJFFoulGKsCihbzvOQjfMGJX1i4u8GDB6t3\n796qX7++KlSooLS0NB05ckTjxo0r7tKAIsM8L/m47Ain+Ph4RUdHX/cX9uGHHy7u8oAiYbfb9euv\nvyotLU0+Pj7y9fWVzca/Q+FemOclG+ELefALi9Jo9erVCg8PL+4yAJdinpcc/FVFHjabTY0bN87T\nxi8s3F25cuWKuwTAZa5cuSIPDw/meQnCQ1ZRKH5h4S7i4+MVGBio4OBgbdy40dm+atWqYqwKKFq/\n/PKLBg8erHHjxmnHjh0KCQlRSEiIypcvX9yl4f9j5QuF6tatW3GXABSJBQsWaN26dXI4HBo+fLiy\nsrLUq1cvcfcF3Mkrr7yi4cOH6/jx4xo2bJg+++wzeXl5adCgQQoKCiru8iDCF/4gKipKOTk5edoM\nw5DFYtHKlSuLqSqg6JQpU0aVKlWSJM2fP1+PPfaY6tSpwzt64VYcDodatWolSdq1a5eqVasmSdy/\nW4Jwwz2c9u3bp/Hjx2vevHmyWq15+urWrVtMVQFF58UXX1SVKlU0fPhwlS9fXidPntRTTz2lS5cu\n6Ztvvinu8oAi8dJLL8lisWjy5Mny8Lh6d9G7776rH374QW+99VYxVwdJsk6cOHFicReBkqF27drK\nyMiQ3W5XQECAKlas6PwPcAeBgYE6d+6cGjVqpDJlyqhChQrq1KmTLl68qIceeqi4ywOKRGBgoCTJ\n19fX2Xbs2DE988wzeZ7jiOLDyhcAAICJeLcjAACAiQhfAAAAJuKtDwBc5tixY+rcubN8fX1lsViU\nk5OjmjVravr06apdu3Zxl1ckvvzySy1YsEAZGRlyOBzq2LGjhg0bJg8PD0VFRWno0KFq3bp1cZcJ\noARh5QuAS9WsWVPr16/XunXr9M9//lP+/v6aPHlycZdVJLZt26ZJkyZp+vTp2rBhg9asWaPk5GTN\nnj27uEsDUIKx8gXAVC1atFB8fLwkadOmTVq8eLGuXLmirKwsTZkyRS1bttTixYv1ySefyMPDQ/fe\ne68mTZqk5ORkTZgwQXa7XV5eXpo+fbpuv/12bdu2TbNnz5bdbtett96qyZMnq0qVKgoKClKPHj30\nzTffKDMzU6+99pr8/f31008/aezYscrNzVWLFi20bds2ff755zp79qwmTJigU6dOyWKxaNSoUXrg\ngQc0Z84cJSYm6uTJk+rfv7/69+/vPJcFCxZo6NChatCggSSpbNmymjhxog4ePJjnnO12uyZOnKif\nf/5ZZ8+eVYMGDTR37lzZ7Xb9/e9/19mzZyVJQ4YMUYcOHa57/gDcBytfAEyTk5OjTZs2qVmzZnI4\nHFq5cqUWLFigDRs26Omnn9aiRYtkt9u1cOFCffzxx1q7dq0sFotSUlK0ZMkSPfHEE1q7dq2ioqKU\nmJio8+fP64033tCiRYu0bt06tW3bVq+//rrzeJUrV9aaNWsUGRmphQsXSpLGjh2r4cOHa/369brt\nttuUm5srSZo6darCwsK0du1avfPOO5owYYLS0tIkSdnZ2dq4cWOe4CVJP/74o+677748bbVr19YD\nDzyQp23v3r0qU6aMYmJi9PnnnysrK0tfffWVPv/8c9WtW1dr167VzJkztXv37nzPH4D7YOULgEud\nPn1aoaGhkq6GmHvvvVejRo2Sh4eH5s2bp/j4eB06dEj//ve/5eHhIZvNpqZNm6pPnz7q0KGD+vfv\nr1q1aql9+/aaNGmSvv76awUGBqpTp07atm2bTp48qYEDB0q6+mTv359gL0nt2rWTJDVq1EhbtmzR\nhQsXdPz4cbVv316SFBYWpqVLl0qSduzYoYMHDzovGdrtdh09elSSdO+991733CwWyw19NFHLli1V\nuXJlLV++XAcPHtThw4eVkZGhpk2batasWUpJSdHDDz+sIUOG5Hv+ANwH4QuAS/1+z9d/S09PV1hY\nmEJDQ9WyZUs1btxYy5cvl3T1o38SExO1bds2DRo0SK+//ro6d+6spk2bauvWrVqyZIm++uorPfzw\nw2rWrJkWLFggScrKylJ6errzGF5eXpLk/Pggq9Wab1hyOBxasmSJKleuLElKSUlR9erVFRcXp7Jl\ny173a/z9/ZWUlKQ77rjD2Xbo0CG98847mjFjhrPtiy++0OzZszVw4ED17t1bqampMgxDt99+uzZt\n2qSvv/5aW7du1QcffKBNmzZd9/x//7gYADc/LjsCKBaHDx+Wh4eHnn32Wd1///3atm2bcnNzdf78\neXXp0kV+fn4aPny4HnzwQR04cEAjRozQ/v37FRkZqeHDh+uHH37Qfffdp8TERB06dEjS1dD2x9Dz\n3ypUqKB69erpq6++kiTFxsY6++6//36tWLFCkvTLL7+oR48eyszMLPAcBg0apLlz5+rw4cOSrgbK\n6Oho1alTJ89+O3fuVJcuXRQWFqbq1asrISFBubm5+uijjzRnzhx16dJFr7zyis6fP6/U1NTrnj8A\n98HKF4Bi0aRJE915553q0qWLypYtq5YtW+rEiROqWrWqIiMj1adPH5UrV0516tRRr1691LJlS738\n8suaP3++rFarxo4dqxo1amjatGkaMWKEHA6HatWqpZkzZxZ43Ndee00vvfSS3nrrLTVu3Ni5qjV+\n/HhNmDBB3bt3lyTNmDFDPj4+BY710EMPaeTIkRo5cqRyc3Nlt9vVuXNnDR06NM9+4eHhGj16tDZv\n3ixPT08FBATo2LFjevrpp/X3v/9d3bt3l81m09ChQ/M9fwDug48XAlCqzJ07V3379lXNmjW1ZcsW\nxcbGas6cOcVdFoBShJUvAKXKLbfcoieffFI2m00VK1bU1KlTi7skAKUMK18AAAAm4oZ7AAAAExG+\nAAAATET4AgAAMBHhCwAAwESELwAAABMRvgAAAEz0/wByhHifJ/8tpAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pclass_xt = pd.crosstab(df_train['Pclass'], df_train['Survived'])\n", "\n", "# Normalize the cross tab to sum to 1:\n", "pclass_xt_pct = pclass_xt.div(pclass_xt.sum(1).astype(float), axis=0)\n", "\n", "pclass_xt_pct.plot(kind='bar', \n", " stacked=True, \n", " title='Survival Rate by Passenger Classes')\n", "plt.xlabel('Passenger Class')\n", "plt.ylabel('Survival Rate')\n", "\n", "# Plot survival rate by Sex\n", "females_df = df_train[df_train['Sex'] == 'female']\n", "females_xt = pd.crosstab(females_df['Pclass'], df_train['Survived'])\n", "females_xt_pct = females_xt.div(females_xt.sum(1).astype(float), axis=0)\n", "females_xt_pct.plot(kind='bar', \n", " stacked=True, \n", " title='Female Survival Rate by Passenger Class')\n", "plt.xlabel('Passenger Class')\n", "plt.ylabel('Survival Rate')\n", "\n", "# Plot survival rate by Pclass\n", "males_df = df_train[df_train['Sex'] == 'male']\n", "males_xt = pd.crosstab(males_df['Pclass'], df_train['Survived'])\n", "males_xt_pct = males_xt.div(males_xt.sum(1).astype(float), axis=0)\n", "males_xt_pct.plot(kind='bar', \n", " stacked=True, \n", " title='Male Survival Rate by Passenger Class')\n", "plt.xlabel('Passenger Class')\n", "plt.ylabel('Survival Rate')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scatter Plots, subplots" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Set up a grid of plots\n", "fig, axes = plt.subplots(2, 1, figsize=figsize_with_subplots)\n", "\n", "# Histogram of AgeFill segmented by Survived\n", "df1 = df_train[df_train['Survived'] == 0]['Age']\n", "df2 = df_train[df_train['Survived'] == 1]['Age']\n", "max_age = max(df_train['AgeFill'])\n", "\n", "axes[1].hist([df1, df2], \n", " bins=max_age / 10, \n", " range=(1, max_age), \n", " stacked=True)\n", "axes[1].legend(('Died', 'Survived'), loc='best')\n", "axes[1].set_title('Survivors by Age Groups Histogram')\n", "axes[1].set_xlabel('Age')\n", "axes[1].set_ylabel('Count')\n", "\n", "# Scatter plot Survived and AgeFill\n", "axes[0].scatter(df_train['Survived'], df_train['AgeFill'])\n", "axes[0].set_title('Survivors by Age Plot')\n", "axes[0].set_xlabel('Survived')\n", "axes[0].set_ylabel('Age')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Kernel Density Estimation Plots" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Get the unique values of Pclass:\n", "passenger_classes = np.sort(df_train['Pclass'].unique())\n", "\n", "for pclass in passenger_classes:\n", " df_train.AgeFill[df_train.Pclass == pclass].plot(kind='kde')\n", "plt.title('Age Density Plot by Passenger Class')\n", "plt.xlabel('Age')\n", "plt.legend(('1st Class', '2nd Class', '3rd Class'), loc='best')" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.1" } }, "nbformat": 4, "nbformat_minor": 1 }