{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Kaggle Competition | Titanic: Machine Learning From a Disaster\n", "\n", "![Titanic](header.png)\n", "\n", "### Competition Description\n", "> The sinking of the RMS Titanic is one of the most infamous shipwrecks in history. On April 15, 1912, during her maiden voyage, the Titanic sank after colliding with an iceberg, killing 1502 out of 2224 passengers and crew. This sensational tragedy shocked the international community and led to better safety regulations for ships.\n", "\n", "> One of the reasons that the shipwreck led to such loss of life was that there were not enough lifeboats for the passengers and crew. Although there was some element of luck involved in surviving the sinking, some groups of people were more likely to survive than others, such as women, children, and the upper-class.\n", "\n", "> In this challenge, we ask you to complete the analysis of what sorts of people were likely to survive. In particular, we ask you to apply the tools of machine learning to predict which passengers survived the tragedy.\n", "\n", "> ** Goal **\n", "\n", ">It is your job to predict if a passenger survived the sinking of the Titanic or not. \n", "For each PassengerId in the test set, you must predict a 0 or 1 value for the Survived variable.\n", "\n", "> ** Metric**\n", "\n", ">Your score is the percentage of passengers you correctly predict. This is known simply as \"accuracy”.\n", "\n", "\n", " \n", "### Steps taken in this Notebook\n", "1. Data Wrangling\n", " * Loading the datasets with Pandas\n", " * Visualizing missing data with MissingNo\n", " * Checking correlation between survival and individual factors \n", "
\n", "2. Feature Engineering\n", " * Feature engineering of new columns\n", " * Passenger Title\n", " * Family Size\n", " * Travelling Alone? \n", "
\n", "3. Imputing Missing Data Values\n", " * Randomizing the two missing Embarked values\n", " * Imputing the missing fare value using the average fare paid by each Pclass\n", " * Testing various ML Regression algorithms to predict age\n", " * Linear Regression\n", " * Bayesian Ridge\n", " * Multilayer Perceptron (MLP)\n", " * Decision Tree\n", " * Bagging\n", " * Using Multilayer Perceptron (MLP) to predict the missing age values\n", "

\n", "4. Predict Survival\n", " * Test various ML Classifier algorithms to predict Survival\n", " * Logistic Regression\n", " * Support Vector \n", " * Decision Tree \n", " * Random Forest \n", " * Adaptive Boosting \n", " * Multilayer Perceptron (MLP) \n", " * K-Nearest Neighbours (KNN) \n", "\n", " * Using MLP to predict Survival\n", " * Formatting output for submission\n", "\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass \\\n", "0 1 0 3 \n", "1 2 1 1 \n", "2 3 1 3 \n", "\n", " Name Sex Age SibSp \\\n", "0 Braund, Mr. Owen Harris male 22.0 1 \n", "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", "2 Heikkinen, Miss. Laina female 26.0 0 \n", "\n", " Parch Ticket Fare Cabin Embarked \n", "0 0 A/5 21171 7.2500 NaN S \n", "1 0 PC 17599 71.2833 C85 C \n", "2 0 STON/O2. 3101282 7.9250 NaN S " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 891 entries, 0 to 890\n", "Data columns (total 12 columns):\n", "PassengerId 891 non-null int64\n", "Survived 891 non-null int64\n", "Pclass 891 non-null int64\n", "Name 891 non-null object\n", "Sex 891 non-null object\n", "Age 714 non-null float64\n", "SibSp 891 non-null int64\n", "Parch 891 non-null int64\n", "Ticket 891 non-null object\n", "Fare 891 non-null float64\n", "Cabin 204 non-null object\n", "Embarked 889 non-null object\n", "dtypes: float64(2), int64(5), object(5)\n", "memory usage: 83.6+ KB\n" ] }, { "data": { "text/plain": [ "None" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassAgeSibSpParchFare
count891.000000891.000000891.000000714.000000891.000000891.000000891.000000
mean446.0000000.3838382.30864229.6991180.5230080.38159432.204208
std257.3538420.4865920.83607114.5264971.1027430.80605749.693429
min1.0000000.0000001.0000000.4200000.0000000.0000000.000000
25%223.5000000.0000002.00000020.1250000.0000000.0000007.910400
50%446.0000000.0000003.00000028.0000000.0000000.00000014.454200
75%668.5000001.0000003.00000038.0000001.0000000.00000031.000000
max891.0000001.0000003.00000080.0000008.0000006.000000512.329200
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass Age SibSp \\\n", "count 891.000000 891.000000 891.000000 714.000000 891.000000 \n", "mean 446.000000 0.383838 2.308642 29.699118 0.523008 \n", "std 257.353842 0.486592 0.836071 14.526497 1.102743 \n", "min 1.000000 0.000000 1.000000 0.420000 0.000000 \n", "25% 223.500000 0.000000 2.000000 20.125000 0.000000 \n", "50% 446.000000 0.000000 3.000000 28.000000 0.000000 \n", "75% 668.500000 1.000000 3.000000 38.000000 1.000000 \n", "max 891.000000 1.000000 3.000000 80.000000 8.000000 \n", "\n", " Parch Fare \n", "count 891.000000 891.000000 \n", "mean 0.381594 32.204208 \n", "std 0.806057 49.693429 \n", "min 0.000000 0.000000 \n", "25% 0.000000 7.910400 \n", "50% 0.000000 14.454200 \n", "75% 0.000000 31.000000 \n", "max 6.000000 512.329200 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "display(train_dat.head(3))\n", "display(train_dat.info())\n", "display(train_dat.describe())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Testing Dataset" ] }, { "cell_type": "code", "execution_count": 652, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
08923Kelly, Mr. Jamesmale34.5003309117.8292NaNQ
18933Wilkes, Mrs. James (Ellen Needs)female47.0103632727.0000NaNS
28942Myles, Mr. Thomas Francismale62.0002402769.6875NaNQ
\n", "
" ], "text/plain": [ " PassengerId Pclass Name Sex Age SibSp \\\n", "0 892 3 Kelly, Mr. James male 34.5 0 \n", "1 893 3 Wilkes, Mrs. James (Ellen Needs) female 47.0 1 \n", "2 894 2 Myles, Mr. Thomas Francis male 62.0 0 \n", "\n", " Parch Ticket Fare Cabin Embarked \n", "0 0 330911 7.8292 NaN Q \n", "1 0 363272 7.0000 NaN S \n", "2 0 240276 9.6875 NaN Q " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 418 entries, 0 to 417\n", "Data columns (total 11 columns):\n", "PassengerId 418 non-null int64\n", "Pclass 418 non-null int64\n", "Name 418 non-null object\n", "Sex 418 non-null object\n", "Age 332 non-null float64\n", "SibSp 418 non-null int64\n", "Parch 418 non-null int64\n", "Ticket 418 non-null object\n", "Fare 417 non-null float64\n", "Cabin 91 non-null object\n", "Embarked 418 non-null object\n", "dtypes: float64(2), int64(4), object(5)\n", "memory usage: 36.0+ KB\n" ] }, { "data": { "text/plain": [ "None" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdPclassAgeSibSpParchFare
count418.000000418.000000332.000000418.000000418.000000417.000000
mean1100.5000002.26555030.2725900.4473680.39234435.627188
std120.8104580.84183814.1812090.8967600.98142955.907576
min892.0000001.0000000.1700000.0000000.0000000.000000
25%996.2500001.00000021.0000000.0000000.0000007.895800
50%1100.5000003.00000027.0000000.0000000.00000014.454200
75%1204.7500003.00000039.0000001.0000000.00000031.500000
max1309.0000003.00000076.0000008.0000009.000000512.329200
\n", "
" ], "text/plain": [ " PassengerId Pclass Age SibSp Parch Fare\n", "count 418.000000 418.000000 332.000000 418.000000 418.000000 417.000000\n", "mean 1100.500000 2.265550 30.272590 0.447368 0.392344 35.627188\n", "std 120.810458 0.841838 14.181209 0.896760 0.981429 55.907576\n", "min 892.000000 1.000000 0.170000 0.000000 0.000000 0.000000\n", "25% 996.250000 1.000000 21.000000 0.000000 0.000000 7.895800\n", "50% 1100.500000 3.000000 27.000000 0.000000 0.000000 14.454200\n", "75% 1204.750000 3.000000 39.000000 1.000000 0.000000 31.500000\n", "max 1309.000000 3.000000 76.000000 8.000000 9.000000 512.329200" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "display(test_dat.head(3))\n", "display(test_dat.info())\n", "display(test_dat.describe())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Let's examine the data briefly:\n", "The Name, Sex, Ticket, Cabin, and Embarked are listed as strings\n", "The remaining lists (PassengerId, Age, SibSp, Parch, and Fare) are reported as integers, but some of them represent categories of values. These nominal values must be converted to dummy variables when creating models\n", "\n", "Many of the columns have some missing values, and are difficult to conceptualize when reported in a table form (using info()). We will use the missingno package to make it easier to visualize where the missing values lie, and what proportions are the data are missing" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Visualizing missing data with missingno" ] }, { "cell_type": "code", "execution_count": 653, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABY8AAAKsCAYAAACkk0JgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3Xe4bWV5L+zfQ1MRFbAdjQW7YjT2\n2KJITKyReLBEY0liDdbkGGPBEmwx9nKwxV6wkqjfp1gQiXpEjXpE0ERQUPSzUhVEBJ7vjzEWTtdY\n7D03wl577H3f1zWvtdaYo7yLZw/WWr/5zuet7g4AAAAAACzabr0HAAAAAADAlkd4DAAAAADAhPAY\nAAAAAIAJ4TEAAAAAABPCYwAAAAAAJoTHAAAAAABMCI8BAAAAAJgQHgMAAAAAMCE8BgBgXVRVrfcY\nAADYNvjd84IRHm9F3ATzpn7zpXbzpn7zpn7zU1U7V9XNk6S7Ww3nSd3mS+3mTf3mTf3mp6ouUVV7\nrvc4uGBqsENV7ZAMv3uu95jmSHg8c1V18ar6k6oqf4DNj/rNl9rNm/rNm/rNV1VdLMk3k3ypqu68\nsF0NZ8C9N19qN2/qN2/qN19VdfEkX0ny4aq69XqPh01TVbskeUWSQzLU8MVVdbmq2n583r24JOHx\njFXVJZN8Kclrk9zbD6N5Ub/5Urt5U795U7/Zu3qSyyT5TpK3VtVde6SGWzb33nyp3byp37yp3+z9\nYZLrJTknyUur6jbrPB6WNAbH/5nk9kl+mKSSPDbJYUnuW1W7uBeXJzyeqaraMcmBSa6UZLck/5zk\nz/0wmgf1my+1mzf1mzf12yqckORHGWbx/HeSN1fVXcbn1G8L5d6bL7WbN/WbN/XbKhyV5LgkX89Q\nw5etzEBWvy3XWJt/SXJykvt294OT7JPkr5PsmuFefGhVXUobi+UIj+fr7kn+JMkrk9w6yc4Zbg4/\njOZB/eZL7eZN/eZN/Wasqrbv7l8mOTzJZ5I8I8n3k7ylqu7W3eeO+11qHYfJ2tx786V286Z+86Z+\nM1ZDj9xTk3wjyduSPD3JFZK8vKpuuxI61tDagi3IWJvrJzmuu789bvtVkg8leX2SqyXZL8ldEy8E\nLEN4PF8nZPif2Gu6+1tJ7pC1fxip8ZZJ/eZL7eZN/eZN/Wasu88ZP/1ukr/p7s8lOSDJ95K8sar2\n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\njPvcP8k7kvxzdz9j3HaJ7v7l+oyaFeo3X2o3b+o3b+q3damhH92RSb7b3Xcety0uVpKquoy3DK4/\n9958qd28qd+8qd98VdXO3X3GSnuDhY8fTrJdd99jYd/zWo6wZdiEe++gJM/p7met11i3ZtpWbAG6\n+8dVtW+Gt7P8IskzM7xiclz9pm/gR5KclOTSC8f5IbQFUL/5Urt5U795U7+tx1ivX1bVK5K8rKoe\n1N3vWAmOF0LkSTsLNj/33nyp3byp37yp33x19xnjx3PHTdtlWMT3jAzrMCQ5b2G9R1fVMd39wc0+\nUNa0CffeTzP2H+fCJzzeQnT3iUkOrmGFyGsn+fn4h9Y5VbV9kqsk+XGS/0qms3lYX+o3X2o3b+o3\nb+q3dejfLI73qQwrYd8jyTsW3hra435qt4Vw782X2s2b+s2b+m0dFmYWn5nkMlW1Q5JLJHlphvZc\nN1ivsbE299760/N4y3NGhqn4D62qm43brpKh+felM7yi4g+wLZf6zZfazZv6zZv6bQW6+xtJXp3k\n/lV1G/WaBffefKndvKnfvKnfjFWdty7DrzNMqNwlyYuT/EWSW3X3Mes1NjbKvbdO9DzeAlXVzZN8\nLMmvknwnQ5P9Kyb5s9asfYunfvOldvOmfvOmfluHqvqDJF9O8pYkj1qYlcwWyr03X2o3b+o3b+o3\nXws9j1+d5FZJvpHkfklu191fXd/RsTHuvfVh5vEWqLu/nOROSQ5N8sskn0yytxthHtRvvtRu3tRv\n3tRv6zDW6zVJXiY4ngf33nyp3byp37yp33wt9D4+McktkuwTwfFsuPfWh5nHW7Cxd8u5iWn3c6R+\n86V286Z+86Z+86W/3Ly59+ZL7eZN/eZN/earqm6SYQbrXt39zfUeD5vGvbd5CY8BAAAA2KZU1SW6\n+5frPQ7Y0gmPAQAAAACY0PMYAAAAAICJpcLjqrpKVb2qqj5fVWdUVVfVHkseu11VPbWqjq+qM6vq\na1W17+8yaAAAAACArVFV3a6qPl5VP6mq06rqK1X1N6v2uUZVvb+qTqmq06vqsKq6xRrn+vuq+nBV\n/XDMdJ+9KWNZdubxtZPcL8nJST6zKRdI8pwkz07y6iR3S3JEkvdV1d038TwAAAAAAFutqrpxkk8m\n2THJI5Lsm+RLSd5YVX877nPZJJ9N8vtJHpXkL8bDD6uqG6w65SOSXCHJv1+g8SzT87iqtuvuc8fP\n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\nRK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABY8AAAKsCAYAAACkk0JgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3XmYbVddJ/zvLzOjBFCQZgiRwQQD\nghEQUAHREGygGUShmdQokeZ9QMEBGYQAL8js0FFBbNMMMtsEFF6mBJAmICLQXMYQAkHhJZJAQsBA\nyK//2LtCWavuvefeDHXrnM/nec6zq/Zee+91n1/WSdW31lm7ujsAAAAAALDeflvdAQAAAAAA9j3C\nYwAAAAAABsJjAAAAAAAGwmMAAAAAAAbCYwAAAAAABsJjAAAAAAAGwmMAAAAAAAbC4xVQs63uB5cv\ndV5+arwa1BmWh/G8/NR4Najz8quq/eatOsM25z37sic8XmLrBssh3d1b2hkuN+q8/NR4NagzLA/j\nefmp8WpQ59VQVVdN8g9V9RPd3UIn2J68Z19+hMdLqqqukuR5VfXWJO+tqvtsdZ+47Knz8lPj1aDO\nsDyM5+WnxqtBnVdDVV09yXuT3D7Jo6rqKkIn2H68Z1++hMdLqKquluQDSW6X5JtJzkvyuqq6+5Z2\njMuUOi8/NV4N6rwaqurgqrpLVT2iqo6d686SMZ6XnxqvBnVeDXNw/NEk/5rkb5P8TJLvn4/JSmCb\n8J59+St/VFsuVXVgktcluXKSX09yZpLvS/J3ST7b3Q+Z25W/qG5f6rz81Hg1qPNqmH+gfWOS6yS5\ncZKDkrwiyRO7+8wt7BqXIeN5+anxalDn1TAHxx9O8vkk90ly/STvS/Ly7j5+K/sGLM579hXDX9OW\nz42SHJHkpd19Rndf3N3nJjkryRlVdauqOiLTwGL7Uuflp8arQZ2XXFVdOcm7k1yU5PgkRyd5RJIH\nJnnoFnaNy57xvPzUeDWo85Kb1zj+7Px6UHd/LVOI/K4kx1bVUVvZP2CPeM++AgiPl8/1khye6ZfU\nJJf8VfXoJL+S5D1JPpTkhVV15Jb0kMuCOi8/NV4N6rzE5o+8/kGSbyR5VHe/q7s/luQvk5yU5Jer\n6lAfjV0axvPyU+PVoM7L79gkb0ny8O7+UpJ09/lJnp1pBvLdtrBvwJ7xnn0FOGCrO8Bl7rQkH0/y\n2Pkvqv+a5DlJzkny5Pn7n830P8Zzk/yO6fvbkjovPzVeDeq83H4g09pr70vy6bWd85PcP5Rp9vF+\n3X3xFvWPy5bxvPzUeDWo8/L7uyRv6u5vJdPH2ef9H0zy5iSPq6o3dfdntqqDwMK8Z18BrHm8RKpq\nv+6+uKpunWlW0/Uy/bJ6wyT36O5PrGv7p0keluSHuvsrW9Jh9oo6Lz81Xg3qvBqq6jFJ3tDdn1v/\ng2pV3S3TL6g37+4zNjnPD7XbiPG8/NR4NagzVXVckhdlmpX8P6tq/+7+7lb3Cxh5z77i+JjkNlaz\nte/XZi519z93948luVmmB/R8NdMaTut9O8lXkpx/BXWXvaTOy0+NV4M6r6bufuHG4Hj21ST7Jzl0\nbUdVHTKvyRbB8b7NeF5+arwa1Hk1bKzzztokSXf/ZZL/neS3qupAwfH2sUid2d68Z28d4fE2NU/H\nf0mSO2x8g6x57cR53aZrJzmou7+57vi1My0q/qErrsfsDXVefmq8GtR5Nczh7y9W1dOq6qFVdbO1\nY5uEwWs/g100n3u1JH+S5Bnzfy/so4zn5afGq0GdV8Ou6rzevKTUWjD1uiRHJnn4FdNLLq1F68z2\n5T17a1m2YhuqqisleVuSO2T6j//47v7gTtr+VJK3Z/of4AmZBswDktwryU+un8bPvkWdl58arwZ1\nXg1z+PuWTOscXyvJNZK8Icmvd/fZm7S/daa1kO+YZEeSP8r0UI/bdbcfbPdRxvPyU+PVoM6rYU/q\nvOG8Q5O8P8nnuvuYy7eXXFp7W2e2D+/ZW8/M422mqvZP8vuZ1nJ5fpKrJnlpVR29k1M+kuQpSX4u\n0y+nL0lyyyR3NWj2Xeq8/NR4Najzaqiqq2T6iOu3kjw00zprv5Tk3klusZPTLkhyUKanQz8/yUOS\n3FZwvO8ynpefGq8GdV4Ne1HnS87r7nOTvCLJ7avqWmay7rv2ts5sH96z9w1mHm8zVXX1JG/KtE7i\nMUlukuSVSS5O8tDN/voyz4a6bqbB87Ekn+ruL19hnWaPqfPyU+PVoM7Lr6oOSPI/khyW5Je7+/R5\n/9UzzYx4aKY6fmNtXbb5+A9lejr0/5/kxplmQgiO92HG8/JT49Wgzqthb+q84fxbZPp/98Z1U9mH\nXNo6s+/znr1vEB5vQ1X1I0n+pbvPnX9pPTrTL64db5BLQ52XnxqvBnVeblV1gySPzfRk5z/PtGxi\n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\neezT1+27WlU9t6pOrarz5uN33sn516qqP6qqM6rqW1X1uar606r6/t3de9GZxzdJ8oAk5yZ5z4Ln\nrHlakqck+dMkxyY5Lclrquoee3gdAAAAAICVUVUPTHKrTQ5dK8mvJLkoydt2cX4lOTnJg5I8J1M+\n+5wkD0xy8nx8pw5YsJ/v7u7rzDc8LsnPLXJSVf1AkscleVZ3P3fefUpV3STJs5L8/YL3BwAAAABY\nGVV1jSQvSPKbSV6x4fDnu/uac7u7JbnvTi5z0yR3SPKI7n7RvO/Uqro4yZ8luVmST+2sDwvNPO7u\nixdpt4ljkhyU5GUb9r8syVFVdeO9vC4AAAAAwDJ7dpId3f03Gw90dy94jYPm7Xkb9n9t3u4yH150\n5vHeukWSC5OcvmH/jnl7ZJLPXc59AAAAAADYNqrqTkkems2XrNgTO5K8O8mTqur0JJ/MlMk+Ocmb\nu/sTuzp50TWP99Y1k3xtkyT8nHXHAQAAAABIUlUHJvmLJM/t7p0uKbGIOZe9R6alKf4xyflJ3p/k\njCT32935l/fM40qy2RTqXS7EvMGiU7AvU4985CO34rZb6sQTT9zqLlzh1Hk1qPPyU2NYHsbzali1\nOqvxaljFOgPLY9Xet7f4PXuRXPR3k1wpyTMuo3u+OMntkxyf5BNJjkjy1CSvrap77mrJ4ss7PD4n\nyaFVVRtmHx+67jgAAAAAwMqrqhsmeUKS45IcXFUHrzt88PwQvfO7+7sLXu/nkzwwyd26+x3z7ndX\n1RlJ3prknknesLPzL+/weEeSg5P8UP7jusdHztuPX873BwAAAC4HqzZTMdny2YrAajg8ySFJXrbJ\nscfNr1sn+fCC1ztq3v7jhv0fmLdHZBfh8eW95vFbknw7yX/dsP/BST7W3R6WBwAAAAAw+XCSu2zy\nSqZA+S75j5N0d+fL8/a2G/bfbt7+y65OXnjmcVXdf/7yx+btsVV1dpKzu/tdc5uLkpzU3b+aJN39\nlap6QZLHV9X5ST6U5BeT3DXJvRe9NwAAAADAsuvuryU5deP+qkqSz3f3qev2HZvkKvne7OKfrqpr\nJ7mgu98873t9prWT/2dVPS3JJ5P8cJI/SHJWkr/dVX/2ZNmK12z4fu2zGu9Kcuf56/3n13pPSPKN\nJI9Oct1MT/Z7QHe/cQ/uDQAAAADA9/xZkhut+/4p8/bzSQ5Lku4+r6puPx/7nSQ/mORLSd6Y5Cnd\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import missingno as msno\n", "display(msno.bar(train_dat))\n", "display(msno.bar(test_dat))\n", "train_dat.drop(['Cabin', 'Ticket'], axis=1, inplace=True)\n", "test_dat.drop(['Cabin', 'Ticket'], axis=1, inplace=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the Cabin column, we only have approximately 20% of values present in both datasets. There are too many missing values to attempt to impute the values. As such, we will drop it from the analysis\n", "\n", "The Age column is missing approximately 20% of the values, but there are enough values present to impute the missing values. We will create an entire machine learning regression model for the missing age values later on\n", "\n", "The training dataset contains two missing values for the Embarked data. Since there are only three possible options, we will randomly select values to fill the missing values\n", "\n", "The test dataset contains one missing value for the Fare, which we will impute later based on the Pclass\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Checking correlation between survival and categorical factors" ] }, { "cell_type": "code", "execution_count": 654, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassAgeSibSpParchFare
PassengerId1.000000-0.005007-0.0351440.036847-0.057527-0.0016520.012658
Survived-0.0050071.000000-0.338481-0.077221-0.0353220.0816290.257307
Pclass-0.035144-0.3384811.000000-0.3692260.0830810.018443-0.549500
Age0.036847-0.077221-0.3692261.000000-0.308247-0.1891190.096067
SibSp-0.057527-0.0353220.083081-0.3082471.0000000.4148380.159651
Parch-0.0016520.0816290.018443-0.1891190.4148381.0000000.216225
Fare0.0126580.257307-0.5495000.0960670.1596510.2162251.000000
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass Age SibSp Parch \\\n", "PassengerId 1.000000 -0.005007 -0.035144 0.036847 -0.057527 -0.001652 \n", "Survived -0.005007 1.000000 -0.338481 -0.077221 -0.035322 0.081629 \n", "Pclass -0.035144 -0.338481 1.000000 -0.369226 0.083081 0.018443 \n", "Age 0.036847 -0.077221 -0.369226 1.000000 -0.308247 -0.189119 \n", "SibSp -0.057527 -0.035322 0.083081 -0.308247 1.000000 0.414838 \n", "Parch -0.001652 0.081629 0.018443 -0.189119 0.414838 1.000000 \n", "Fare 0.012658 0.257307 -0.549500 0.096067 0.159651 0.216225 \n", "\n", " Fare \n", "PassengerId 0.012658 \n", "Survived 0.257307 \n", "Pclass -0.549500 \n", "Age 0.096067 \n", "SibSp 0.159651 \n", "Parch 0.216225 \n", "Fare 1.000000 " ] }, "execution_count": 654, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_dat.corr()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Pclass" ] }, { "cell_type": "code", "execution_count": 655, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Pclass
10.629630
20.472826
30.242363
\n", "
" ], "text/plain": [ " Survived\n", "Pclass \n", "1 0.629630\n", "2 0.472826\n", "3 0.242363" ] }, "execution_count": 655, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_dat[['Pclass', 'Survived']].groupby('Pclass').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Sex" ] }, { "cell_type": "code", "execution_count": 656, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Sex
female0.742038
male0.188908
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Parch
00.343658
10.550847
20.500000
30.600000
40.000000
50.200000
60.000000
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Parch
00.343658
10.550847
20.500000
30.600000
40.000000
50.200000
60.000000
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Sexfemalemale
Title
Capt.01
Col.02
Countess.10
Don.01
Dr.16
Jonkheer.01
Major.02
Master.040
Miss.1820
Mlle.20
Mme.10
Mr.0517
Mrs.1250
Ms.10
Rev.06
Sir.01
\n", "
" ], "text/plain": [ "Sex female male\n", "Title \n", "Capt. 0 1\n", "Col. 0 2\n", "Countess. 1 0\n", "Don. 0 1\n", "Dr. 1 6\n", "Jonkheer. 0 1\n", "Lady. 1 0\n", "Major. 0 2\n", "Master. 0 40\n", "Miss. 182 0\n", "Mlle. 2 0\n", "Mme. 1 0\n", "Mr. 0 517\n", "Mrs. 125 0\n", "Ms. 1 0\n", "Rev. 0 6\n", "Sir. 0 1" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Sexfemalemale
Title
Col.02
Dona.10
Dr.01
Master.021
Miss.780
Mr.0240
Mrs.720
Ms.10
Rev.02
\n", "
" ], "text/plain": [ "Sex female male\n", "Title \n", "Col. 0 2\n", "Dona. 1 0\n", "Dr. 0 1\n", "Master. 0 21\n", "Miss. 78 0\n", "Mr. 0 240\n", "Mrs. 72 0\n", "Ms. 1 0\n", "Rev. 0 2" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import re as re\n", "def title_extract_function(string):\n", " title = re.search('([A-Za-z]+)\\.', string)[0]\n", " return title\n", "\n", "for df in all_dat:\n", " df['Title'] = df['Name'].apply(title_extract_function)\n", "\n", "display(pd.crosstab(all_dat[0]['Title'], all_dat[0]['Sex']))\n", "display(pd.crosstab(all_dat[1]['Title'], all_dat[1]['Sex']))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Some titles are held by a select few, and will be grouped into an \"Other\" category" ] }, { "cell_type": "code", "execution_count": 663, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Title
Master.0.575000
Miss.0.702703
Mr.0.156673
Mrs.0.793651
Other0.347826
\n", "
" ], "text/plain": [ " Survived\n", "Title \n", "Master. 0.575000\n", "Miss. 0.702703\n", "Mr. 0.156673\n", "Mrs. 0.793651\n", "Other 0.347826" ] }, "execution_count": 663, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for df in all_dat:\n", " df['Title'] = df['Title'].replace(['Mlle.', \"Ms.\"], 'Miss.')\n", " df['Title'] = df['Title'].replace(['Mme.'], 'Mrs.')\n", " df['Title'] = df['Title'].replace(['Capt.','Col.','Countess.','Don.', 'Dona.','Dr.','Jonkheer.','Lady.', 'Major.', 'Rev.',\n", " 'Sir.'],'Other')\n", "\n", "train_dat[['Title', 'Survived']].groupby('Title').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Family Size" ] }, { "cell_type": "code", "execution_count": 664, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Family Size
10.303538
20.552795
30.578431
40.724138
50.200000
60.136364
70.333333
80.000000
110.000000
\n", "
" ], "text/plain": [ " Survived\n", "Family Size \n", "1 0.303538\n", "2 0.552795\n", "3 0.578431\n", "4 0.724138\n", "5 0.200000\n", "6 0.136364\n", "7 0.333333\n", "8 0.000000\n", "11 0.000000" ] }, "execution_count": 664, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for df in all_dat:\n", " df['Family Size'] = df['Parch'] + df['SibSp'] +1\n", "\n", "train_dat[['Family Size', 'Survived']].groupby('Family Size').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Travelling Alone?" ] }, { "cell_type": "code", "execution_count": 665, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Alone
00.505650
10.303538
\n", "
" ], "text/plain": [ " Survived\n", "Alone \n", "0 0.505650\n", "1 0.303538" ] }, "execution_count": 665, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for df in all_dat:\n", " df['Alone'] = 0\n", " df.loc[df['Family Size'] == 1, 'Alone'] = 1\n", "train_dat[['Alone', 'Survived']].groupby('Alone').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Imputing Missing Data Values" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Embarked" ] }, { "cell_type": "code", "execution_count": 666, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Embarked
C0.556213
Q0.389610
S0.337984
\n", "
" ], "text/plain": [ " Survived\n", "Embarked \n", "C 0.556213\n", "Q 0.389610\n", "S 0.337984" ] }, "execution_count": 666, "metadata": {}, "output_type": "execute_result" } ], "source": [ "random.seed(1234)\n", "while train_dat['Embarked'].isna().sum() > 0:\n", " train_dat['Embarked'].fillna(random.randint(1,3), limit=1, inplace=True)\n", "train_dat['Embarked'].replace({1:\"S\", 2:\"C\", 3:\"Q\"}, inplace=True)\n", "\n", "train_dat[['Embarked', 'Survived']].groupby('Embarked').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Fare Class" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to fill in the missing Fare value, we use the most correlated factor(s)" ] }, { "cell_type": "code", "execution_count": 667, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Fare
Pclass-0.549500
Alone-0.271832
Survived0.257307
Family Size0.217138
Parch0.216225
SibSp0.159651
Age0.096067
PassengerId0.012658
\n", "
" ], "text/plain": [ " Fare\n", "Pclass -0.549500\n", "Alone -0.271832\n", "Survived 0.257307\n", "Family Size 0.217138\n", "Parch 0.216225\n", "SibSp 0.159651\n", "Age 0.096067\n", "PassengerId 0.012658" ] }, "execution_count": 667, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fare_corr = pd.DataFrame(train_dat.corr()['Fare'].drop(['Fare'],axis=0))\n", "Fare_corr.reindex(Fare_corr.Fare.abs().sort_values(inplace=False, ascending=False).index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The most significant factor that is correlated with Fare is the **Pclass**. We will impute the missing fare value based average value of the passenger's class" ] }, { "cell_type": "code", "execution_count": 668, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nL5q+dwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.barplot(x=train_dat['Pclass'], y=train_dat['Fare'])\n", "\n", "average_fare_by_class = test_dat.groupby(by=['Pclass'], as_index=False)['Fare'].mean()\n", "\n", "if (test_dat.loc[test_dat['Fare'].isnull(),'Pclass'] == 3).values[0] == True:\n", " test_dat.loc[test_dat['Fare'].isnull(),'Fare'] = average_fare_by_class[average_fare_by_class['Pclass'] == 1]['Fare'][0]\n", "elif (test_dat.loc[test_dat['Fare'].isnull(),'Pclass'] == 2).values[0] == True:\n", " test_dat.loc[test_dat['Fare'].isnull(),'Fare'] = average_fare_by_class[average_fare_by_class['Pclass'] == 2]['Fare'][0]\n", "else:\n", " test_dat.loc[test_dat['Fare'].isnull(),'Fare'] = average_fare_by_class[average_fare_by_class['Pclass'] == 3]['Fare'][0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have filled in the missing fare value, we can cut the range of Fares into distinct categorical groups. An easy way to visualize the distribution is through a violin plot." ] }, { "cell_type": "code", "execution_count": 669, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 669, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.violinplot(train_dat['Fare'])\n", "max_fare = train_dat['Fare'].max()\n", "plt.plot([60, 60], [-1, 1], linewidth=2)\n", "plt.plot([110, 110], [-1, 1], linewidth=2)\n", "plt.plot([180, 180], [-1, 1], linewidth=2)\n", "plt.plot([max_fare, max_fare], [-1, 1], linewidth=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can use the plot to divide the Fares into four groups:\n", "1. Fare Type 1 = \\$0 - \\$60 \n", "2. Fare Type 2 = \\$61 - \\$110 \n", "3. Fare Type 3 = \\$111 - \\$180 \n", "4. Fare Type 4 = \\\$181+\n", "\n", "Next, we need to test if the correlation between **Fare Type** and **Survival**" ] }, { "cell_type": "code", "execution_count": 670, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Survived
Fare Type
10.343501
20.616438
30.793103
40.700000
\n", "
" ], "text/plain": [ " Survived\n", "Fare Type \n", "1 0.343501\n", "2 0.616438\n", "3 0.793103\n", "4 0.700000" ] }, "execution_count": 670, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for df in all_dat:\n", " df['Fare Type'] = pd.cut(df['Fare'], [0, 60, 110,180, 1000], labels=['1', '2', '3', \"4\"])\n", "\n", "train_dat[['Fare Type', 'Survived']].groupby('Fare Type').mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Predicting the missing age values " ] }, { "cell_type": "code", "execution_count": 671, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassNameSexAgeSibSpParchFareEmbarkedTitleFamily SizeAloneFare Type
0103Braund, Mr. Owen Harrismale22.0107.2500SMr.201
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.01071.2833CMrs.202
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass \\\n", "0 1 0 3 \n", "1 2 1 1 \n", "\n", " Name Sex Age SibSp \\\n", "0 Braund, Mr. Owen Harris male 22.0 1 \n", "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", "\n", " Parch Fare Embarked Title Family Size Alone Fare Type \n", "0 0 7.2500 S Mr. 2 0 1 \n", "1 0 71.2833 C Mrs. 2 0 2 " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdPclassNameSexAgeSibSpParchFareEmbarkedTitleFamily SizeAloneFare Type
08923Kelly, Mr. Jamesmale34.5007.8292QMr.111
18933Wilkes, Mrs. James (Ellen Needs)female47.0107.0000SMrs.201
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Linear RegBayesian RidgeMLPDecision TreeBagging Reg
RMSE1.190776e+24126.890969128.980617163.670386139.088605
MAE1.289010e+108.8891488.6817069.5969508.988091
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Accuracy0.8325580.8241860.799070.8176740.8037210.8260470.791628
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvived
08920
18930
28940
38950
48961
\n", "
" ], "text/plain": [ " PassengerId Survived\n", "0 892 0\n", "1 893 0\n", "2 894 0\n", "3 895 0\n", "4 896 1" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerId
Survived
0267
1151
\n", "
" ], "text/plain": [ " PassengerId\n", "Survived \n", "0 267\n", "1 151" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "final_submission = complete_data[1].copy()\n", "final_submission['Survived'] = final_mlp\n", "submission_df = pd.DataFrame()\n", "submission_df[['PassengerId', 'Survived']] = final_submission[['PassengerId', 'Survived']]\n", "display(submission_df.head())\n", "display(submission_df.groupby('Survived').count())\n", "\n", "submission_df.to_csv(\"Titanic Submission.csv\", index=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## **Final Score**: 0.78947 (Top 31%)" ] } ], "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.3" } }, "nbformat": 4, "nbformat_minor": 2 }