[b9a43c]: / notebooks / 01-rsna-basic-eda-part-1.ipynb

Download this file

1022 lines (1021 with data), 88.1 kB

{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# RSNA Intracranial Hemorrhage Detection "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Competition Overview</b><br/><br/>\n",
    "Intracranial hemorrhage, bleeding that occurs inside the cranium, is a serious health problem requiring rapid and often intensive medical treatment. For example, intracranial hemorrhages account for approximately 10% of strokes in the U.S., where stroke is the fifth-leading cause of death. Identifying the location and type of any hemorrhage present is a critical step in treating the patient.\n",
    "\n",
    "Diagnosis requires an urgent procedure. When a patient shows acute neurological symptoms such as severe headache or loss of consciousness, highly trained specialists review medical images of the patient’s cranium to look for the presence, location and type of hemorrhage. The process is complicated and often time consuming."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>What am i predicting?</b><br/><br/>\n",
    "In this competition our goal is to predict intracranial hemorrhage and its subtypes. Given an image the we need to predict probablity of each subtype. This indicates its a multilabel classification problem."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Competition Evaluation Metric</b><br/><br/>\n",
    "Evaluation metric is weighted multi-label logarithmic loss. So for given image we need to predict probality for each subtype. There is also an any label, which indicates that a hemorrhage of ANY kind exists in the image. The any label is weighted more highly than specific hemorrhage sub-types.\n",
    "\n",
    "<b>Note:</b>The weights for each subtype for calculating weighted multi-label logarithmic loss is **not** given as part of the competition."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Dataset Description</b>\n",
    "\n",
    "The dataset is divided into two parts\n",
    "\n",
    "1. Train\n",
    "2. Test\n",
    "\n",
    "**1. Train**\n",
    "Number of rows: 40,45,548 records.\n",
    "Number of columns: 2\n",
    "\n",
    "Columns:\n",
    "\n",
    "**Id**: An image Id. Each Id corresponds to a unique image, and will contain an underscore.\n",
    "\n",
    "Example: ID_28fbab7eb_epidural. So the Id consists of two parts one is image file id ID_28fbab7eb and the other is sub type name\n",
    "\n",
    "**Label**: The target label whether that sub-type of hemorrhage (or any hemorrhage in the case of any) exists in the indicated image. 1 --> Exists and 0 --> Doesn't exist.\n",
    "\n",
    "**2. Test**\n",
    "Number of rows: 4,71,270 records.\n",
    "\n",
    "Columns:\n",
    "\n",
    "**Id**: An image Id. Each Id corresponds to a unique image, and will contain an underscore.\n",
    "\n",
    "Example: ID_28fbab7eb_epidural. So the Id consists of two parts one is image file id ID_28fbab7eb and the other is sub type name"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Intracranial Hemorrhage</b>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://www.technology.org/texorgwp/wp-content/uploads/2019/09/Intracerebral_hemorrhage.jpg\"  style=\"height:30%;width:50%\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "An intracranial hemorrhage is a type of bleeding that occurs inside the skull. Symptoms include sudden tingling, weakness, numbness, paralysis, severe headache, difficulty with swallowing or vision, loss of balance or coordination, difficulty understanding, speaking , reading, or writing, and a change in level of consciousness or alertness, marked by stupor, lethargy, sleepiness, or coma. Any type of bleeding inside the skull or brain is a medical emergency. It is important to get the person to a hospital emergency room immediately to determine the cause of the bleeding and begin medical treatment."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Types</b>\n",
    "<br/>\n",
    "1. Epidural\n",
    "2. Intraparenchymal    \n",
    "3. Intraventricular\n",
    "4. Subarachnoid \n",
    "5. Subdural\n",
    "6. Any"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1. Epidural"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://upload.wikimedia.org/wikipedia/commons/f/f9/EpiduralHematoma.jpg\" style='width:20%;height:20%'/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A hematoma is a collection of blood, in a clot or ball, outside of a blood vessel. An epidural hematoma occurs when blood accumulates between your skull and the outermost covering of your brain.\n",
    "\n",
    "It typically follows a head injury, and usually with a skull fracture. High-pressure bleeding is a prominent feature. If you have an epidural hematoma, you may briefly lose consciousness and then regain consciousness.\n",
    "\n",
    "Source: https://www.healthline.com/health/extradural-hemorrhage#type"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2. Intraparenchymal"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/e/ed/Mri041a2.jpg/220px-Mri041a2.jpg\" />"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Intraparenchymal hemorrhage (IPH) is one form of intracerebral bleeding in which there is bleeding within brain parenchyma. The other form is intraventricular hemorrhage (IVH). Intraparenchymal hemorrhage accounts for approx. 8-13% of all strokes and results from a wide spectrum of disorders."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3. Intraventricular"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src='https://prod-images.static.radiopaedia.org/images/12380293/17abfd31d98cfe599e44fe3053db9e_thumb.jpg' />"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Intraventricular hemorrhage (IVH), also known as intraventricular bleeding, is a bleeding into the brain's ventricular system, where the cerebrospinal fluid is produced and circulates through towards the subarachnoid space. It can result from physical trauma or from hemorrhaging in stroke."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4. Subarachnoid"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://www.nejm.org/na101/home/literatum/publisher/mms/journals/content/nejm/2017/nejm_2017.377.issue-3/nejmcp1605827/20180122/images/img_medium/nejmcp1605827_f2.jpeg\" style=\"width:25%;height:25%\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Subarachnoid hemorrhage (SAH) is a life-threatening type of stroke caused by bleeding into the space surrounding the brain. SAH can be caused by a ruptured aneurysm, AVM, or head injury. One-third of patients will survive with good recovery; one-third will survive with a disability; and one-third will die. Treatment focuses on stopping the bleeding, restoring normal blood flow, and preventing vasospasm."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 5. Subdural"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://cdn.britannica.com/51/193251-050-E254065D/CT-scan-brain-hematoma.jpg\" style=\"width:25%;height:25%\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A subdural hemorrhage (or hematoma) is a type of bleeding that often occurs outside the brain as a result of a severe head injury. It takes place when blood vessels burst between the brain and the leather-like membrane that wraps around the brain (the dura mater)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<b>Note</b>\n",
    "A nice video explaining all the types can be found [here](https://www.youtube.com/watch?v=Kb_wzb7-rvE). "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Basic EDA"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "_cell_guid": "79c7e3d0-c299-4dcb-8224-4455121ee9b0",
    "_uuid": "d629ff2d2480ee46fbb7e2d37f6b5fab8052498a"
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import pydicom\n",
    "import cv2\n",
    "import os\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "input_folder = '../input/rsna-intracranial-hemorrhage-detection/'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "path_train_img = input_folder + 'stage_1_train_images/'\n",
    "path_test_img = input_folder + 'stage_1_test_images/'"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Loading Data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "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>ID</th>\n",
       "      <th>Label</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>ID_63eb1e259_epidural</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>ID_63eb1e259_intraparenchymal</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>ID_63eb1e259_intraventricular</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>ID_63eb1e259_subarachnoid</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>ID_63eb1e259_subdural</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                              ID  Label\n",
       "0          ID_63eb1e259_epidural      0\n",
       "1  ID_63eb1e259_intraparenchymal      0\n",
       "2  ID_63eb1e259_intraventricular      0\n",
       "3      ID_63eb1e259_subarachnoid      0\n",
       "4          ID_63eb1e259_subdural      0"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df = pd.read_csv(input_folder + 'stage_1_train.csv')\n",
    "train_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "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>ID</th>\n",
       "      <th>Label</th>\n",
       "      <th>sub_type</th>\n",
       "      <th>file_name</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>ID_63eb1e259_epidural</td>\n",
       "      <td>0</td>\n",
       "      <td>epidural</td>\n",
       "      <td>ID_63eb1e259.dcm</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>ID_63eb1e259_intraparenchymal</td>\n",
       "      <td>0</td>\n",
       "      <td>intraparenchymal</td>\n",
       "      <td>ID_63eb1e259.dcm</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>ID_63eb1e259_intraventricular</td>\n",
       "      <td>0</td>\n",
       "      <td>intraventricular</td>\n",
       "      <td>ID_63eb1e259.dcm</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>ID_63eb1e259_subarachnoid</td>\n",
       "      <td>0</td>\n",
       "      <td>subarachnoid</td>\n",
       "      <td>ID_63eb1e259.dcm</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>ID_63eb1e259_subdural</td>\n",
       "      <td>0</td>\n",
       "      <td>subdural</td>\n",
       "      <td>ID_63eb1e259.dcm</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                              ID  Label          sub_type         file_name\n",
       "0          ID_63eb1e259_epidural      0          epidural  ID_63eb1e259.dcm\n",
       "1  ID_63eb1e259_intraparenchymal      0  intraparenchymal  ID_63eb1e259.dcm\n",
       "2  ID_63eb1e259_intraventricular      0  intraventricular  ID_63eb1e259.dcm\n",
       "3      ID_63eb1e259_subarachnoid      0      subarachnoid  ID_63eb1e259.dcm\n",
       "4          ID_63eb1e259_subdural      0          subdural  ID_63eb1e259.dcm"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# extract subtype\n",
    "train_df['sub_type'] = train_df['ID'].apply(lambda x: x.split('_')[-1])\n",
    "# extract filename\n",
    "train_df['file_name'] = train_df['ID'].apply(lambda x: '_'.join(x.split('_')[:2]) + '.dcm')\n",
    "train_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(4045572, 4)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Number of train images availabe: 674258\n"
     ]
    }
   ],
   "source": [
    "print(\"Number of train images availabe:\", len(os.listdir(path_train_img)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Epidural"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    671501\n",
       "1      2761\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'epidural']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'epidural'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For epidural sub type we have 6,71,501 images labeled as 0 and 2,761 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Intraparenchymal"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    641698\n",
       "1     32564\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'intraparenchymal']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'intraparenchymal'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For intraparenchymal sub type we have 6,41,698 images labeled as 0 and 32,564 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Intraventricular"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    650496\n",
       "1     23766\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'intraventricular']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'intraventricular'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For intraparenchymal sub type we have 6,50,496 images labeled as 0 and 23,766 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Subarachnoid"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    642140\n",
       "1     32122\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'subarachnoid']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZsAAAEKCAYAAADEovgeAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAE79JREFUeJzt3X+s3fV93/HnKzg0tCnBwIVRG2a2Wl1o1iRgEXeZqixUxqRrjbpSES2zRa15ikjVqltbsj/qFBYt1bZkIWqtWcXBjroSjy7D65x4npMsqsYPXwaDAI18RzK4NcUGO5Q0bSJn7/1xPl5OL+deH7v++LjXz4d0dL7f9/fz+X4+V7L80vd7Pud7UlVIktTT6yY9AUnS4mfYSJK6M2wkSd0ZNpKk7gwbSVJ3ho0kqTvDRpLUnWEjSerOsJEkdbdk0hM4W1x66aW1YsWKSU9Dkv5KefTRR1+qqqkTtTNsmhUrVjA9PT3paUjSXylJ/s847byNJknqzrCRJHVn2EiSujNsJEndGTaSpO4MG0lSd4aNJKk7w0aS1J1hI0nqzicInEbX/fKOSU9BZ5lH/9X6SU9BOit4ZSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6q5r2CS5KMn9Sf4wyTNJfjTJxUn2JjnQ3pe2tklyd5KZJE8kuXboPBta+wNJNgzVr0vyZOtzd5K0+sgxJEmT0fvK5uPA56rqbwFvBZ4B7gD2VdVKYF/bB7gJWNlem4AtMAgOYDPwDuB6YPNQeGxpbY/3W9vq840hSZqAbmGT5ELgx4B7AKrq21X1dWAdsL012w7c3LbXATtq4CHgoiRXADcCe6vqSFUdBfYCa9uxC6vqwaoqYMecc40aQ5I0AT2vbP4GcBj4ZJLHkvx2ku8DLq+qFwDa+2Wt/TLg+aH+s622UH12RJ0FxvgLkmxKMp1k+vDhw6f+l0qSFtQzbJYA1wJbqurtwJ+y8O2sjKjVKdTHVlVbq2pVVa2ampo6ma6SpJPQM2xmgdmqerjt388gfF5st8Bo74eG2l851H85cPAE9eUj6iwwhiRpArqFTVX9MfB8kh9qpRuAp4FdwPEVZRuAB9r2LmB9W5W2Gnil3QLbA6xJsrQtDFgD7GnHXk2yuq1CWz/nXKPGkCRNQO8fT/t54HeSnA88C9zGIOB2JtkIPAfc0truBt4DzADfbG2pqiNJ7gL2t3Z3VtWRtv1+4F7gAuCz7QXwkXnGkCRNQNewqarHgVUjDt0wom0Bt89znm3AthH1aeAtI+ovjxpDkjQZPkFAktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUnddwybJ15I8meTxJNOtdnGSvUkOtPelrZ4kdyeZSfJEkmuHzrOhtT+QZMNQ/bp2/pnWNwuNIUmajDNxZfP3quptVbWq7d8B7KuqlcC+tg9wE7CyvTYBW2AQHMBm4B3A9cDmofDY0toe77f2BGNIkiZgErfR1gHb2/Z24Oah+o4aeAi4KMkVwI3A3qo6UlVHgb3A2nbswqp6sKoK2DHnXKPGkCRNQO+wKeC/Jnk0yaZWu7yqXgBo75e1+jLg+aG+s622UH12RH2hMSRJE7Ck8/nfWVUHk1wG7E3yhwu0zYhanUJ9bC0ANwFcddVVJ9NVknQSul7ZVNXB9n4I+AyDz1xebLfAaO+HWvNZ4Mqh7suBgyeoLx9RZ4Ex5s5va1WtqqpVU1NTp/pnSpJOoFvYJPm+JN9/fBtYA3wZ2AUcX1G2AXigbe8C1rdVaauBV9otsD3AmiRL28KANcCeduzVJKvbKrT1c841agxJ0gT0vI12OfCZthp5CfDvq+pzSfYDO5NsBJ4DbmntdwPvAWaAbwK3AVTVkSR3Aftbuzur6kjbfj9wL3AB8Nn2AvjIPGNIkiagW9hU1bPAW0fUXwZuGFEv4PZ5zrUN2DaiPg28ZdwxJEmT4RMEJEndGTaSpO4MG0lSd4aNJKk7w0aS1J1hI0nqzrCRJHVn2EiSujNsJEndGTaSpO4MG0lSd4aNJKk7w0aS1J1hI0nqzrCRJHVn2EiSujNsJEndGTaSpO4MG0lSd4aNJKk7w0aS1J1hI0nqzrCRJHXXPWySnJfksSS/3/avTvJwkgNJPp3k/Fb/nrY/046vGDrHB1v9K0luHKqvbbWZJHcM1UeOIUmajDNxZfMLwDND+78BfKyqVgJHgY2tvhE4WlU/CHystSPJNcCtwA8Da4HfagF2HvCbwE3ANcB7W9uFxpAkTUDXsEmyHPgJ4LfbfoB3A/e3JtuBm9v2urZPO35Da78OuK+qvlVVXwVmgOvba6aqnq2qbwP3AetOMIYkaQJ6X9n8W+BXgP/b9i8Bvl5Vx9r+LLCsbS8Dngdox19p7f9/fU6f+eoLjSFJmoBuYZPk7wOHqurR4fKIpnWCY6erPmqOm5JMJ5k+fPjwqCaSpNOg55XNO4GfSvI1Bre43s3gSueiJEtam+XAwbY9C1wJ0I6/CTgyXJ/TZ776SwuM8RdU1daqWlVVq6ampk79L5UkLahb2FTVB6tqeVWtYPAB/+er6h8CXwB+pjXbADzQtne1fdrxz1dVtfqtbbXa1cBK4BFgP7CyrTw7v42xq/WZbwxJ0gRM4ns2vwr8UpIZBp+v3NPq9wCXtPovAXcAVNVTwE7gaeBzwO1V9Z32mcwHgD0MVrvtbG0XGkOSNAFLTtzkL6+qvgh8sW0/y2Al2dw2fw7cMk//DwMfHlHfDeweUR85hiRpMnyCgCSpO8NGktSdYSNJ6m6ssEmyb5yaJEmjLLhAIMkbgO8FLk2ylO9+YfJC4Ac6z02StEicaDXaPwF+kUGwPMp3w+ZPGDwEU5KkE1owbKrq48DHk/x8VX3iDM1JkrTIjPU9m6r6RJK/A6wY7lNVOzrNS5K0iIwVNkk+BfxN4HHgO61cgGEjSTqhcZ8gsAq4pj13TJKkkzLu92y+DPy1nhORJC1e417ZXAo8neQR4FvHi1X1U11mJUlaVMYNmw/1nIQkaXEbdzXaf+89EUnS4jXuarRX+e5PK58PvB7406q6sNfEJEmLx7hXNt8/vJ/kZvy9GEnSmE7pqc9V9Z+Ad5/muUiSFqlxb6P99NDu6xh878bv3EiSxjLuarSfHNo+BnwNWHfaZyNJWpTG/czmtt4TkSQtXuP+eNryJJ9JcijJi0l+L8ny3pOTJC0O4y4Q+CSwi8Hv2iwD/nOrSZJ0QuOGzVRVfbKqjrXXvcBUx3lJkhaRccPmpSTvS3Jee70PeHmhDknekOSRJP8ryVNJfr3Vr07ycJIDST6d5PxW/562P9OOrxg61wdb/StJbhyqr221mSR3DNVHjiFJmoxxw+bngJ8F/hh4AfgZ4ESLBr4FvLuq3gq8DVibZDXwG8DHqmolcBTY2NpvBI5W1Q8CH2vtSHINcCvww8Ba4LeOhx6Dn6a+CbgGeG9rywJjSJImYNywuQvYUFVTVXUZg/D50EIdauAbbff17VUMvgx6f6tvB25u2+vaPu34DUnS6vdV1beq6qvADIOnF1wPzFTVs1X1beA+YF3rM98YkqQJGDdsfqSqjh7fqaojwNtP1KldgTwOHAL2Av8b+HpVHWtNZhksOKC9P9/Ofwx4BbhkuD6nz3z1SxYYQ5I0AeOGzeuSLD2+k+RixviOTlV9p6reBixncCXy5lHNjp92nmOnq/4aSTYlmU4yffjw4VFNJEmnwbhPEPg3wP9Icj+D/7h/FvjwuINU1deTfBFYDVyUZEm78lgOHGzNZoErgdkkS4A3AUeG6scN9xlVf2mBMebOayuwFWDVqlU+fkeSOhnryqaqdgD/AHgROAz8dFV9aqE+SaaSXNS2LwB+HHgG+AKDBQYAG4AH2vautk87/vmqqla/ta1WuxpYCTwC7AdWtpVn5zNYRLCr9ZlvDEnSBIx7ZUNVPQ08fRLnvgLY3laNvQ7YWVW/n+Rp4L4k/wJ4DLintb8H+FSSGQZXNLe2cZ9KsrONfQy4vaq+A5DkA8Ae4DxgW1U91c71q/OMIUmagLHD5mRV1ROMWERQVc8y4rdwqurPgVvmOdeHGXHbrqp2A7vHHUOSNBmn9Hs2kiSdDMNGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUnfdwibJlUm+kOSZJE8l+YVWvzjJ3iQH2vvSVk+Su5PMJHkiybVD59rQ2h9IsmGofl2SJ1ufu5NkoTEkSZPR88rmGPBPq+rNwGrg9iTXAHcA+6pqJbCv7QPcBKxsr03AFhgEB7AZeAdwPbB5KDy2tLbH+61t9fnGkCRNQLewqaoXqup/tu1XgWeAZcA6YHtrth24uW2vA3bUwEPARUmuAG4E9lbVkao6CuwF1rZjF1bVg1VVwI455xo1hiRpAs7IZzZJVgBvBx4GLq+qF2AQSMBlrdky4PmhbrOttlB9dkSdBcaYO69NSaaTTB8+fPhU/zxJ0gl0D5skbwR+D/jFqvqThZqOqNUp1MdWVVuralVVrZqamjqZrpKkk9A1bJK8nkHQ/E5V/cdWfrHdAqO9H2r1WeDKoe7LgYMnqC8fUV9oDEnSBPRcjRbgHuCZqvro0KFdwPEVZRuAB4bq69uqtNXAK+0W2B5gTZKlbWHAGmBPO/ZqktVtrPVzzjVqDEnSBCzpeO53Av8IeDLJ4632z4GPADuTbASeA25px3YD7wFmgG8CtwFU1ZEkdwH7W7s7q+pI234/cC9wAfDZ9mKBMSRJE9AtbKrqDxj9uQrADSPaF3D7POfaBmwbUZ8G3jKi/vKoMSRJk+ETBCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR1Z9hIkrozbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6s6wkSR11y1skmxLcijJl4dqFyfZm+RAe1/a6klyd5KZJE8kuXaoz4bW/kCSDUP165I82frcnSQLjSFJmpyeVzb3Amvn1O4A9lXVSmBf2we4CVjZXpuALTAIDmAz8A7gemDzUHhsaW2P91t7gjEkSRPSLWyq6kvAkTnldcD2tr0duHmovqMGHgIuSnIFcCOwt6qOVNVRYC+wth27sKoerKoCdsw516gxJEkTcqY/s7m8ql4AaO+Xtfoy4PmhdrOttlB9dkR9oTEkSRNytiwQyIhanUL95AZNNiWZTjJ9+PDhk+0uSRrTmQ6bF9stMNr7oVafBa4carccOHiC+vIR9YXGeI2q2lpVq6pq1dTU1Cn/UZKkhZ3psNkFHF9RtgF4YKi+vq1KWw280m6B7QHWJFnaFgasAfa0Y68mWd1Woa2fc65RY0iSJmRJrxMn+V3gXcClSWYZrCr7CLAzyUbgOeCW1nw38B5gBvgmcBtAVR1Jchewv7W7s6qOLzp4P4MVbxcAn20vFhhDkjQh3cKmqt47z6EbRrQt4PZ5zrMN2DaiPg28ZUT95VFjSJIm52xZICBJWsQMG0lSd4aNJKk7w0aS1J1hI0nqzrCRJHVn2EiSujNsJEndGTaSpO4MG0lSd4aNJKk7w0aS1J1hI0nqzrCRJHVn2EiSujNsJEnddfvxNElnj+fu/NuTnoLOQlf92pNnbCyvbCRJ3Rk2kqTuDBtJUneGjSSpO8NGktSdYSNJ6m7Rhk2StUm+kmQmyR2Tno8kncsWZdgkOQ/4TeAm4BrgvUmumeysJOnctSjDBrgemKmqZ6vq28B9wLoJz0mSzlmLNWyWAc8P7c+2miRpAhbr42oyolavaZRsAja13W8k+UrXWZ1bLgVemvQkJi3/esOkp6DX8t/mcZtH/Vd50v76OI0Wa9jMAlcO7S8HDs5tVFVbga1nalLnkiTTVbVq0vOQ5vLf5mQs1tto+4GVSa5Ocj5wK7BrwnOSpHPWoryyqapjST4A7AHOA7ZV1VMTnpYknbMWZdgAVNVuYPek53EO8/akzlb+25yAVL3mc3NJkk6rxfqZjSTpLGLY6LTyMUE6WyXZluRQki9Pei7nIsNGp42PCdJZ7l5g7aQnca4ybHQ6+ZggnbWq6kvAkUnP41xl2Oh08jFBkkYybHQ6jfWYIEnnHsNGp9NYjwmSdO4xbHQ6+ZggSSMZNjptquoYcPwxQc8AO31MkM4WSX4XeBD4oSSzSTZOek7nEp8gIEnqzisbSVJ3ho0kqTvDRpLUnWEjSerOsJEkdWfYSGdYkm+cRNsPJflnvc4vnSmGjSSpO8NGOgsk+ckkDyd5LMl/S3L50OG3Jvl8kgNJ/vFQn19Osj/JE0l+fQLTlsZm2Ehnhz8AVlfV2xn8NMOvDB37EeAngB8Ffi3JDyRZA6xk8LMObwOuS/JjZ3jO0tiWTHoCkoDBQ0s/neQK4Hzgq0PHHqiqPwP+LMkXGATM3wXWAI+1Nm9kED5fOnNTlsZn2Ehnh08AH62qXUneBXxo6NjcZ0oVg59z+JdV9e/OzPSkvxxvo0lnhzcBf9S2N8w5ti7JG5JcAryLwdO19wA/l+SNAEmWJbnsTE1WOlle2Uhn3vcmmR3a/yiDK5n/kOSPgIeAq4eOPwL8F+Aq4K6qOggcTPJm4MEkAN8A3gcc6j996eT51GdJUnfeRpMkdWfYSJK6M2wkSd0ZNpKk7gwbSVJ3ho0kqTvDRpLUnWEjSeru/wEaLQvmRflcQgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'subarachnoid'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For subarachnoid sub type we have 6,42,140 images labeled as 0 and 32,122 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Subdural"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    631766\n",
       "1     42496\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'subdural']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'subdural'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For Subdural sub type we have 6,31,766 images labeled as 0 and 42,496 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Any"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    577159\n",
       "1     97103\n",
       "Name: Label, dtype: int64"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df[train_df['sub_type'] == 'any']['Label'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Label', data=train_df[train_df['sub_type'] == 'any'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**<br/><br/>\n",
    "For any sub type we have 5,77,159 images labeled as 0 and 97,103 labelled as 1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Final Dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "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>sub_type</th>\n",
       "      <th>any</th>\n",
       "      <th>epidural</th>\n",
       "      <th>intraparenchymal</th>\n",
       "      <th>intraventricular</th>\n",
       "      <th>subarachnoid</th>\n",
       "      <th>subdural</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>file_name</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>ID_000039fa0.dcm</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",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>ID_00005679d.dcm</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",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>ID_00008ce3c.dcm</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",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>ID_0000950d7.dcm</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",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>ID_0000aee4b.dcm</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",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "sub_type          any  epidural  intraparenchymal  intraventricular  \\\n",
       "file_name                                                             \n",
       "ID_000039fa0.dcm    0         0                 0                 0   \n",
       "ID_00005679d.dcm    0         0                 0                 0   \n",
       "ID_00008ce3c.dcm    0         0                 0                 0   \n",
       "ID_0000950d7.dcm    0         0                 0                 0   \n",
       "ID_0000aee4b.dcm    0         0                 0                 0   \n",
       "\n",
       "sub_type          subarachnoid  subdural  \n",
       "file_name                                 \n",
       "ID_000039fa0.dcm             0         0  \n",
       "ID_00005679d.dcm             0         0  \n",
       "ID_00008ce3c.dcm             0         0  \n",
       "ID_0000950d7.dcm             0         0  \n",
       "ID_0000aee4b.dcm             0         0  "
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_final_df = pd.pivot_table(train_df.drop(columns='ID'), index=\"file_name\", \\\n",
    "                                columns=\"sub_type\", values=\"Label\")\n",
    "train_final_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA8kAAAHGCAYAAABHBcllAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3Xu0ZGV5rv3r5mSjgJwaBZrYqB0TFBRoAY1bBQwC7tAmkQhDhSAGRz5E3OwkQr4PQYgJiSYmqNtsjCCoAfGQgIZjUDTGA3QrggKObkVhAYEWEDkEgfb5/qh34aJdJxaralLF9RujRtV8ala9T49Rvda6a77znakqJEmSJEkSrNN1A5IkSZIkPVEYkiVJkiRJagzJkiRJkiQ1hmRJkiRJkhpDsiRJkiRJjSFZkiRJkqTGkCxJkiRJUmNIliRJkiSp6VtITvK8JFdNuP0syTuSbJ7k0iQr2/1mbf8kOTXJqiRXJ9llwnsd2vZfmeTQCfVdk1zTXnNqkrT6pGNIkiRJkjSdVFX/B0nWBW4GdgeOBO6sqlOSHAtsVlXvTLI/cBSwf9vvH6pq9ySbA8uBpUABK4Bdq+quJFcARwPfAC4ATq2qC5P8zWRjTNfjlltuWYsXL+7Dv16SJEmS1LUVK1b8pKoWzrTfeoNoBtgb+EFV/TjJMuCVrX4mcDnwTmAZcFb1Uvs3kmyaZOu276VVdSdAkkuBfZNcDmxSVV9v9bOA1wIXtveabIwpLV68mOXLl8/DP1WSJEmS9EST5Mez2W9Q5yQfBJzdHj+jqm4FaPdbtfq2wE0TXjPWatPVxyapTzfGoyQ5IsnyJMtXr149x3+aJEmSJGlU9D0kJ9kAOAD49Ey7TlKrOdRnrapOq6qlVbV04cIZj7pLkiRJkkbcII4k7wd8q6pua9u3tWnUtPvbW30M2G7C6xYBt8xQXzRJfboxJEmSJEma0iDOST6YX061BjgfOBQ4pd2fN6H+tiTn0Fu46+6qujXJxcBfTliheh/guKq6M8k9SfYAvgkcAnxghjEkSZIkSXPw0EMPMTY2xgMPPNB1K9NasGABixYtYv3115/T6/sakpM8Ffht4K0TyqcA5yY5HLgROLDVL6C3svUq4H7gMIAWhk8Grmz7nTS+iBfwx8DHgA3pLdh14QxjSJIkSZLmYGxsjI033pjFixfTrr77hFNV3HHHHYyNjbH99tvP6T36GpKr6n5gi7Vqd9Bb7XrtfYve5aEme5/TgdMnqS8HXjBJfdIxJEmSJElz88ADDzyhAzJAErbYYgsez8LMg1rdWpIkSZI05J7IAXnc4+3RkCxJkiRJUmNIliRJkiTNi4022mjW+5544om8733v69v7z5UhWZIkSZKkxpAsSZIkSeqbz3/+8+y+++7svPPOvOpVr+K222575LnvfOc77LXXXixZsoSPfOQjj9Tf+9738uIXv5iddtqJE044YaD9GpIlSZIkSX3zspe9jG984xt8+9vf5qCDDuJv/uZvHnnu6quv5t/+7d/4+te/zkknncQtt9zCJZdcwsqVK7niiiu46qqrWLFiBV/5ylcG1m9fLwElSZIkSXpyGxsb4/Wvfz233norDz744KOuX7xs2TI23HBDNtxwQ/bcc0+uuOIKvvrVr3LJJZew8847A3DvvfeycuVKXv7ylw+kX0OyJEmSJKlvjjrqKI455hgOOOAALr/8ck488cRHnlv7ck1JqCqOO+443vrWtw640x5D8jzY9U/P6rqFgVnx3kO6bkGSJEnSELn77rvZdtttATjzzDMf9dx5553Hcccdx3333cfll1/OKaecwoYbbsjxxx/PG97wBjbaaCNuvvlm1l9/fbbaaquB9GtIliRJkiTNi/vvv59FixY9sn3MMcdw4okncuCBB7Ltttuyxx57cMMNNzzy/G677cZrXvMabrzxRo4//ni22WYbttlmG6677jpe8pKXAL3LPn3iE58wJEuSJEmShssvfvGLSevLli37ldrEaddrO/roozn66KN/pX7vvffOubfZcnVrSZIkSZIaQ7IkSZIkSY0hWZIkSZKkxpAsSZIkSVJjSJYkSZIkqTEkS5IkSZLUeAkoSRpxu/7pWV23MFAr3ntI1y1IkvSkMN9/Y8z2d/hFF13E0UcfzZo1a3jLW97CscceO699eCRZkiRJkjQU1qxZw5FHHsmFF17Itddey9lnn8211147r2MYkiVJkiRJQ+GKK67guc99Ls9+9rPZYIMNOOiggzjvvPPmdQxDsiRJkiRpKNx8881st912j2wvWrSIm2++eV7H8Jxk6QnoyXQOqeePSsPnyfQzCvw5JUlPJFX1K7Uk8zqGR5IlSZIkSUNh0aJF3HTTTY9sj42Nsc0228zrGIZk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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(16, 6))\n",
    "\n",
    "graph = sns.countplot(x=\"sub_type\", hue=\"Label\", data=(train_df))\n",
    "graph.set_xticklabels(graph.get_xticklabels(),rotation=90)\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}