[e62811]: / Inflight_medical_assistance.ipynb

Download this file

2473 lines (2472 with data), 94.8 kB

{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "0ccfd357",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.metrics import roc_auc_score\n",
    "from datetime import datetime"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "bae4693f",
   "metadata": {},
   "outputs": [],
   "source": [
    "vital_signs = pd.read_csv(\"C:/Users/Nirmal/Downloads/inflight_medical_assistance_data_corrected.csv\")\n",
    "passenger_info = pd.read_csv(\"C:/Users/Nirmal/Documents/Python Scripts/passenger_profiles_60_passengers_cleaned.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "75f29c80",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Passenger_ID</th>\n",
       "      <th>SeatNumber</th>\n",
       "      <th>Timestamp</th>\n",
       "      <th>Heart_Rate_BPM</th>\n",
       "      <th>Blood_Oxygen_Level_%</th>\n",
       "      <th>Blood_Pressure_Systolic</th>\n",
       "      <th>Blood_Pressure_Diastolic</th>\n",
       "      <th>Blood_Glucose</th>\n",
       "      <th>Body_Temperature</th>\n",
       "      <th>Flight_Altitude_ft</th>\n",
       "      <th>Cabin_Pressure_psi</th>\n",
       "      <th>Movement_Activity</th>\n",
       "      <th>Medical_Event_Flag</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:10</td>\n",
       "      <td>73</td>\n",
       "      <td>98.1</td>\n",
       "      <td>111</td>\n",
       "      <td>66</td>\n",
       "      <td>89.7</td>\n",
       "      <td>37.0</td>\n",
       "      <td>30000</td>\n",
       "      <td>10.82</td>\n",
       "      <td>Seated</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:30</td>\n",
       "      <td>82</td>\n",
       "      <td>96.2</td>\n",
       "      <td>114</td>\n",
       "      <td>74</td>\n",
       "      <td>88.8</td>\n",
       "      <td>36.2</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.04</td>\n",
       "      <td>Standing</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:50</td>\n",
       "      <td>66</td>\n",
       "      <td>95.5</td>\n",
       "      <td>106</td>\n",
       "      <td>60</td>\n",
       "      <td>101.1</td>\n",
       "      <td>36.8</td>\n",
       "      <td>30000</td>\n",
       "      <td>10.62</td>\n",
       "      <td>Seated</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 13:10</td>\n",
       "      <td>83</td>\n",
       "      <td>96.9</td>\n",
       "      <td>105</td>\n",
       "      <td>61</td>\n",
       "      <td>90.4</td>\n",
       "      <td>36.1</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.12</td>\n",
       "      <td>Walking</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 13:30</td>\n",
       "      <td>68</td>\n",
       "      <td>98.8</td>\n",
       "      <td>101</td>\n",
       "      <td>77</td>\n",
       "      <td>118.3</td>\n",
       "      <td>36.1</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.41</td>\n",
       "      <td>Walking</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>535</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 13:30</td>\n",
       "      <td>85</td>\n",
       "      <td>98.1</td>\n",
       "      <td>112</td>\n",
       "      <td>69</td>\n",
       "      <td>135.1</td>\n",
       "      <td>36.5</td>\n",
       "      <td>30000</td>\n",
       "      <td>10.77</td>\n",
       "      <td>Walking</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>536</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 13:50</td>\n",
       "      <td>86</td>\n",
       "      <td>96.2</td>\n",
       "      <td>107</td>\n",
       "      <td>69</td>\n",
       "      <td>76.9</td>\n",
       "      <td>36.9</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.04</td>\n",
       "      <td>Standing</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>537</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:10</td>\n",
       "      <td>61</td>\n",
       "      <td>97.1</td>\n",
       "      <td>119</td>\n",
       "      <td>60</td>\n",
       "      <td>87.1</td>\n",
       "      <td>36.3</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.14</td>\n",
       "      <td>Seated</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>538</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:30</td>\n",
       "      <td>61</td>\n",
       "      <td>96.4</td>\n",
       "      <td>98</td>\n",
       "      <td>60</td>\n",
       "      <td>89.4</td>\n",
       "      <td>36.7</td>\n",
       "      <td>30000</td>\n",
       "      <td>10.96</td>\n",
       "      <td>Seated</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>539</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:50</td>\n",
       "      <td>94</td>\n",
       "      <td>98.9</td>\n",
       "      <td>94</td>\n",
       "      <td>69</td>\n",
       "      <td>123.9</td>\n",
       "      <td>36.4</td>\n",
       "      <td>30000</td>\n",
       "      <td>11.33</td>\n",
       "      <td>Seated</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>540 rows × 13 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "     Passenger_ID SeatNumber         Timestamp  Heart_Rate_BPM  \\\n",
       "0               1        B23  29-09-2024 12:10              73   \n",
       "1               1        B23  29-09-2024 12:30              82   \n",
       "2               1        B23  29-09-2024 12:50              66   \n",
       "3               1        B23  29-09-2024 13:10              83   \n",
       "4               1        B23  29-09-2024 13:30              68   \n",
       "..            ...        ...               ...             ...   \n",
       "535            60        A13  29-09-2024 13:30              85   \n",
       "536            60        A13  29-09-2024 13:50              86   \n",
       "537            60        A13  29-09-2024 14:10              61   \n",
       "538            60        A13  29-09-2024 14:30              61   \n",
       "539            60        A13  29-09-2024 14:50              94   \n",
       "\n",
       "     Blood_Oxygen_Level_%  Blood_Pressure_Systolic  Blood_Pressure_Diastolic  \\\n",
       "0                    98.1                      111                        66   \n",
       "1                    96.2                      114                        74   \n",
       "2                    95.5                      106                        60   \n",
       "3                    96.9                      105                        61   \n",
       "4                    98.8                      101                        77   \n",
       "..                    ...                      ...                       ...   \n",
       "535                  98.1                      112                        69   \n",
       "536                  96.2                      107                        69   \n",
       "537                  97.1                      119                        60   \n",
       "538                  96.4                       98                        60   \n",
       "539                  98.9                       94                        69   \n",
       "\n",
       "     Blood_Glucose  Body_Temperature  Flight_Altitude_ft  Cabin_Pressure_psi  \\\n",
       "0             89.7              37.0               30000               10.82   \n",
       "1             88.8              36.2               30000               11.04   \n",
       "2            101.1              36.8               30000               10.62   \n",
       "3             90.4              36.1               30000               11.12   \n",
       "4            118.3              36.1               30000               11.41   \n",
       "..             ...               ...                 ...                 ...   \n",
       "535          135.1              36.5               30000               10.77   \n",
       "536           76.9              36.9               30000               11.04   \n",
       "537           87.1              36.3               30000               11.14   \n",
       "538           89.4              36.7               30000               10.96   \n",
       "539          123.9              36.4               30000               11.33   \n",
       "\n",
       "    Movement_Activity  Medical_Event_Flag  \n",
       "0              Seated                   0  \n",
       "1            Standing                   0  \n",
       "2              Seated                   0  \n",
       "3             Walking                   0  \n",
       "4             Walking                   0  \n",
       "..                ...                 ...  \n",
       "535           Walking                   0  \n",
       "536          Standing                   0  \n",
       "537            Seated                   0  \n",
       "538            Seated                   0  \n",
       "539            Seated                   0  \n",
       "\n",
       "[540 rows x 13 columns]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vital_signs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "6a97b0f6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Passenger_ID</th>\n",
       "      <th>Age</th>\n",
       "      <th>Gender</th>\n",
       "      <th>Allergies</th>\n",
       "      <th>Hypertension</th>\n",
       "      <th>Diabetes</th>\n",
       "      <th>Stroke History</th>\n",
       "      <th>Asthma</th>\n",
       "      <th>Anxiety</th>\n",
       "      <th>Obesity</th>\n",
       "      <th>High Cholesterol</th>\n",
       "      <th>Sleep Apnea</th>\n",
       "      <th>Smoking</th>\n",
       "      <th>Diet</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>66</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>24</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>55</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>32</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>49</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>37</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>7</td>\n",
       "      <td>20</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>8</td>\n",
       "      <td>70</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>9</td>\n",
       "      <td>44</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>10</td>\n",
       "      <td>55</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>11</td>\n",
       "      <td>58</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>12</td>\n",
       "      <td>36</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>13</td>\n",
       "      <td>48</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>14</td>\n",
       "      <td>51</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>15</td>\n",
       "      <td>57</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>16</td>\n",
       "      <td>36</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>17</td>\n",
       "      <td>32</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>18</td>\n",
       "      <td>21</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>19</td>\n",
       "      <td>55</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>20</td>\n",
       "      <td>63</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>21</td>\n",
       "      <td>52</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>22</td>\n",
       "      <td>63</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>23</td>\n",
       "      <td>24</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>24</td>\n",
       "      <td>30</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>25</td>\n",
       "      <td>75</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>26</td>\n",
       "      <td>33</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>27</td>\n",
       "      <td>78</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>28</td>\n",
       "      <td>45</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>29</td>\n",
       "      <td>33</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>30</td>\n",
       "      <td>53</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>31</td>\n",
       "      <td>49</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>31</th>\n",
       "      <td>32</td>\n",
       "      <td>66</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
       "      <td>33</td>\n",
       "      <td>44</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>34</td>\n",
       "      <td>65</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>34</th>\n",
       "      <td>35</td>\n",
       "      <td>51</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>35</th>\n",
       "      <td>36</td>\n",
       "      <td>41</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>37</td>\n",
       "      <td>29</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>38</td>\n",
       "      <td>33</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>38</th>\n",
       "      <td>39</td>\n",
       "      <td>65</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>39</th>\n",
       "      <td>40</td>\n",
       "      <td>45</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>40</th>\n",
       "      <td>41</td>\n",
       "      <td>73</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>41</th>\n",
       "      <td>42</td>\n",
       "      <td>55</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>42</th>\n",
       "      <td>43</td>\n",
       "      <td>49</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>43</th>\n",
       "      <td>44</td>\n",
       "      <td>63</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>44</th>\n",
       "      <td>45</td>\n",
       "      <td>62</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>45</th>\n",
       "      <td>46</td>\n",
       "      <td>21</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>46</th>\n",
       "      <td>47</td>\n",
       "      <td>69</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>47</th>\n",
       "      <td>48</td>\n",
       "      <td>45</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>48</th>\n",
       "      <td>49</td>\n",
       "      <td>35</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>49</th>\n",
       "      <td>50</td>\n",
       "      <td>79</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50</th>\n",
       "      <td>51</td>\n",
       "      <td>36</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>51</th>\n",
       "      <td>52</td>\n",
       "      <td>69</td>\n",
       "      <td>Male</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>52</th>\n",
       "      <td>53</td>\n",
       "      <td>25</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>53</th>\n",
       "      <td>54</td>\n",
       "      <td>54</td>\n",
       "      <td>Male</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>54</th>\n",
       "      <td>55</td>\n",
       "      <td>43</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>55</th>\n",
       "      <td>56</td>\n",
       "      <td>46</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>56</th>\n",
       "      <td>57</td>\n",
       "      <td>26</td>\n",
       "      <td>Female</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>57</th>\n",
       "      <td>58</td>\n",
       "      <td>35</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>Unhealthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>58</th>\n",
       "      <td>59</td>\n",
       "      <td>35</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>59</th>\n",
       "      <td>60</td>\n",
       "      <td>61</td>\n",
       "      <td>Female</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Passenger_ID  Age  Gender  Allergies  Hypertension  Diabetes  \\\n",
       "0              1   66  Female          1             0         1   \n",
       "1              2   24  Female          0             0         0   \n",
       "2              3   55    Male          0             0         0   \n",
       "3              4   32  Female          1             0         0   \n",
       "4              5   49  Female          1             1         0   \n",
       "5              6   37    Male          0             0         0   \n",
       "6              7   20    Male          0             0         0   \n",
       "7              8   70    Male          0             0         0   \n",
       "8              9   44  Female          0             1         0   \n",
       "9             10   55  Female          0             0         1   \n",
       "10            11   58  Female          0             1         0   \n",
       "11            12   36    Male          0             0         0   \n",
       "12            13   48    Male          1             0         0   \n",
       "13            14   51    Male          0             0         0   \n",
       "14            15   57  Female          0             0         0   \n",
       "15            16   36    Male          0             1         0   \n",
       "16            17   32    Male          1             0         0   \n",
       "17            18   21    Male          1             1         0   \n",
       "18            19   55  Female          0             0         0   \n",
       "19            20   63  Female          1             1         1   \n",
       "20            21   52  Female          1             0         0   \n",
       "21            22   63    Male          1             0         1   \n",
       "22            23   24  Female          0             1         0   \n",
       "23            24   30    Male          1             0         1   \n",
       "24            25   75    Male          1             1         0   \n",
       "25            26   33    Male          1             0         0   \n",
       "26            27   78  Female          1             0         0   \n",
       "27            28   45    Male          1             1         0   \n",
       "28            29   33  Female          1             0         0   \n",
       "29            30   53  Female          0             0         0   \n",
       "30            31   49    Male          0             0         0   \n",
       "31            32   66  Female          0             0         0   \n",
       "32            33   44    Male          1             1         0   \n",
       "33            34   65  Female          0             0         0   \n",
       "34            35   51    Male          1             1         0   \n",
       "35            36   41    Male          1             0         0   \n",
       "36            37   29  Female          0             0         0   \n",
       "37            38   33  Female          0             0         0   \n",
       "38            39   65  Female          0             0         0   \n",
       "39            40   45  Female          1             0         1   \n",
       "40            41   73    Male          1             0         0   \n",
       "41            42   55    Male          1             1         1   \n",
       "42            43   49    Male          1             0         0   \n",
       "43            44   63  Female          1             0         0   \n",
       "44            45   62  Female          0             0         0   \n",
       "45            46   21    Male          0             1         0   \n",
       "46            47   69    Male          0             1         0   \n",
       "47            48   45    Male          0             0         0   \n",
       "48            49   35    Male          0             0         0   \n",
       "49            50   79    Male          1             0         0   \n",
       "50            51   36  Female          1             0         0   \n",
       "51            52   69    Male          1             1         0   \n",
       "52            53   25  Female          1             0         0   \n",
       "53            54   54    Male          0             0         0   \n",
       "54            55   43  Female          1             0         1   \n",
       "55            56   46  Female          1             0         0   \n",
       "56            57   26  Female          1             0         1   \n",
       "57            58   35  Female          0             1         0   \n",
       "58            59   35  Female          0             1         0   \n",
       "59            60   61  Female          0             0         0   \n",
       "\n",
       "    Stroke History  Asthma  Anxiety  Obesity  High Cholesterol  Sleep Apnea  \\\n",
       "0                0       1        0        1                 1            0   \n",
       "1                0       0        0        0                 0            0   \n",
       "2                0       0        0        1                 1            0   \n",
       "3                0       0        0        0                 0            0   \n",
       "4                0       1        0        1                 0            0   \n",
       "5                0       0        1        0                 0            0   \n",
       "6                0       0        0        0                 1            0   \n",
       "7                0       1        1        0                 1            0   \n",
       "8                0       1        0        0                 0            0   \n",
       "9                0       0        0        0                 0            0   \n",
       "10               0       0        0        0                 0            0   \n",
       "11               0       0        0        0                 1            0   \n",
       "12               0       0        0        0                 1            0   \n",
       "13               1       1        0        0                 1            0   \n",
       "14               0       0        1        0                 0            0   \n",
       "15               0       0        0        0                 0            0   \n",
       "16               0       0        0        0                 0            0   \n",
       "17               0       0        0        0                 0            0   \n",
       "18               0       0        0        1                 0            0   \n",
       "19               0       0        0        0                 0            0   \n",
       "20               0       0        0        0                 0            0   \n",
       "21               0       0        1        0                 1            0   \n",
       "22               0       1        0        0                 0            0   \n",
       "23               0       0        1        0                 0            0   \n",
       "24               0       0        0        0                 1            0   \n",
       "25               0       1        1        0                 0            0   \n",
       "26               1       0        0        0                 0            0   \n",
       "27               0       0        0        0                 0            0   \n",
       "28               0       0        1        1                 1            0   \n",
       "29               0       0        0        0                 0            0   \n",
       "30               0       0        1        0                 0            1   \n",
       "31               0       0        0        1                 0            1   \n",
       "32               0       0        0        1                 1            0   \n",
       "33               0       0        0        0                 0            0   \n",
       "34               0       0        1        1                 1            0   \n",
       "35               0       0        0        0                 1            0   \n",
       "36               0       0        0        0                 1            0   \n",
       "37               0       1        0        1                 0            0   \n",
       "38               0       1        0        0                 0            0   \n",
       "39               0       0        0        0                 0            0   \n",
       "40               0       0        0        0                 0            0   \n",
       "41               0       0        0        0                 0            0   \n",
       "42               0       0        1        0                 0            0   \n",
       "43               0       1        0        0                 0            0   \n",
       "44               0       0        0        0                 0            0   \n",
       "45               0       0        1        0                 0            0   \n",
       "46               0       0        0        0                 0            0   \n",
       "47               0       1        0        1                 1            0   \n",
       "48               0       0        0        0                 0            0   \n",
       "49               0       0        1        0                 1            0   \n",
       "50               0       0        0        0                 0            0   \n",
       "51               0       0        0        0                 0            0   \n",
       "52               0       1        0        1                 0            0   \n",
       "53               1       0        0        0                 1            0   \n",
       "54               0       0        0        0                 0            1   \n",
       "55               0       0        0        0                 1            0   \n",
       "56               0       0        0        0                 0            0   \n",
       "57               0       0        0        0                 0            0   \n",
       "58               0       0        0        0                 0            0   \n",
       "59               0       0        0        1                 0            0   \n",
       "\n",
       "    Smoking       Diet  \n",
       "0         0    Average  \n",
       "1         1    Healthy  \n",
       "2         0    Average  \n",
       "3         1  Unhealthy  \n",
       "4         0  Unhealthy  \n",
       "5         0    Healthy  \n",
       "6         0    Healthy  \n",
       "7         0  Unhealthy  \n",
       "8         0  Unhealthy  \n",
       "9         0    Healthy  \n",
       "10        0    Average  \n",
       "11        1  Unhealthy  \n",
       "12        0    Healthy  \n",
       "13        0    Average  \n",
       "14        0    Healthy  \n",
       "15        0    Healthy  \n",
       "16        1  Unhealthy  \n",
       "17        0  Unhealthy  \n",
       "18        0    Healthy  \n",
       "19        1  Unhealthy  \n",
       "20        0  Unhealthy  \n",
       "21        0    Healthy  \n",
       "22        1    Average  \n",
       "23        0  Unhealthy  \n",
       "24        1    Average  \n",
       "25        0  Unhealthy  \n",
       "26        1    Healthy  \n",
       "27        0    Healthy  \n",
       "28        0    Healthy  \n",
       "29        0  Unhealthy  \n",
       "30        0    Healthy  \n",
       "31        0  Unhealthy  \n",
       "32        0    Average  \n",
       "33        0    Healthy  \n",
       "34        0  Unhealthy  \n",
       "35        0    Healthy  \n",
       "36        0  Unhealthy  \n",
       "37        0    Healthy  \n",
       "38        1    Healthy  \n",
       "39        0    Average  \n",
       "40        0    Average  \n",
       "41        0  Unhealthy  \n",
       "42        0    Healthy  \n",
       "43        0    Healthy  \n",
       "44        0  Unhealthy  \n",
       "45        0  Unhealthy  \n",
       "46        0  Unhealthy  \n",
       "47        0    Healthy  \n",
       "48        0    Healthy  \n",
       "49        1  Unhealthy  \n",
       "50        0  Unhealthy  \n",
       "51        0    Average  \n",
       "52        1    Healthy  \n",
       "53        0    Average  \n",
       "54        0    Average  \n",
       "55        0    Average  \n",
       "56        0  Unhealthy  \n",
       "57        1  Unhealthy  \n",
       "58        0    Healthy  \n",
       "59        0    Healthy  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "passenger_info"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "c51f2c12",
   "metadata": {},
   "outputs": [],
   "source": [
    "data = pd.merge(vital_signs, passenger_info, on='Passenger_ID')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "b026531e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Passenger_ID</th>\n",
       "      <th>SeatNumber</th>\n",
       "      <th>Timestamp</th>\n",
       "      <th>Heart_Rate_BPM</th>\n",
       "      <th>Blood_Oxygen_Level_%</th>\n",
       "      <th>Blood_Pressure_Systolic</th>\n",
       "      <th>Blood_Pressure_Diastolic</th>\n",
       "      <th>Blood_Glucose</th>\n",
       "      <th>Body_Temperature</th>\n",
       "      <th>Flight_Altitude_ft</th>\n",
       "      <th>...</th>\n",
       "      <th>Hypertension</th>\n",
       "      <th>Diabetes</th>\n",
       "      <th>Stroke History</th>\n",
       "      <th>Asthma</th>\n",
       "      <th>Anxiety</th>\n",
       "      <th>Obesity</th>\n",
       "      <th>High Cholesterol</th>\n",
       "      <th>Sleep Apnea</th>\n",
       "      <th>Smoking</th>\n",
       "      <th>Diet</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:10</td>\n",
       "      <td>73</td>\n",
       "      <td>98.1</td>\n",
       "      <td>111</td>\n",
       "      <td>66</td>\n",
       "      <td>89.7</td>\n",
       "      <td>37.0</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:30</td>\n",
       "      <td>82</td>\n",
       "      <td>96.2</td>\n",
       "      <td>114</td>\n",
       "      <td>74</td>\n",
       "      <td>88.8</td>\n",
       "      <td>36.2</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 12:50</td>\n",
       "      <td>66</td>\n",
       "      <td>95.5</td>\n",
       "      <td>106</td>\n",
       "      <td>60</td>\n",
       "      <td>101.1</td>\n",
       "      <td>36.8</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 13:10</td>\n",
       "      <td>83</td>\n",
       "      <td>96.9</td>\n",
       "      <td>105</td>\n",
       "      <td>61</td>\n",
       "      <td>90.4</td>\n",
       "      <td>36.1</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>B23</td>\n",
       "      <td>29-09-2024 13:30</td>\n",
       "      <td>68</td>\n",
       "      <td>98.8</td>\n",
       "      <td>101</td>\n",
       "      <td>77</td>\n",
       "      <td>118.3</td>\n",
       "      <td>36.1</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Average</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>535</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 13:30</td>\n",
       "      <td>85</td>\n",
       "      <td>98.1</td>\n",
       "      <td>112</td>\n",
       "      <td>69</td>\n",
       "      <td>135.1</td>\n",
       "      <td>36.5</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>536</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 13:50</td>\n",
       "      <td>86</td>\n",
       "      <td>96.2</td>\n",
       "      <td>107</td>\n",
       "      <td>69</td>\n",
       "      <td>76.9</td>\n",
       "      <td>36.9</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>537</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:10</td>\n",
       "      <td>61</td>\n",
       "      <td>97.1</td>\n",
       "      <td>119</td>\n",
       "      <td>60</td>\n",
       "      <td>87.1</td>\n",
       "      <td>36.3</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>538</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:30</td>\n",
       "      <td>61</td>\n",
       "      <td>96.4</td>\n",
       "      <td>98</td>\n",
       "      <td>60</td>\n",
       "      <td>89.4</td>\n",
       "      <td>36.7</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>539</th>\n",
       "      <td>60</td>\n",
       "      <td>A13</td>\n",
       "      <td>29-09-2024 14:50</td>\n",
       "      <td>94</td>\n",
       "      <td>98.9</td>\n",
       "      <td>94</td>\n",
       "      <td>69</td>\n",
       "      <td>123.9</td>\n",
       "      <td>36.4</td>\n",
       "      <td>30000</td>\n",
       "      <td>...</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>Healthy</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>540 rows × 26 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "     Passenger_ID SeatNumber         Timestamp  Heart_Rate_BPM  \\\n",
       "0               1        B23  29-09-2024 12:10              73   \n",
       "1               1        B23  29-09-2024 12:30              82   \n",
       "2               1        B23  29-09-2024 12:50              66   \n",
       "3               1        B23  29-09-2024 13:10              83   \n",
       "4               1        B23  29-09-2024 13:30              68   \n",
       "..            ...        ...               ...             ...   \n",
       "535            60        A13  29-09-2024 13:30              85   \n",
       "536            60        A13  29-09-2024 13:50              86   \n",
       "537            60        A13  29-09-2024 14:10              61   \n",
       "538            60        A13  29-09-2024 14:30              61   \n",
       "539            60        A13  29-09-2024 14:50              94   \n",
       "\n",
       "     Blood_Oxygen_Level_%  Blood_Pressure_Systolic  Blood_Pressure_Diastolic  \\\n",
       "0                    98.1                      111                        66   \n",
       "1                    96.2                      114                        74   \n",
       "2                    95.5                      106                        60   \n",
       "3                    96.9                      105                        61   \n",
       "4                    98.8                      101                        77   \n",
       "..                    ...                      ...                       ...   \n",
       "535                  98.1                      112                        69   \n",
       "536                  96.2                      107                        69   \n",
       "537                  97.1                      119                        60   \n",
       "538                  96.4                       98                        60   \n",
       "539                  98.9                       94                        69   \n",
       "\n",
       "     Blood_Glucose  Body_Temperature  Flight_Altitude_ft  ...  Hypertension  \\\n",
       "0             89.7              37.0               30000  ...             0   \n",
       "1             88.8              36.2               30000  ...             0   \n",
       "2            101.1              36.8               30000  ...             0   \n",
       "3             90.4              36.1               30000  ...             0   \n",
       "4            118.3              36.1               30000  ...             0   \n",
       "..             ...               ...                 ...  ...           ...   \n",
       "535          135.1              36.5               30000  ...             0   \n",
       "536           76.9              36.9               30000  ...             0   \n",
       "537           87.1              36.3               30000  ...             0   \n",
       "538           89.4              36.7               30000  ...             0   \n",
       "539          123.9              36.4               30000  ...             0   \n",
       "\n",
       "    Diabetes  Stroke History  Asthma Anxiety  Obesity  High Cholesterol  \\\n",
       "0          1               0       1       0        1                 1   \n",
       "1          1               0       1       0        1                 1   \n",
       "2          1               0       1       0        1                 1   \n",
       "3          1               0       1       0        1                 1   \n",
       "4          1               0       1       0        1                 1   \n",
       "..       ...             ...     ...     ...      ...               ...   \n",
       "535        0               0       0       0        1                 0   \n",
       "536        0               0       0       0        1                 0   \n",
       "537        0               0       0       0        1                 0   \n",
       "538        0               0       0       0        1                 0   \n",
       "539        0               0       0       0        1                 0   \n",
       "\n",
       "     Sleep Apnea  Smoking     Diet  \n",
       "0              0        0  Average  \n",
       "1              0        0  Average  \n",
       "2              0        0  Average  \n",
       "3              0        0  Average  \n",
       "4              0        0  Average  \n",
       "..           ...      ...      ...  \n",
       "535            0        0  Healthy  \n",
       "536            0        0  Healthy  \n",
       "537            0        0  Healthy  \n",
       "538            0        0  Healthy  \n",
       "539            0        0  Healthy  \n",
       "\n",
       "[540 rows x 26 columns]"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "53702f00",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.preprocessing import LabelEncoder"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "5e5b8d30",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "   Passenger_ID SeatNumber         Timestamp  Heart_Rate_BPM  \\\n",
      "0             1        B23  29-09-2024 12:10              73   \n",
      "1             1        B23  29-09-2024 12:30              82   \n",
      "2             1        B23  29-09-2024 12:50              66   \n",
      "3             1        B23  29-09-2024 13:10              83   \n",
      "4             1        B23  29-09-2024 13:30              68   \n",
      "\n",
      "   Blood_Oxygen_Level_%  Blood_Pressure_Systolic  Blood_Pressure_Diastolic  \\\n",
      "0                  98.1                      111                        66   \n",
      "1                  96.2                      114                        74   \n",
      "2                  95.5                      106                        60   \n",
      "3                  96.9                      105                        61   \n",
      "4                  98.8                      101                        77   \n",
      "\n",
      "   Blood_Glucose  Body_Temperature  Flight_Altitude_ft  ...  Hypertension  \\\n",
      "0           89.7              37.0               30000  ...             0   \n",
      "1           88.8              36.2               30000  ...             0   \n",
      "2          101.1              36.8               30000  ...             0   \n",
      "3           90.4              36.1               30000  ...             0   \n",
      "4          118.3              36.1               30000  ...             0   \n",
      "\n",
      "   Diabetes  Stroke History  Asthma  Anxiety  Obesity  High Cholesterol  \\\n",
      "0         1               0       1        0        1                 1   \n",
      "1         1               0       1        0        1                 1   \n",
      "2         1               0       1        0        1                 1   \n",
      "3         1               0       1        0        1                 1   \n",
      "4         1               0       1        0        1                 1   \n",
      "\n",
      "   Sleep Apnea  Smoking  Diet  \n",
      "0            0        0     0  \n",
      "1            0        0     0  \n",
      "2            0        0     0  \n",
      "3            0        0     0  \n",
      "4            0        0     0  \n",
      "\n",
      "[5 rows x 26 columns]\n"
     ]
    }
   ],
   "source": [
    "label_encoder = LabelEncoder()\n",
    "\n",
    "columns_to_encode = ['Gender', 'Allergies', 'Diet', 'Movement_Activity']\n",
    "\n",
    "for column in columns_to_encode:\n",
    "    data[column] = label_encoder.fit_transform(data[column])\n",
    "__\n",
    "print(data.head())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "a7d78adb",
   "metadata": {},
   "outputs": [],
   "source": [
    "vital_signs_cols = ['Heart_Rate_BPM', 'Blood_Oxygen_Level_%', 'Blood_Pressure_Systolic', \n",
    "                    'Blood_Pressure_Diastolic', 'Blood_Glucose', 'Body_Temperature']\n",
    "\n",
    "for sign in vital_signs_cols:\n",
    "    data[f'{sign}_rolling_avg_5'] = data.groupby('Passenger_ID')[sign].rolling(window=5).mean().reset_index(0, drop=True)\n",
    "    data[f'{sign}_rolling_std_5'] = data.groupby('Passenger_ID')[sign].rolling(window=5).std().reset_index(0, drop=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "099475ee",
   "metadata": {},
   "outputs": [],
   "source": [
    "for sign in vital_signs_cols:\n",
    "    data[f'{sign}_rate_of_change'] = data.groupby('Passenger_ID')[sign].diff()\n",
    "\n",
    "data['BP_Ratio'] = data['Blood_Pressure_Systolic'] / data['Blood_Pressure_Diastolic']\n",
    "data['HR_BP_Product'] = data['Heart_Rate_BPM'] * data['Blood_Pressure_Systolic']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "dc85bda9",
   "metadata": {},
   "outputs": [],
   "source": [
    "data.fillna(0, inplace=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "cbaf822c",
   "metadata": {},
   "outputs": [],
   "source": [
    "features = data.drop(['Passenger_ID', 'SeatNumber','Timestamp', 'Medical_Event_Flag'], axis=1)\n",
    "target = data['Medical_Event_Flag']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "d1e93d17",
   "metadata": {},
   "outputs": [],
   "source": [
    "X_train, X_test, y_train, y_test = train_test_split(features, target, test_size=0.2, random_state=42)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "e88b3921",
   "metadata": {},
   "outputs": [],
   "source": [
    "scaler = StandardScaler()\n",
    "X_train_scaled = scaler.fit_transform(X_train)\n",
    "X_test_scaled = scaler.transform(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "be29f9e0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style>#sk-container-id-1 {color: black;background-color: white;}#sk-container-id-1 pre{padding: 0;}#sk-container-id-1 div.sk-toggleable {background-color: white;}#sk-container-id-1 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-1 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-1 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-1 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-1 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-1 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-1 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-1 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-1 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-1 div.sk-item {position: relative;z-index: 1;}#sk-container-id-1 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-1 div.sk-item::before, #sk-container-id-1 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-1 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-1 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-1 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-1 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-1 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-1 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-1 div.sk-label-container {text-align: center;}#sk-container-id-1 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-1 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>RandomForestClassifier(random_state=42)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" checked><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">RandomForestClassifier</label><div class=\"sk-toggleable__content\"><pre>RandomForestClassifier(random_state=42)</pre></div></div></div></div></div>"
      ],
      "text/plain": [
       "RandomForestClassifier(random_state=42)"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model = RandomForestClassifier(n_estimators=100, random_state=42)\n",
    "model.fit(X_train_scaled, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "8c49f804",
   "metadata": {},
   "outputs": [],
   "source": [
    "risk_scores = model.predict_proba(X_test_scaled)[:, 1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "d081ca3a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model AUC-ROC Score: 1.0\n"
     ]
    }
   ],
   "source": [
    "auc_score = roc_auc_score(y_test, risk_scores)\n",
    "print(f\"Model AUC-ROC Score: {auc_score}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "c1a65c2c",
   "metadata": {},
   "outputs": [],
   "source": [
    "data['Risk_Score'] = model.predict_proba(scaler.transform(features))[:, 1]\n",
    "high_risk_threshold = 0.7\n",
    "high_risk_passengers = data[data['Risk_Score'] > high_risk_threshold]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "05f287e9",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "High-Risk Passengers:\n",
      "    Passenger_ID  Risk_Score  Heart_Rate_BPM  Blood_Oxygen_Level_%  \\\n",
      "36             5        0.76              94                  98.2   \n",
      "37             5        0.80              79                  95.0   \n",
      "38             5        0.81              76                  98.8   \n",
      "40             5        0.87              76                  97.0   \n",
      "41             5        0.83              72                  97.2   \n",
      "43             5        0.83              65                  96.8   \n",
      "44             5        0.82              67                  98.4   \n",
      "\n",
      "    Blood_Pressure_Systolic  Blood_Pressure_Diastolic  Blood_Glucose  \\\n",
      "36                       91                        68          120.4   \n",
      "37                       96                        69          136.7   \n",
      "38                      112                        67          121.3   \n",
      "40                       94                        74           96.7   \n",
      "41                       95                        76           92.5   \n",
      "43                      120                        63           78.2   \n",
      "44                       94                        68          106.0   \n",
      "\n",
      "    Body_Temperature  \n",
      "36              38.2  \n",
      "37              38.4  \n",
      "38              38.0  \n",
      "40              38.0  \n",
      "41              38.2  \n",
      "43              37.7  \n",
      "44              38.1  \n"
     ]
    }
   ],
   "source": [
    "print(\"\\nHigh-Risk Passengers:\")\n",
    "print(high_risk_passengers[['Passenger_ID', 'Risk_Score', 'Heart_Rate_BPM', 'Blood_Oxygen_Level_%', 'Blood_Pressure_Systolic', \n",
    "                            'Blood_Pressure_Diastolic', 'Blood_Glucose', 'Body_Temperature']])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "5b19b573",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 12:10\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 94 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 98.2 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 91/68 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 120.4 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.2 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.76\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 12:30\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 79 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 95.0 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 96/69 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 136.7 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.4 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.8\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 12:50\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 76 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 98.8 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 112/67 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 121.3 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.0 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.81\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 13:30\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 76 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 97.0 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 94/74 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 96.7 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.0 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.87\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 13:50\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 72 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 97.2 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 95/76 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 92.5 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.2 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.83\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 14:30\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 65 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 96.8 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 120/63 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 78.2 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 37.7 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.83\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n",
      "\n",
      "        Medical Alert: Passenger ID 5\n",
      "        Timestamp: 29-09-2024 14:50\n",
      "        Risk Level: High\n",
      "        Health Anomalies Detected: Elevated Body Temperature\n",
      "\n",
      "        Passenger Details:\n",
      "        - Passenger ID: 5\n",
      "        - Heart Rate (BPM): 67 (Normal: 60-100)\n",
      "        - Blood Oxygen Level (%): 98.4 (Normal: 95-100)\n",
      "        - Blood Pressure (Systolic/Diastolic): 94/68 (Normal: 90-120 / 60-80)\n",
      "        - Blood Glucose (mg/dL): 106.0 (Normal: 70-140)\n",
      "        - Body Temperature (°C): 38.1 (Normal: 36.5-37.5)\n",
      "\n",
      "        Risk Score: 0.82\n",
      "\n",
      "        Actions Needed:\n",
      "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
      "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
      "        \n"
     ]
    }
   ],
   "source": [
    "high_temperature_threshold = 37.5\n",
    "\n",
    "normal_ranges = {\n",
    "    'Heart Rate (BPM)': '60-100',\n",
    "    'Blood Oxygen Level (%)': '95-100',\n",
    "    'Blood Pressure (Systolic/Diastolic)': '90-120 / 60-80',\n",
    "    'Blood Glucose (mg/dL)': '70-140',\n",
    "    'Body Temperature (°C)': '36.5-37.5'\n",
    "}\n",
    "\n",
    "high_temp_passengers = high_risk_passengers[high_risk_passengers['Body_Temperature'] > high_temperature_threshold]\n",
    "\n",
    "if not high_temp_passengers.empty:\n",
    "    for index, row in high_temp_passengers.iterrows():\n",
    "        timestamp = datetime.now().strftime(\"%Y-%m-%d %H:%M:%S\")\n",
    "\n",
    "        alert_message = f\"\"\"\n",
    "        Medical Alert: Passenger ID {row['Passenger_ID']}\n",
    "        Timestamp: {row['Timestamp']}\n",
    "        Risk Level: High\n",
    "        Health Anomalies Detected: Elevated Body Temperature\n",
    "\n",
    "        Passenger Details:\n",
    "        - Passenger ID: {row['Passenger_ID']}\n",
    "        - Heart Rate (BPM): {row['Heart_Rate_BPM']} (Normal: {normal_ranges['Heart Rate (BPM)']})\n",
    "        - Blood Oxygen Level (%): {row['Blood_Oxygen_Level_%']} (Normal: {normal_ranges['Blood Oxygen Level (%)']})\n",
    "        - Blood Pressure (Systolic/Diastolic): {row['Blood_Pressure_Systolic']}/{row['Blood_Pressure_Diastolic']} (Normal: {normal_ranges['Blood Pressure (Systolic/Diastolic)']})\n",
    "        - Blood Glucose (mg/dL): {row['Blood_Glucose']} (Normal: {normal_ranges['Blood Glucose (mg/dL)']})\n",
    "        - Body Temperature (°C): {row['Body_Temperature']} (Normal: {normal_ranges['Body Temperature (°C)']})\n",
    "\n",
    "        Risk Score: {row['Risk_Score']}\n",
    "\n",
    "        Actions Needed:\n",
    "        - Passenger's body temperature is abnormally high, indicating a potential fever. Immediate attention is required to assess possible causes, such as infection or inflammation.\n",
    "        - Cabin crew should assess the passenger's condition, ensure hydration, and contact medical personnel if necessary.\n",
    "        \"\"\"\n",
    "        print(alert_message)\n",
    "else:\n",
    "    print(\"No high temperature detected for any high-risk passengers.\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "fa71d6a0",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "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.11.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}