{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {
        "id": "px7iWhHP3fIq"
      },
      "outputs": [],
      "source": [
        "import pandas as pd\n",
        "import numpy as np\n",
        "from sklearn.model_selection import train_test_split\n",
        "from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n",
        "from sklearn.tree import DecisionTreeClassifier\n",
        "from sklearn.ensemble import RandomForestClassifier\n",
        "from sklearn.naive_bayes import GaussianNB\n",
        "from sklearn.svm import SVC\n",
        "from sklearn.metrics import accuracy_score,confusion_matrix,classification_report,precision_score,recall_score,f1_score\n",
        "import matplotlib.pyplot as plt\n",
        "import seaborn as sns"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "data = pd.read_csv('/content/diabetes.csv')\n",
        "X = data.drop(columns=[\"Outcome\"])  # Features\n",
        "y = data[\"Outcome\"]"
      ],
      "metadata": {
        "id": "YAAcbE_L5n0b"
      },
      "execution_count": 3,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "data"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 423
        },
        "id": "Yw06feGy5pGr",
        "outputId": "18b10638-1dab-42a2-ed36-3f59f59e18d6"
      },
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "     PatientId  Pregnancies  Glucose  BloodPressure  SkinThickness  Insulin  \\\n",
              "0            1            6      148             72             35        0   \n",
              "1            2            1       85             66             29        0   \n",
              "2            3            8      183             64              0        0   \n",
              "3            4            1       89             66             23       94   \n",
              "4            5            0      137             40             35      168   \n",
              "..         ...          ...      ...            ...            ...      ...   \n",
              "763        764           10      101             76             48      180   \n",
              "764        765            2      122             70             27        0   \n",
              "765        766            5      121             72             23      112   \n",
              "766        767            1      126             60              0        0   \n",
              "767        768            1       93             70             31        0   \n",
              "\n",
              "      BMI  DiabetesPedigreeFunction  Age  Outcome  \n",
              "0    33.6                     0.627   50        1  \n",
              "1    26.6                     0.351   31        0  \n",
              "2    23.3                     0.672   32        1  \n",
              "3    28.1                     0.167   21        0  \n",
              "4    43.1                     2.288   33        1  \n",
              "..    ...                       ...  ...      ...  \n",
              "763  32.9                     0.171   63        0  \n",
              "764  36.8                     0.340   27        0  \n",
              "765  26.2                     0.245   30        0  \n",
              "766  30.1                     0.349   47        1  \n",
              "767  30.4                     0.315   23        0  \n",
              "\n",
              "[768 rows x 10 columns]"
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-156d3e7a-801d-4791-b382-994086fedc31\" class=\"colab-df-container\">\n",
              "    <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>PatientId</th>\n",
              "      <th>Pregnancies</th>\n",
              "      <th>Glucose</th>\n",
              "      <th>BloodPressure</th>\n",
              "      <th>SkinThickness</th>\n",
              "      <th>Insulin</th>\n",
              "      <th>BMI</th>\n",
              "      <th>DiabetesPedigreeFunction</th>\n",
              "      <th>Age</th>\n",
              "      <th>Outcome</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1</td>\n",
              "      <td>6</td>\n",
              "      <td>148</td>\n",
              "      <td>72</td>\n",
              "      <td>35</td>\n",
              "      <td>0</td>\n",
              "      <td>33.6</td>\n",
              "      <td>0.627</td>\n",
              "      <td>50</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>2</td>\n",
              "      <td>1</td>\n",
              "      <td>85</td>\n",
              "      <td>66</td>\n",
              "      <td>29</td>\n",
              "      <td>0</td>\n",
              "      <td>26.6</td>\n",
              "      <td>0.351</td>\n",
              "      <td>31</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>3</td>\n",
              "      <td>8</td>\n",
              "      <td>183</td>\n",
              "      <td>64</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "      <td>23.3</td>\n",
              "      <td>0.672</td>\n",
              "      <td>32</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>4</td>\n",
              "      <td>1</td>\n",
              "      <td>89</td>\n",
              "      <td>66</td>\n",
              "      <td>23</td>\n",
              "      <td>94</td>\n",
              "      <td>28.1</td>\n",
              "      <td>0.167</td>\n",
              "      <td>21</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>5</td>\n",
              "      <td>0</td>\n",
              "      <td>137</td>\n",
              "      <td>40</td>\n",
              "      <td>35</td>\n",
              "      <td>168</td>\n",
              "      <td>43.1</td>\n",
              "      <td>2.288</td>\n",
              "      <td>33</td>\n",
              "      <td>1</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",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>763</th>\n",
              "      <td>764</td>\n",
              "      <td>10</td>\n",
              "      <td>101</td>\n",
              "      <td>76</td>\n",
              "      <td>48</td>\n",
              "      <td>180</td>\n",
              "      <td>32.9</td>\n",
              "      <td>0.171</td>\n",
              "      <td>63</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>764</th>\n",
              "      <td>765</td>\n",
              "      <td>2</td>\n",
              "      <td>122</td>\n",
              "      <td>70</td>\n",
              "      <td>27</td>\n",
              "      <td>0</td>\n",
              "      <td>36.8</td>\n",
              "      <td>0.340</td>\n",
              "      <td>27</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>765</th>\n",
              "      <td>766</td>\n",
              "      <td>5</td>\n",
              "      <td>121</td>\n",
              "      <td>72</td>\n",
              "      <td>23</td>\n",
              "      <td>112</td>\n",
              "      <td>26.2</td>\n",
              "      <td>0.245</td>\n",
              "      <td>30</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>766</th>\n",
              "      <td>767</td>\n",
              "      <td>1</td>\n",
              "      <td>126</td>\n",
              "      <td>60</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "      <td>30.1</td>\n",
              "      <td>0.349</td>\n",
              "      <td>47</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>767</th>\n",
              "      <td>768</td>\n",
              "      <td>1</td>\n",
              "      <td>93</td>\n",
              "      <td>70</td>\n",
              "      <td>31</td>\n",
              "      <td>0</td>\n",
              "      <td>30.4</td>\n",
              "      <td>0.315</td>\n",
              "      <td>23</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>768 rows × 10 columns</p>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-156d3e7a-801d-4791-b382-994086fedc31')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-156d3e7a-801d-4791-b382-994086fedc31 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-156d3e7a-801d-4791-b382-994086fedc31');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "    <div id=\"df-f65d86ba-007b-42a6-8bc3-1bcd25890584\">\n",
              "      <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-f65d86ba-007b-42a6-8bc3-1bcd25890584')\"\n",
              "                title=\"Suggest charts\"\n",
              "                style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "      </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "      <script>\n",
              "        async function quickchart(key) {\n",
              "          const quickchartButtonEl =\n",
              "            document.querySelector('#' + key + ' button');\n",
              "          quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "          quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "          try {\n",
              "            const charts = await google.colab.kernel.invokeFunction(\n",
              "                'suggestCharts', [key], {});\n",
              "          } catch (error) {\n",
              "            console.error('Error during call to suggestCharts:', error);\n",
              "          }\n",
              "          quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "          quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "        }\n",
              "        (() => {\n",
              "          let quickchartButtonEl =\n",
              "            document.querySelector('#df-f65d86ba-007b-42a6-8bc3-1bcd25890584 button');\n",
              "          quickchartButtonEl.style.display =\n",
              "            google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "        })();\n",
              "      </script>\n",
              "    </div>\n",
              "\n",
              "  <div id=\"id_09a5fd2d-a1dd-4c61-8f7f-ac242a42d88f\">\n",
              "    <style>\n",
              "      .colab-df-generate {\n",
              "        background-color: #E8F0FE;\n",
              "        border: none;\n",
              "        border-radius: 50%;\n",
              "        cursor: pointer;\n",
              "        display: none;\n",
              "        fill: #1967D2;\n",
              "        height: 32px;\n",
              "        padding: 0 0 0 0;\n",
              "        width: 32px;\n",
              "      }\n",
              "\n",
              "      .colab-df-generate:hover {\n",
              "        background-color: #E2EBFA;\n",
              "        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "        fill: #174EA6;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate {\n",
              "        background-color: #3B4455;\n",
              "        fill: #D2E3FC;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate:hover {\n",
              "        background-color: #434B5C;\n",
              "        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "        fill: #FFFFFF;\n",
              "      }\n",
              "    </style>\n",
              "    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('data')\"\n",
              "            title=\"Generate code using this dataframe.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "    <script>\n",
              "      (() => {\n",
              "      const buttonEl =\n",
              "        document.querySelector('#id_09a5fd2d-a1dd-4c61-8f7f-ac242a42d88f button.colab-df-generate');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      buttonEl.onclick = () => {\n",
              "        google.colab.notebook.generateWithVariable('data');\n",
              "      }\n",
              "      })();\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "data",
              "summary": "{\n  \"name\": \"data\",\n  \"rows\": 768,\n  \"fields\": [\n    {\n      \"column\": \"PatientId\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 221,\n        \"min\": 1,\n        \"max\": 768,\n        \"num_unique_values\": 768,\n        \"samples\": [\n          669,\n          325,\n          625\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Pregnancies\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 3,\n        \"min\": 0,\n        \"max\": 17,\n        \"num_unique_values\": 17,\n        \"samples\": [\n          6,\n          1,\n          3\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Glucose\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 31,\n        \"min\": 0,\n        \"max\": 199,\n        \"num_unique_values\": 136,\n        \"samples\": [\n          151,\n          101,\n          112\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"BloodPressure\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 19,\n        \"min\": 0,\n        \"max\": 122,\n        \"num_unique_values\": 47,\n        \"samples\": [\n          86,\n          46,\n          85\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"SkinThickness\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 15,\n        \"min\": 0,\n        \"max\": 99,\n        \"num_unique_values\": 51,\n        \"samples\": [\n          7,\n          12,\n          48\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Insulin\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 115,\n        \"min\": 0,\n        \"max\": 846,\n        \"num_unique_values\": 186,\n        \"samples\": [\n          52,\n          41,\n          183\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"BMI\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 7.8841603203754405,\n        \"min\": 0.0,\n        \"max\": 67.1,\n        \"num_unique_values\": 248,\n        \"samples\": [\n          19.9,\n          31.0,\n          38.1\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"DiabetesPedigreeFunction\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.33132859501277484,\n        \"min\": 0.078,\n        \"max\": 2.42,\n        \"num_unique_values\": 517,\n        \"samples\": [\n          1.731,\n          0.426,\n          0.138\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Age\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 11,\n        \"min\": 21,\n        \"max\": 81,\n        \"num_unique_values\": 52,\n        \"samples\": [\n          60,\n          47,\n          72\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Outcome\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0,\n        \"min\": 0,\n        \"max\": 1,\n        \"num_unique_values\": 2,\n        \"samples\": [\n          0,\n          1\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {},
          "execution_count": 4
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "#SPLITING ALL DATA\n",
        "X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=0.2, stratify=y, random_state=42)"
      ],
      "metadata": {
        "id": "C7zcsWEt5rwo"
      },
      "execution_count": 6,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "Decision Tree"
      ],
      "metadata": {
        "id": "hGltfvNv515W"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "data.head()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        },
        "id": "SwfzYnMf58rl",
        "outputId": "a7dcb4e4-c14f-49ef-d652-35fcc549a47c"
      },
      "execution_count": 7,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "   PatientId  Pregnancies  Glucose  BloodPressure  SkinThickness  Insulin  \\\n",
              "0          1            6      148             72             35        0   \n",
              "1          2            1       85             66             29        0   \n",
              "2          3            8      183             64              0        0   \n",
              "3          4            1       89             66             23       94   \n",
              "4          5            0      137             40             35      168   \n",
              "\n",
              "    BMI  DiabetesPedigreeFunction  Age  Outcome  \n",
              "0  33.6                     0.627   50        1  \n",
              "1  26.6                     0.351   31        0  \n",
              "2  23.3                     0.672   32        1  \n",
              "3  28.1                     0.167   21        0  \n",
              "4  43.1                     2.288   33        1  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-1943869b-ad6c-4f4e-8cd3-68d2f0a16261\" class=\"colab-df-container\">\n",
              "    <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>PatientId</th>\n",
              "      <th>Pregnancies</th>\n",
              "      <th>Glucose</th>\n",
              "      <th>BloodPressure</th>\n",
              "      <th>SkinThickness</th>\n",
              "      <th>Insulin</th>\n",
              "      <th>BMI</th>\n",
              "      <th>DiabetesPedigreeFunction</th>\n",
              "      <th>Age</th>\n",
              "      <th>Outcome</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1</td>\n",
              "      <td>6</td>\n",
              "      <td>148</td>\n",
              "      <td>72</td>\n",
              "      <td>35</td>\n",
              "      <td>0</td>\n",
              "      <td>33.6</td>\n",
              "      <td>0.627</td>\n",
              "      <td>50</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>2</td>\n",
              "      <td>1</td>\n",
              "      <td>85</td>\n",
              "      <td>66</td>\n",
              "      <td>29</td>\n",
              "      <td>0</td>\n",
              "      <td>26.6</td>\n",
              "      <td>0.351</td>\n",
              "      <td>31</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>3</td>\n",
              "      <td>8</td>\n",
              "      <td>183</td>\n",
              "      <td>64</td>\n",
              "      <td>0</td>\n",
              "      <td>0</td>\n",
              "      <td>23.3</td>\n",
              "      <td>0.672</td>\n",
              "      <td>32</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>4</td>\n",
              "      <td>1</td>\n",
              "      <td>89</td>\n",
              "      <td>66</td>\n",
              "      <td>23</td>\n",
              "      <td>94</td>\n",
              "      <td>28.1</td>\n",
              "      <td>0.167</td>\n",
              "      <td>21</td>\n",
              "      <td>0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>5</td>\n",
              "      <td>0</td>\n",
              "      <td>137</td>\n",
              "      <td>40</td>\n",
              "      <td>35</td>\n",
              "      <td>168</td>\n",
              "      <td>43.1</td>\n",
              "      <td>2.288</td>\n",
              "      <td>33</td>\n",
              "      <td>1</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-1943869b-ad6c-4f4e-8cd3-68d2f0a16261')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-1943869b-ad6c-4f4e-8cd3-68d2f0a16261 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-1943869b-ad6c-4f4e-8cd3-68d2f0a16261');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "    <div id=\"df-5d339457-6a6d-4354-8088-b2bbe7397511\">\n",
              "      <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-5d339457-6a6d-4354-8088-b2bbe7397511')\"\n",
              "                title=\"Suggest charts\"\n",
              "                style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "      </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "      <script>\n",
              "        async function quickchart(key) {\n",
              "          const quickchartButtonEl =\n",
              "            document.querySelector('#' + key + ' button');\n",
              "          quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "          quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "          try {\n",
              "            const charts = await google.colab.kernel.invokeFunction(\n",
              "                'suggestCharts', [key], {});\n",
              "          } catch (error) {\n",
              "            console.error('Error during call to suggestCharts:', error);\n",
              "          }\n",
              "          quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "          quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "        }\n",
              "        (() => {\n",
              "          let quickchartButtonEl =\n",
              "            document.querySelector('#df-5d339457-6a6d-4354-8088-b2bbe7397511 button');\n",
              "          quickchartButtonEl.style.display =\n",
              "            google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "        })();\n",
              "      </script>\n",
              "    </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "data",
              "summary": "{\n  \"name\": \"data\",\n  \"rows\": 768,\n  \"fields\": [\n    {\n      \"column\": \"PatientId\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 221,\n        \"min\": 1,\n        \"max\": 768,\n        \"num_unique_values\": 768,\n        \"samples\": [\n          669,\n          325,\n          625\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Pregnancies\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 3,\n        \"min\": 0,\n        \"max\": 17,\n        \"num_unique_values\": 17,\n        \"samples\": [\n          6,\n          1,\n          3\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Glucose\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 31,\n        \"min\": 0,\n        \"max\": 199,\n        \"num_unique_values\": 136,\n        \"samples\": [\n          151,\n          101,\n          112\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"BloodPressure\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 19,\n        \"min\": 0,\n        \"max\": 122,\n        \"num_unique_values\": 47,\n        \"samples\": [\n          86,\n          46,\n          85\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"SkinThickness\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 15,\n        \"min\": 0,\n        \"max\": 99,\n        \"num_unique_values\": 51,\n        \"samples\": [\n          7,\n          12,\n          48\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Insulin\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 115,\n        \"min\": 0,\n        \"max\": 846,\n        \"num_unique_values\": 186,\n        \"samples\": [\n          52,\n          41,\n          183\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"BMI\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 7.8841603203754405,\n        \"min\": 0.0,\n        \"max\": 67.1,\n        \"num_unique_values\": 248,\n        \"samples\": [\n          19.9,\n          31.0,\n          38.1\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"DiabetesPedigreeFunction\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.33132859501277484,\n        \"min\": 0.078,\n        \"max\": 2.42,\n        \"num_unique_values\": 517,\n        \"samples\": [\n          1.731,\n          0.426,\n          0.138\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Age\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 11,\n        \"min\": 21,\n        \"max\": 81,\n        \"num_unique_values\": 52,\n        \"samples\": [\n          60,\n          47,\n          72\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Outcome\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0,\n        \"min\": 0,\n        \"max\": 1,\n        \"num_unique_values\": 2,\n        \"samples\": [\n          0,\n          1\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {},
          "execution_count": 7
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "x =  data.drop(columns = 'Outcome',axis=1)\n",
        "y = data['Outcome']"
      ],
      "metadata": {
        "id": "sgkAPcAw6CCI"
      },
      "execution_count": 8,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "\n",
        "#TRAINING MODEL\n",
        "decisiontree_model =  DecisionTreeClassifier(random_state=42)\n",
        "decisiontree_model.fit(X_train, Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 80
        },
        "id": "vVeSTu4S6Ejc",
        "outputId": "1501d751-3fd9-4b02-9754-4b1f3f5fb304"
      },
      "execution_count": 9,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "DecisionTreeClassifier(random_state=42)"
            ],
            "text/html": [
              "<style>#sk-container-id-1 {\n",
              "  /* Definition of color scheme common for light and dark mode */\n",
              "  --sklearn-color-text: #000;\n",
              "  --sklearn-color-text-muted: #666;\n",
              "  --sklearn-color-line: gray;\n",
              "  /* Definition of color scheme for unfitted estimators */\n",
              "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
              "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
              "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
              "  --sklearn-color-unfitted-level-3: chocolate;\n",
              "  /* Definition of color scheme for fitted estimators */\n",
              "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
              "  --sklearn-color-fitted-level-1: #d4ebff;\n",
              "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
              "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
              "\n",
              "  /* Specific color for light theme */\n",
              "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
              "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-icon: #696969;\n",
              "\n",
              "  @media (prefers-color-scheme: dark) {\n",
              "    /* Redefinition of color scheme for dark theme */\n",
              "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
              "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-icon: #878787;\n",
              "  }\n",
              "}\n",
              "\n",
              "#sk-container-id-1 {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 pre {\n",
              "  padding: 0;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 input.sk-hidden--visually {\n",
              "  border: 0;\n",
              "  clip: rect(1px 1px 1px 1px);\n",
              "  clip: rect(1px, 1px, 1px, 1px);\n",
              "  height: 1px;\n",
              "  margin: -1px;\n",
              "  overflow: hidden;\n",
              "  padding: 0;\n",
              "  position: absolute;\n",
              "  width: 1px;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-dashed-wrapped {\n",
              "  border: 1px dashed var(--sklearn-color-line);\n",
              "  margin: 0 0.4em 0.5em 0.4em;\n",
              "  box-sizing: border-box;\n",
              "  padding-bottom: 0.4em;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-container {\n",
              "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
              "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
              "     so we also need the `!important` here to be able to override the\n",
              "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
              "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
              "  display: inline-block !important;\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-text-repr-fallback {\n",
              "  display: none;\n",
              "}\n",
              "\n",
              "div.sk-parallel-item,\n",
              "div.sk-serial,\n",
              "div.sk-item {\n",
              "  /* draw centered vertical line to link estimators */\n",
              "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
              "  background-size: 2px 100%;\n",
              "  background-repeat: no-repeat;\n",
              "  background-position: center center;\n",
              "}\n",
              "\n",
              "/* Parallel-specific style estimator block */\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel-item::after {\n",
              "  content: \"\";\n",
              "  width: 100%;\n",
              "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
              "  flex-grow: 1;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel {\n",
              "  display: flex;\n",
              "  align-items: stretch;\n",
              "  justify-content: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel-item {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel-item:first-child::after {\n",
              "  align-self: flex-end;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel-item:last-child::after {\n",
              "  align-self: flex-start;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-parallel-item:only-child::after {\n",
              "  width: 0;\n",
              "}\n",
              "\n",
              "/* Serial-specific style estimator block */\n",
              "\n",
              "#sk-container-id-1 div.sk-serial {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "  align-items: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  padding-right: 1em;\n",
              "  padding-left: 1em;\n",
              "}\n",
              "\n",
              "\n",
              "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
              "clickable and can be expanded/collapsed.\n",
              "- Pipeline and ColumnTransformer use this feature and define the default style\n",
              "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
              "*/\n",
              "\n",
              "/* Pipeline and ColumnTransformer style (default) */\n",
              "\n",
              "#sk-container-id-1 div.sk-toggleable {\n",
              "  /* Default theme specific background. It is overwritten whether we have a\n",
              "  specific estimator or a Pipeline/ColumnTransformer */\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "/* Toggleable label */\n",
              "#sk-container-id-1 label.sk-toggleable__label {\n",
              "  cursor: pointer;\n",
              "  display: flex;\n",
              "  width: 100%;\n",
              "  margin-bottom: 0;\n",
              "  padding: 0.5em;\n",
              "  box-sizing: border-box;\n",
              "  text-align: center;\n",
              "  align-items: start;\n",
              "  justify-content: space-between;\n",
              "  gap: 0.5em;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 label.sk-toggleable__label .caption {\n",
              "  font-size: 0.6rem;\n",
              "  font-weight: lighter;\n",
              "  color: var(--sklearn-color-text-muted);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 label.sk-toggleable__label-arrow:before {\n",
              "  /* Arrow on the left of the label */\n",
              "  content: \"▸\";\n",
              "  float: left;\n",
              "  margin-right: 0.25em;\n",
              "  color: var(--sklearn-color-icon);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "/* Toggleable content - dropdown */\n",
              "\n",
              "#sk-container-id-1 div.sk-toggleable__content {\n",
              "  max-height: 0;\n",
              "  max-width: 0;\n",
              "  overflow: hidden;\n",
              "  text-align: left;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-toggleable__content.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-toggleable__content pre {\n",
              "  margin: 0.2em;\n",
              "  border-radius: 0.25em;\n",
              "  color: var(--sklearn-color-text);\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-toggleable__content.fitted pre {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
              "  /* Expand drop-down */\n",
              "  max-height: 200px;\n",
              "  max-width: 100%;\n",
              "  overflow: auto;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
              "  content: \"▾\";\n",
              "}\n",
              "\n",
              "/* Pipeline/ColumnTransformer-specific style */\n",
              "\n",
              "#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator-specific style */\n",
              "\n",
              "/* Colorize estimator box */\n",
              "#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-label label.sk-toggleable__label,\n",
              "#sk-container-id-1 div.sk-label label {\n",
              "  /* The background is the default theme color */\n",
              "  color: var(--sklearn-color-text-on-default-background);\n",
              "}\n",
              "\n",
              "/* On hover, darken the color of the background */\n",
              "#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "/* Label box, darken color on hover, fitted */\n",
              "#sk-container-id-1 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator label */\n",
              "\n",
              "#sk-container-id-1 div.sk-label label {\n",
              "  font-family: monospace;\n",
              "  font-weight: bold;\n",
              "  display: inline-block;\n",
              "  line-height: 1.2em;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-label-container {\n",
              "  text-align: center;\n",
              "}\n",
              "\n",
              "/* Estimator-specific */\n",
              "#sk-container-id-1 div.sk-estimator {\n",
              "  font-family: monospace;\n",
              "  border: 1px dotted var(--sklearn-color-border-box);\n",
              "  border-radius: 0.25em;\n",
              "  box-sizing: border-box;\n",
              "  margin-bottom: 0.5em;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-estimator.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "/* on hover */\n",
              "#sk-container-id-1 div.sk-estimator:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-1 div.sk-estimator.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
              "\n",
              "/* Common style for \"i\" and \"?\" */\n",
              "\n",
              ".sk-estimator-doc-link,\n",
              "a:link.sk-estimator-doc-link,\n",
              "a:visited.sk-estimator-doc-link {\n",
              "  float: right;\n",
              "  font-size: smaller;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1em;\n",
              "  height: 1em;\n",
              "  width: 1em;\n",
              "  text-decoration: none !important;\n",
              "  margin-left: 0.5em;\n",
              "  text-align: center;\n",
              "  /* unfitted */\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted,\n",
              "a:link.sk-estimator-doc-link.fitted,\n",
              "a:visited.sk-estimator-doc-link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "/* Span, style for the box shown on hovering the info icon */\n",
              ".sk-estimator-doc-link span {\n",
              "  display: none;\n",
              "  z-index: 9999;\n",
              "  position: relative;\n",
              "  font-weight: normal;\n",
              "  right: .2ex;\n",
              "  padding: .5ex;\n",
              "  margin: .5ex;\n",
              "  width: min-content;\n",
              "  min-width: 20ex;\n",
              "  max-width: 50ex;\n",
              "  color: var(--sklearn-color-text);\n",
              "  box-shadow: 2pt 2pt 4pt #999;\n",
              "  /* unfitted */\n",
              "  background: var(--sklearn-color-unfitted-level-0);\n",
              "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted span {\n",
              "  /* fitted */\n",
              "  background: var(--sklearn-color-fitted-level-0);\n",
              "  border: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link:hover span {\n",
              "  display: block;\n",
              "}\n",
              "\n",
              "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
              "\n",
              "#sk-container-id-1 a.estimator_doc_link {\n",
              "  float: right;\n",
              "  font-size: 1rem;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1rem;\n",
              "  height: 1rem;\n",
              "  width: 1rem;\n",
              "  text-decoration: none;\n",
              "  /* unfitted */\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 a.estimator_doc_link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "#sk-container-id-1 a.estimator_doc_link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "#sk-container-id-1 a.estimator_doc_link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>DecisionTreeClassifier(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 fitted 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 fitted sk-toggleable__label-arrow\"><div><div>DecisionTreeClassifier</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.tree.DecisionTreeClassifier.html\">?<span>Documentation for DecisionTreeClassifier</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>DecisionTreeClassifier(random_state=42)</pre></div> </div></div></div></div>"
            ]
          },
          "metadata": {},
          "execution_count": 9
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "y_pred_dt = decisiontree_model.predict(X_test)\n",
        "\n",
        "accuracy = accuracy_score(Y_test, y_pred_dt)\n",
        "precision = precision_score(Y_test, y_pred_dt)\n",
        "recall = recall_score(Y_test, y_pred_dt)\n",
        "f1 = f1_score(Y_test, y_pred_dt)\n",
        "\n",
        "print(\"Accuracy:\", accuracy)\n",
        "print(\"Precision:\", precision)\n",
        "print(\"Recall:\", recall)\n",
        "print(\"F1 Score:\", f1)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "q0nRAge96Hks",
        "outputId": "76fb7a79-fc8b-49c7-c795-a3912eee1924"
      },
      "execution_count": 10,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Accuracy: 0.6883116883116883\n",
            "Precision: 0.5576923076923077\n",
            "Recall: 0.5370370370370371\n",
            "F1 Score: 0.5471698113207547\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "CM = confusion_matrix(Y_test, y_pred_dt)\n",
        "plt.figure(figsize=(3, 4))\n",
        "sns.heatmap(CM, annot=True, fmt='d', cmap='Blues')\n",
        "plt.xlabel('Predicted')\n",
        "plt.ylabel('Actual')\n",
        "plt.title('Confusion Matrix')\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 410
        },
        "id": "Cpuna4BP6Joo",
        "outputId": "98600549-2b51-4754-cf87-41c5b2a54166"
      },
      "execution_count": 11,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 300x400 with 2 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "Random Forest"
      ],
      "metadata": {
        "id": "ji4cmcvt6Mwd"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "#TRAINING THE MODEL\n",
        "randomforest_model = RandomForestClassifier(n_estimators=100,random_state=42)\n",
        "randomforest_model.fit(X_train, Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 80
        },
        "id": "2_qpJph_6Oc3",
        "outputId": "a4d261e9-3823-4157-a8ff-0778ca6716a9"
      },
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "RandomForestClassifier(random_state=42)"
            ],
            "text/html": [
              "<style>#sk-container-id-2 {\n",
              "  /* Definition of color scheme common for light and dark mode */\n",
              "  --sklearn-color-text: #000;\n",
              "  --sklearn-color-text-muted: #666;\n",
              "  --sklearn-color-line: gray;\n",
              "  /* Definition of color scheme for unfitted estimators */\n",
              "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
              "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
              "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
              "  --sklearn-color-unfitted-level-3: chocolate;\n",
              "  /* Definition of color scheme for fitted estimators */\n",
              "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
              "  --sklearn-color-fitted-level-1: #d4ebff;\n",
              "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
              "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
              "\n",
              "  /* Specific color for light theme */\n",
              "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
              "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-icon: #696969;\n",
              "\n",
              "  @media (prefers-color-scheme: dark) {\n",
              "    /* Redefinition of color scheme for dark theme */\n",
              "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
              "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-icon: #878787;\n",
              "  }\n",
              "}\n",
              "\n",
              "#sk-container-id-2 {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 pre {\n",
              "  padding: 0;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 input.sk-hidden--visually {\n",
              "  border: 0;\n",
              "  clip: rect(1px 1px 1px 1px);\n",
              "  clip: rect(1px, 1px, 1px, 1px);\n",
              "  height: 1px;\n",
              "  margin: -1px;\n",
              "  overflow: hidden;\n",
              "  padding: 0;\n",
              "  position: absolute;\n",
              "  width: 1px;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-dashed-wrapped {\n",
              "  border: 1px dashed var(--sklearn-color-line);\n",
              "  margin: 0 0.4em 0.5em 0.4em;\n",
              "  box-sizing: border-box;\n",
              "  padding-bottom: 0.4em;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-container {\n",
              "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
              "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
              "     so we also need the `!important` here to be able to override the\n",
              "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
              "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
              "  display: inline-block !important;\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-text-repr-fallback {\n",
              "  display: none;\n",
              "}\n",
              "\n",
              "div.sk-parallel-item,\n",
              "div.sk-serial,\n",
              "div.sk-item {\n",
              "  /* draw centered vertical line to link estimators */\n",
              "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
              "  background-size: 2px 100%;\n",
              "  background-repeat: no-repeat;\n",
              "  background-position: center center;\n",
              "}\n",
              "\n",
              "/* Parallel-specific style estimator block */\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel-item::after {\n",
              "  content: \"\";\n",
              "  width: 100%;\n",
              "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
              "  flex-grow: 1;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel {\n",
              "  display: flex;\n",
              "  align-items: stretch;\n",
              "  justify-content: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel-item {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel-item:first-child::after {\n",
              "  align-self: flex-end;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel-item:last-child::after {\n",
              "  align-self: flex-start;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-parallel-item:only-child::after {\n",
              "  width: 0;\n",
              "}\n",
              "\n",
              "/* Serial-specific style estimator block */\n",
              "\n",
              "#sk-container-id-2 div.sk-serial {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "  align-items: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  padding-right: 1em;\n",
              "  padding-left: 1em;\n",
              "}\n",
              "\n",
              "\n",
              "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
              "clickable and can be expanded/collapsed.\n",
              "- Pipeline and ColumnTransformer use this feature and define the default style\n",
              "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
              "*/\n",
              "\n",
              "/* Pipeline and ColumnTransformer style (default) */\n",
              "\n",
              "#sk-container-id-2 div.sk-toggleable {\n",
              "  /* Default theme specific background. It is overwritten whether we have a\n",
              "  specific estimator or a Pipeline/ColumnTransformer */\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "/* Toggleable label */\n",
              "#sk-container-id-2 label.sk-toggleable__label {\n",
              "  cursor: pointer;\n",
              "  display: flex;\n",
              "  width: 100%;\n",
              "  margin-bottom: 0;\n",
              "  padding: 0.5em;\n",
              "  box-sizing: border-box;\n",
              "  text-align: center;\n",
              "  align-items: start;\n",
              "  justify-content: space-between;\n",
              "  gap: 0.5em;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 label.sk-toggleable__label .caption {\n",
              "  font-size: 0.6rem;\n",
              "  font-weight: lighter;\n",
              "  color: var(--sklearn-color-text-muted);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 label.sk-toggleable__label-arrow:before {\n",
              "  /* Arrow on the left of the label */\n",
              "  content: \"▸\";\n",
              "  float: left;\n",
              "  margin-right: 0.25em;\n",
              "  color: var(--sklearn-color-icon);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 label.sk-toggleable__label-arrow:hover:before {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "/* Toggleable content - dropdown */\n",
              "\n",
              "#sk-container-id-2 div.sk-toggleable__content {\n",
              "  max-height: 0;\n",
              "  max-width: 0;\n",
              "  overflow: hidden;\n",
              "  text-align: left;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-toggleable__content.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-toggleable__content pre {\n",
              "  margin: 0.2em;\n",
              "  border-radius: 0.25em;\n",
              "  color: var(--sklearn-color-text);\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-toggleable__content.fitted pre {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
              "  /* Expand drop-down */\n",
              "  max-height: 200px;\n",
              "  max-width: 100%;\n",
              "  overflow: auto;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
              "  content: \"▾\";\n",
              "}\n",
              "\n",
              "/* Pipeline/ColumnTransformer-specific style */\n",
              "\n",
              "#sk-container-id-2 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator-specific style */\n",
              "\n",
              "/* Colorize estimator box */\n",
              "#sk-container-id-2 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-label label.sk-toggleable__label,\n",
              "#sk-container-id-2 div.sk-label label {\n",
              "  /* The background is the default theme color */\n",
              "  color: var(--sklearn-color-text-on-default-background);\n",
              "}\n",
              "\n",
              "/* On hover, darken the color of the background */\n",
              "#sk-container-id-2 div.sk-label:hover label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "/* Label box, darken color on hover, fitted */\n",
              "#sk-container-id-2 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator label */\n",
              "\n",
              "#sk-container-id-2 div.sk-label label {\n",
              "  font-family: monospace;\n",
              "  font-weight: bold;\n",
              "  display: inline-block;\n",
              "  line-height: 1.2em;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-label-container {\n",
              "  text-align: center;\n",
              "}\n",
              "\n",
              "/* Estimator-specific */\n",
              "#sk-container-id-2 div.sk-estimator {\n",
              "  font-family: monospace;\n",
              "  border: 1px dotted var(--sklearn-color-border-box);\n",
              "  border-radius: 0.25em;\n",
              "  box-sizing: border-box;\n",
              "  margin-bottom: 0.5em;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-estimator.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "/* on hover */\n",
              "#sk-container-id-2 div.sk-estimator:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-2 div.sk-estimator.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
              "\n",
              "/* Common style for \"i\" and \"?\" */\n",
              "\n",
              ".sk-estimator-doc-link,\n",
              "a:link.sk-estimator-doc-link,\n",
              "a:visited.sk-estimator-doc-link {\n",
              "  float: right;\n",
              "  font-size: smaller;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1em;\n",
              "  height: 1em;\n",
              "  width: 1em;\n",
              "  text-decoration: none !important;\n",
              "  margin-left: 0.5em;\n",
              "  text-align: center;\n",
              "  /* unfitted */\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted,\n",
              "a:link.sk-estimator-doc-link.fitted,\n",
              "a:visited.sk-estimator-doc-link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "/* Span, style for the box shown on hovering the info icon */\n",
              ".sk-estimator-doc-link span {\n",
              "  display: none;\n",
              "  z-index: 9999;\n",
              "  position: relative;\n",
              "  font-weight: normal;\n",
              "  right: .2ex;\n",
              "  padding: .5ex;\n",
              "  margin: .5ex;\n",
              "  width: min-content;\n",
              "  min-width: 20ex;\n",
              "  max-width: 50ex;\n",
              "  color: var(--sklearn-color-text);\n",
              "  box-shadow: 2pt 2pt 4pt #999;\n",
              "  /* unfitted */\n",
              "  background: var(--sklearn-color-unfitted-level-0);\n",
              "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted span {\n",
              "  /* fitted */\n",
              "  background: var(--sklearn-color-fitted-level-0);\n",
              "  border: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link:hover span {\n",
              "  display: block;\n",
              "}\n",
              "\n",
              "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
              "\n",
              "#sk-container-id-2 a.estimator_doc_link {\n",
              "  float: right;\n",
              "  font-size: 1rem;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1rem;\n",
              "  height: 1rem;\n",
              "  width: 1rem;\n",
              "  text-decoration: none;\n",
              "  /* unfitted */\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 a.estimator_doc_link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "#sk-container-id-2 a.estimator_doc_link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "#sk-container-id-2 a.estimator_doc_link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "</style><div id=\"sk-container-id-2\" 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 fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-2\" type=\"checkbox\" checked><label for=\"sk-estimator-id-2\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow\"><div><div>RandomForestClassifier</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.ensemble.RandomForestClassifier.html\">?<span>Documentation for RandomForestClassifier</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>RandomForestClassifier(random_state=42)</pre></div> </div></div></div></div>"
            ]
          },
          "metadata": {},
          "execution_count": 12
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "y_pred_rf = randomforest_model.predict(X_test)"
      ],
      "metadata": {
        "id": "kJLFz2t96RqM"
      },
      "execution_count": 13,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "accuracy = accuracy_score(Y_test, y_pred_rf)\n",
        "precision = precision_score(Y_test, y_pred_rf)\n",
        "recall = recall_score(Y_test, y_pred_rf)\n",
        "f1 = f1_score(Y_test, y_pred_rf)\n",
        "\n",
        "print(\"Accuracy:\", accuracy)\n",
        "print(\"Precision:\", precision)\n",
        "print(\"Recall:\", recall)\n",
        "print(\"F1 Score:\", f1)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "1Bwny9xS6UBb",
        "outputId": "54969bb5-431f-46e4-8fc3-6fb75a8acc5b"
      },
      "execution_count": 14,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Accuracy: 0.7402597402597403\n",
            "Precision: 0.64\n",
            "Recall: 0.5925925925925926\n",
            "F1 Score: 0.6153846153846154\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "CM_rf = confusion_matrix(Y_test, y_pred_rf)\n",
        "plt.figure(figsize=(3, 4))\n",
        "sns.heatmap(CM_rf, annot=True, fmt='d', cmap='Blues')\n",
        "plt.xlabel('Predicted')\n",
        "plt.ylabel('Actual')\n",
        "plt.title('Confusion Matrix')\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 410
        },
        "id": "dMjAyDNW6VDi",
        "outputId": "3dbfb27c-ea4d-4b59-f90b-6f744f083043"
      },
      "execution_count": 15,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 300x400 with 2 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "Navie Bayes"
      ],
      "metadata": {
        "id": "Rwsm8uPr6Yn5"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "#TRAINING MODEL\n",
        "naivebayes_model = GaussianNB()\n",
        "naivebayes_model.fit(X_train, Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 80
        },
        "id": "KcD5iq_y6bOJ",
        "outputId": "d5391029-5b2d-4e20-c584-9eb9f28282df"
      },
      "execution_count": 16,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "GaussianNB()"
            ],
            "text/html": [
              "<style>#sk-container-id-3 {\n",
              "  /* Definition of color scheme common for light and dark mode */\n",
              "  --sklearn-color-text: #000;\n",
              "  --sklearn-color-text-muted: #666;\n",
              "  --sklearn-color-line: gray;\n",
              "  /* Definition of color scheme for unfitted estimators */\n",
              "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
              "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
              "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
              "  --sklearn-color-unfitted-level-3: chocolate;\n",
              "  /* Definition of color scheme for fitted estimators */\n",
              "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
              "  --sklearn-color-fitted-level-1: #d4ebff;\n",
              "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
              "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
              "\n",
              "  /* Specific color for light theme */\n",
              "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
              "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-icon: #696969;\n",
              "\n",
              "  @media (prefers-color-scheme: dark) {\n",
              "    /* Redefinition of color scheme for dark theme */\n",
              "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
              "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-icon: #878787;\n",
              "  }\n",
              "}\n",
              "\n",
              "#sk-container-id-3 {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 pre {\n",
              "  padding: 0;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 input.sk-hidden--visually {\n",
              "  border: 0;\n",
              "  clip: rect(1px 1px 1px 1px);\n",
              "  clip: rect(1px, 1px, 1px, 1px);\n",
              "  height: 1px;\n",
              "  margin: -1px;\n",
              "  overflow: hidden;\n",
              "  padding: 0;\n",
              "  position: absolute;\n",
              "  width: 1px;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-dashed-wrapped {\n",
              "  border: 1px dashed var(--sklearn-color-line);\n",
              "  margin: 0 0.4em 0.5em 0.4em;\n",
              "  box-sizing: border-box;\n",
              "  padding-bottom: 0.4em;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-container {\n",
              "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
              "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
              "     so we also need the `!important` here to be able to override the\n",
              "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
              "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
              "  display: inline-block !important;\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-text-repr-fallback {\n",
              "  display: none;\n",
              "}\n",
              "\n",
              "div.sk-parallel-item,\n",
              "div.sk-serial,\n",
              "div.sk-item {\n",
              "  /* draw centered vertical line to link estimators */\n",
              "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
              "  background-size: 2px 100%;\n",
              "  background-repeat: no-repeat;\n",
              "  background-position: center center;\n",
              "}\n",
              "\n",
              "/* Parallel-specific style estimator block */\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel-item::after {\n",
              "  content: \"\";\n",
              "  width: 100%;\n",
              "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
              "  flex-grow: 1;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel {\n",
              "  display: flex;\n",
              "  align-items: stretch;\n",
              "  justify-content: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel-item {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel-item:first-child::after {\n",
              "  align-self: flex-end;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel-item:last-child::after {\n",
              "  align-self: flex-start;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-parallel-item:only-child::after {\n",
              "  width: 0;\n",
              "}\n",
              "\n",
              "/* Serial-specific style estimator block */\n",
              "\n",
              "#sk-container-id-3 div.sk-serial {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "  align-items: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  padding-right: 1em;\n",
              "  padding-left: 1em;\n",
              "}\n",
              "\n",
              "\n",
              "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
              "clickable and can be expanded/collapsed.\n",
              "- Pipeline and ColumnTransformer use this feature and define the default style\n",
              "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
              "*/\n",
              "\n",
              "/* Pipeline and ColumnTransformer style (default) */\n",
              "\n",
              "#sk-container-id-3 div.sk-toggleable {\n",
              "  /* Default theme specific background. It is overwritten whether we have a\n",
              "  specific estimator or a Pipeline/ColumnTransformer */\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "/* Toggleable label */\n",
              "#sk-container-id-3 label.sk-toggleable__label {\n",
              "  cursor: pointer;\n",
              "  display: flex;\n",
              "  width: 100%;\n",
              "  margin-bottom: 0;\n",
              "  padding: 0.5em;\n",
              "  box-sizing: border-box;\n",
              "  text-align: center;\n",
              "  align-items: start;\n",
              "  justify-content: space-between;\n",
              "  gap: 0.5em;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 label.sk-toggleable__label .caption {\n",
              "  font-size: 0.6rem;\n",
              "  font-weight: lighter;\n",
              "  color: var(--sklearn-color-text-muted);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 label.sk-toggleable__label-arrow:before {\n",
              "  /* Arrow on the left of the label */\n",
              "  content: \"▸\";\n",
              "  float: left;\n",
              "  margin-right: 0.25em;\n",
              "  color: var(--sklearn-color-icon);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 label.sk-toggleable__label-arrow:hover:before {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "/* Toggleable content - dropdown */\n",
              "\n",
              "#sk-container-id-3 div.sk-toggleable__content {\n",
              "  max-height: 0;\n",
              "  max-width: 0;\n",
              "  overflow: hidden;\n",
              "  text-align: left;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-toggleable__content.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-toggleable__content pre {\n",
              "  margin: 0.2em;\n",
              "  border-radius: 0.25em;\n",
              "  color: var(--sklearn-color-text);\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-toggleable__content.fitted pre {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
              "  /* Expand drop-down */\n",
              "  max-height: 200px;\n",
              "  max-width: 100%;\n",
              "  overflow: auto;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
              "  content: \"▾\";\n",
              "}\n",
              "\n",
              "/* Pipeline/ColumnTransformer-specific style */\n",
              "\n",
              "#sk-container-id-3 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator-specific style */\n",
              "\n",
              "/* Colorize estimator box */\n",
              "#sk-container-id-3 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-label label.sk-toggleable__label,\n",
              "#sk-container-id-3 div.sk-label label {\n",
              "  /* The background is the default theme color */\n",
              "  color: var(--sklearn-color-text-on-default-background);\n",
              "}\n",
              "\n",
              "/* On hover, darken the color of the background */\n",
              "#sk-container-id-3 div.sk-label:hover label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "/* Label box, darken color on hover, fitted */\n",
              "#sk-container-id-3 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator label */\n",
              "\n",
              "#sk-container-id-3 div.sk-label label {\n",
              "  font-family: monospace;\n",
              "  font-weight: bold;\n",
              "  display: inline-block;\n",
              "  line-height: 1.2em;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-label-container {\n",
              "  text-align: center;\n",
              "}\n",
              "\n",
              "/* Estimator-specific */\n",
              "#sk-container-id-3 div.sk-estimator {\n",
              "  font-family: monospace;\n",
              "  border: 1px dotted var(--sklearn-color-border-box);\n",
              "  border-radius: 0.25em;\n",
              "  box-sizing: border-box;\n",
              "  margin-bottom: 0.5em;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-estimator.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "/* on hover */\n",
              "#sk-container-id-3 div.sk-estimator:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-3 div.sk-estimator.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
              "\n",
              "/* Common style for \"i\" and \"?\" */\n",
              "\n",
              ".sk-estimator-doc-link,\n",
              "a:link.sk-estimator-doc-link,\n",
              "a:visited.sk-estimator-doc-link {\n",
              "  float: right;\n",
              "  font-size: smaller;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1em;\n",
              "  height: 1em;\n",
              "  width: 1em;\n",
              "  text-decoration: none !important;\n",
              "  margin-left: 0.5em;\n",
              "  text-align: center;\n",
              "  /* unfitted */\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted,\n",
              "a:link.sk-estimator-doc-link.fitted,\n",
              "a:visited.sk-estimator-doc-link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "/* Span, style for the box shown on hovering the info icon */\n",
              ".sk-estimator-doc-link span {\n",
              "  display: none;\n",
              "  z-index: 9999;\n",
              "  position: relative;\n",
              "  font-weight: normal;\n",
              "  right: .2ex;\n",
              "  padding: .5ex;\n",
              "  margin: .5ex;\n",
              "  width: min-content;\n",
              "  min-width: 20ex;\n",
              "  max-width: 50ex;\n",
              "  color: var(--sklearn-color-text);\n",
              "  box-shadow: 2pt 2pt 4pt #999;\n",
              "  /* unfitted */\n",
              "  background: var(--sklearn-color-unfitted-level-0);\n",
              "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted span {\n",
              "  /* fitted */\n",
              "  background: var(--sklearn-color-fitted-level-0);\n",
              "  border: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link:hover span {\n",
              "  display: block;\n",
              "}\n",
              "\n",
              "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
              "\n",
              "#sk-container-id-3 a.estimator_doc_link {\n",
              "  float: right;\n",
              "  font-size: 1rem;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1rem;\n",
              "  height: 1rem;\n",
              "  width: 1rem;\n",
              "  text-decoration: none;\n",
              "  /* unfitted */\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 a.estimator_doc_link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "#sk-container-id-3 a.estimator_doc_link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "#sk-container-id-3 a.estimator_doc_link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "</style><div id=\"sk-container-id-3\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>GaussianNB()</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 fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-3\" type=\"checkbox\" checked><label for=\"sk-estimator-id-3\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow\"><div><div>GaussianNB</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.naive_bayes.GaussianNB.html\">?<span>Documentation for GaussianNB</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>GaussianNB()</pre></div> </div></div></div></div>"
            ]
          },
          "metadata": {},
          "execution_count": 16
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "#test\n",
        "y_pred_nb = naivebayes_model.predict(X_test)"
      ],
      "metadata": {
        "id": "U-LZGYlJ6g8F"
      },
      "execution_count": 17,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "accuracy = accuracy_score(Y_test, y_pred_nb)\n",
        "precision = precision_score(Y_test, y_pred_nb)\n",
        "recall = recall_score(Y_test, y_pred_nb)\n",
        "f1 = f1_score(Y_test, y_pred_nb)\n",
        "\n",
        "print(\"Accuracy:\", accuracy)\n",
        "print(\"Precision:\", precision)\n",
        "print(\"Recall:\", recall)\n",
        "print(\"F1 Score:\", f1)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "n-tqDc2O6i_3",
        "outputId": "757ec522-67d7-48b6-ecce-dbea52918c59"
      },
      "execution_count": 18,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Accuracy: 0.7142857142857143\n",
            "Precision: 0.5862068965517241\n",
            "Recall: 0.6296296296296297\n",
            "F1 Score: 0.6071428571428571\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "CM_nb = confusion_matrix(Y_test, y_pred_nb)\n",
        "plt.figure(figsize=(3, 4))\n",
        "sns.heatmap(CM_nb, annot=True, fmt='d', cmap='Blues')\n",
        "plt.xlabel('Predicted')\n",
        "plt.ylabel('Actual')\n",
        "plt.title('Confusion Matrix')"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 427
        },
        "id": "nS45LTBT6mHy",
        "outputId": "de49207c-5b70-4b7a-bb5f-40bbc3264039"
      },
      "execution_count": 19,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "Text(0.5, 1.0, 'Confusion Matrix')"
            ]
          },
          "metadata": {},
          "execution_count": 19
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 300x400 with 2 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "Support Vector Machine"
      ],
      "metadata": {
        "id": "5RyWkdaV6op3"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "svm_model = SVC(kernel='linear', random_state=42)\n",
        "svm_model.fit(X_train, Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 80
        },
        "id": "0_eOUyhg6q-P",
        "outputId": "01960c89-523d-49ec-a891-f831a5b46ed0"
      },
      "execution_count": 20,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "SVC(kernel='linear', random_state=42)"
            ],
            "text/html": [
              "<style>#sk-container-id-4 {\n",
              "  /* Definition of color scheme common for light and dark mode */\n",
              "  --sklearn-color-text: #000;\n",
              "  --sklearn-color-text-muted: #666;\n",
              "  --sklearn-color-line: gray;\n",
              "  /* Definition of color scheme for unfitted estimators */\n",
              "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
              "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
              "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
              "  --sklearn-color-unfitted-level-3: chocolate;\n",
              "  /* Definition of color scheme for fitted estimators */\n",
              "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
              "  --sklearn-color-fitted-level-1: #d4ebff;\n",
              "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
              "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
              "\n",
              "  /* Specific color for light theme */\n",
              "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
              "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-icon: #696969;\n",
              "\n",
              "  @media (prefers-color-scheme: dark) {\n",
              "    /* Redefinition of color scheme for dark theme */\n",
              "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
              "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-icon: #878787;\n",
              "  }\n",
              "}\n",
              "\n",
              "#sk-container-id-4 {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 pre {\n",
              "  padding: 0;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 input.sk-hidden--visually {\n",
              "  border: 0;\n",
              "  clip: rect(1px 1px 1px 1px);\n",
              "  clip: rect(1px, 1px, 1px, 1px);\n",
              "  height: 1px;\n",
              "  margin: -1px;\n",
              "  overflow: hidden;\n",
              "  padding: 0;\n",
              "  position: absolute;\n",
              "  width: 1px;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-dashed-wrapped {\n",
              "  border: 1px dashed var(--sklearn-color-line);\n",
              "  margin: 0 0.4em 0.5em 0.4em;\n",
              "  box-sizing: border-box;\n",
              "  padding-bottom: 0.4em;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-container {\n",
              "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
              "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
              "     so we also need the `!important` here to be able to override the\n",
              "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
              "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
              "  display: inline-block !important;\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-text-repr-fallback {\n",
              "  display: none;\n",
              "}\n",
              "\n",
              "div.sk-parallel-item,\n",
              "div.sk-serial,\n",
              "div.sk-item {\n",
              "  /* draw centered vertical line to link estimators */\n",
              "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
              "  background-size: 2px 100%;\n",
              "  background-repeat: no-repeat;\n",
              "  background-position: center center;\n",
              "}\n",
              "\n",
              "/* Parallel-specific style estimator block */\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel-item::after {\n",
              "  content: \"\";\n",
              "  width: 100%;\n",
              "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
              "  flex-grow: 1;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel {\n",
              "  display: flex;\n",
              "  align-items: stretch;\n",
              "  justify-content: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel-item {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel-item:first-child::after {\n",
              "  align-self: flex-end;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel-item:last-child::after {\n",
              "  align-self: flex-start;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-parallel-item:only-child::after {\n",
              "  width: 0;\n",
              "}\n",
              "\n",
              "/* Serial-specific style estimator block */\n",
              "\n",
              "#sk-container-id-4 div.sk-serial {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "  align-items: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  padding-right: 1em;\n",
              "  padding-left: 1em;\n",
              "}\n",
              "\n",
              "\n",
              "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
              "clickable and can be expanded/collapsed.\n",
              "- Pipeline and ColumnTransformer use this feature and define the default style\n",
              "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
              "*/\n",
              "\n",
              "/* Pipeline and ColumnTransformer style (default) */\n",
              "\n",
              "#sk-container-id-4 div.sk-toggleable {\n",
              "  /* Default theme specific background. It is overwritten whether we have a\n",
              "  specific estimator or a Pipeline/ColumnTransformer */\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "/* Toggleable label */\n",
              "#sk-container-id-4 label.sk-toggleable__label {\n",
              "  cursor: pointer;\n",
              "  display: flex;\n",
              "  width: 100%;\n",
              "  margin-bottom: 0;\n",
              "  padding: 0.5em;\n",
              "  box-sizing: border-box;\n",
              "  text-align: center;\n",
              "  align-items: start;\n",
              "  justify-content: space-between;\n",
              "  gap: 0.5em;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 label.sk-toggleable__label .caption {\n",
              "  font-size: 0.6rem;\n",
              "  font-weight: lighter;\n",
              "  color: var(--sklearn-color-text-muted);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 label.sk-toggleable__label-arrow:before {\n",
              "  /* Arrow on the left of the label */\n",
              "  content: \"▸\";\n",
              "  float: left;\n",
              "  margin-right: 0.25em;\n",
              "  color: var(--sklearn-color-icon);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 label.sk-toggleable__label-arrow:hover:before {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "/* Toggleable content - dropdown */\n",
              "\n",
              "#sk-container-id-4 div.sk-toggleable__content {\n",
              "  max-height: 0;\n",
              "  max-width: 0;\n",
              "  overflow: hidden;\n",
              "  text-align: left;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-toggleable__content.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-toggleable__content pre {\n",
              "  margin: 0.2em;\n",
              "  border-radius: 0.25em;\n",
              "  color: var(--sklearn-color-text);\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-toggleable__content.fitted pre {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
              "  /* Expand drop-down */\n",
              "  max-height: 200px;\n",
              "  max-width: 100%;\n",
              "  overflow: auto;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
              "  content: \"▾\";\n",
              "}\n",
              "\n",
              "/* Pipeline/ColumnTransformer-specific style */\n",
              "\n",
              "#sk-container-id-4 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator-specific style */\n",
              "\n",
              "/* Colorize estimator box */\n",
              "#sk-container-id-4 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-label label.sk-toggleable__label,\n",
              "#sk-container-id-4 div.sk-label label {\n",
              "  /* The background is the default theme color */\n",
              "  color: var(--sklearn-color-text-on-default-background);\n",
              "}\n",
              "\n",
              "/* On hover, darken the color of the background */\n",
              "#sk-container-id-4 div.sk-label:hover label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "/* Label box, darken color on hover, fitted */\n",
              "#sk-container-id-4 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator label */\n",
              "\n",
              "#sk-container-id-4 div.sk-label label {\n",
              "  font-family: monospace;\n",
              "  font-weight: bold;\n",
              "  display: inline-block;\n",
              "  line-height: 1.2em;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-label-container {\n",
              "  text-align: center;\n",
              "}\n",
              "\n",
              "/* Estimator-specific */\n",
              "#sk-container-id-4 div.sk-estimator {\n",
              "  font-family: monospace;\n",
              "  border: 1px dotted var(--sklearn-color-border-box);\n",
              "  border-radius: 0.25em;\n",
              "  box-sizing: border-box;\n",
              "  margin-bottom: 0.5em;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-estimator.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "/* on hover */\n",
              "#sk-container-id-4 div.sk-estimator:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-4 div.sk-estimator.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
              "\n",
              "/* Common style for \"i\" and \"?\" */\n",
              "\n",
              ".sk-estimator-doc-link,\n",
              "a:link.sk-estimator-doc-link,\n",
              "a:visited.sk-estimator-doc-link {\n",
              "  float: right;\n",
              "  font-size: smaller;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1em;\n",
              "  height: 1em;\n",
              "  width: 1em;\n",
              "  text-decoration: none !important;\n",
              "  margin-left: 0.5em;\n",
              "  text-align: center;\n",
              "  /* unfitted */\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted,\n",
              "a:link.sk-estimator-doc-link.fitted,\n",
              "a:visited.sk-estimator-doc-link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "/* Span, style for the box shown on hovering the info icon */\n",
              ".sk-estimator-doc-link span {\n",
              "  display: none;\n",
              "  z-index: 9999;\n",
              "  position: relative;\n",
              "  font-weight: normal;\n",
              "  right: .2ex;\n",
              "  padding: .5ex;\n",
              "  margin: .5ex;\n",
              "  width: min-content;\n",
              "  min-width: 20ex;\n",
              "  max-width: 50ex;\n",
              "  color: var(--sklearn-color-text);\n",
              "  box-shadow: 2pt 2pt 4pt #999;\n",
              "  /* unfitted */\n",
              "  background: var(--sklearn-color-unfitted-level-0);\n",
              "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted span {\n",
              "  /* fitted */\n",
              "  background: var(--sklearn-color-fitted-level-0);\n",
              "  border: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link:hover span {\n",
              "  display: block;\n",
              "}\n",
              "\n",
              "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
              "\n",
              "#sk-container-id-4 a.estimator_doc_link {\n",
              "  float: right;\n",
              "  font-size: 1rem;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1rem;\n",
              "  height: 1rem;\n",
              "  width: 1rem;\n",
              "  text-decoration: none;\n",
              "  /* unfitted */\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 a.estimator_doc_link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "#sk-container-id-4 a.estimator_doc_link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "#sk-container-id-4 a.estimator_doc_link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "</style><div id=\"sk-container-id-4\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>SVC(kernel=&#x27;linear&#x27;, 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 fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-4\" type=\"checkbox\" checked><label for=\"sk-estimator-id-4\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow\"><div><div>SVC</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.svm.SVC.html\">?<span>Documentation for SVC</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>SVC(kernel=&#x27;linear&#x27;, random_state=42)</pre></div> </div></div></div></div>"
            ]
          },
          "metadata": {},
          "execution_count": 20
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "#test\n",
        "y_pred_svm = svm_model.predict(X_test)\n",
        "accuracy = accuracy_score(Y_test, y_pred_svm)\n",
        "precision = precision_score(Y_test, y_pred_svm)\n",
        "recall = recall_score(Y_test, y_pred_svm)\n",
        "f1 = f1_score(Y_test, y_pred_svm)\n",
        "\n",
        "print(\"Accuracy:\", accuracy)\n",
        "print(\"Precision:\", precision)\n",
        "print(\"Recall:\", recall)\n",
        "print(\"F1 Score:\", f1)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "USSSHPi86wmz",
        "outputId": "f6484b8d-57b3-4b38-f32d-7363e64a1ee6"
      },
      "execution_count": 21,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Accuracy: 0.7142857142857143\n",
            "Precision: 0.6136363636363636\n",
            "Recall: 0.5\n",
            "F1 Score: 0.5510204081632653\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "cm_svm = confusion_matrix(Y_test, y_pred_svm)\n",
        "plt.figure(figsize=(3, 4))\n",
        "sns.heatmap(cm_svm, annot=True, fmt='d', cmap='Blues')\n",
        "plt.xlabel('Predicted')\n",
        "plt.ylabel('Actual')\n",
        "plt.title('Confusion Matrix')"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 427
        },
        "id": "N9z3SkT96z1c",
        "outputId": "319b4666-7f90-4c1d-e146-7957d3f779b8"
      },
      "execution_count": 22,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "Text(0.5, 1.0, 'Confusion Matrix')"
            ]
          },
          "metadata": {},
          "execution_count": 22
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 300x400 with 2 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "svm_model = SVC(kernel='rbf', C=1.0, gamma='scale', random_state=42)\n",
        "svm_model.fit(X_train, Y_train)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 80
        },
        "id": "TY01QhY6BlJs",
        "outputId": "8afb5da8-2f35-4724-ff04-73cbdd7336a7"
      },
      "execution_count": 26,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "SVC(random_state=42)"
            ],
            "text/html": [
              "<style>#sk-container-id-6 {\n",
              "  /* Definition of color scheme common for light and dark mode */\n",
              "  --sklearn-color-text: #000;\n",
              "  --sklearn-color-text-muted: #666;\n",
              "  --sklearn-color-line: gray;\n",
              "  /* Definition of color scheme for unfitted estimators */\n",
              "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
              "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
              "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
              "  --sklearn-color-unfitted-level-3: chocolate;\n",
              "  /* Definition of color scheme for fitted estimators */\n",
              "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
              "  --sklearn-color-fitted-level-1: #d4ebff;\n",
              "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
              "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
              "\n",
              "  /* Specific color for light theme */\n",
              "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
              "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
              "  --sklearn-color-icon: #696969;\n",
              "\n",
              "  @media (prefers-color-scheme: dark) {\n",
              "    /* Redefinition of color scheme for dark theme */\n",
              "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
              "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
              "    --sklearn-color-icon: #878787;\n",
              "  }\n",
              "}\n",
              "\n",
              "#sk-container-id-6 {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 pre {\n",
              "  padding: 0;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 input.sk-hidden--visually {\n",
              "  border: 0;\n",
              "  clip: rect(1px 1px 1px 1px);\n",
              "  clip: rect(1px, 1px, 1px, 1px);\n",
              "  height: 1px;\n",
              "  margin: -1px;\n",
              "  overflow: hidden;\n",
              "  padding: 0;\n",
              "  position: absolute;\n",
              "  width: 1px;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-dashed-wrapped {\n",
              "  border: 1px dashed var(--sklearn-color-line);\n",
              "  margin: 0 0.4em 0.5em 0.4em;\n",
              "  box-sizing: border-box;\n",
              "  padding-bottom: 0.4em;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-container {\n",
              "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
              "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
              "     so we also need the `!important` here to be able to override the\n",
              "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
              "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
              "  display: inline-block !important;\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-text-repr-fallback {\n",
              "  display: none;\n",
              "}\n",
              "\n",
              "div.sk-parallel-item,\n",
              "div.sk-serial,\n",
              "div.sk-item {\n",
              "  /* draw centered vertical line to link estimators */\n",
              "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
              "  background-size: 2px 100%;\n",
              "  background-repeat: no-repeat;\n",
              "  background-position: center center;\n",
              "}\n",
              "\n",
              "/* Parallel-specific style estimator block */\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel-item::after {\n",
              "  content: \"\";\n",
              "  width: 100%;\n",
              "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
              "  flex-grow: 1;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel {\n",
              "  display: flex;\n",
              "  align-items: stretch;\n",
              "  justify-content: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  position: relative;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel-item {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel-item:first-child::after {\n",
              "  align-self: flex-end;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel-item:last-child::after {\n",
              "  align-self: flex-start;\n",
              "  width: 50%;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-parallel-item:only-child::after {\n",
              "  width: 0;\n",
              "}\n",
              "\n",
              "/* Serial-specific style estimator block */\n",
              "\n",
              "#sk-container-id-6 div.sk-serial {\n",
              "  display: flex;\n",
              "  flex-direction: column;\n",
              "  align-items: center;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  padding-right: 1em;\n",
              "  padding-left: 1em;\n",
              "}\n",
              "\n",
              "\n",
              "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
              "clickable and can be expanded/collapsed.\n",
              "- Pipeline and ColumnTransformer use this feature and define the default style\n",
              "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
              "*/\n",
              "\n",
              "/* Pipeline and ColumnTransformer style (default) */\n",
              "\n",
              "#sk-container-id-6 div.sk-toggleable {\n",
              "  /* Default theme specific background. It is overwritten whether we have a\n",
              "  specific estimator or a Pipeline/ColumnTransformer */\n",
              "  background-color: var(--sklearn-color-background);\n",
              "}\n",
              "\n",
              "/* Toggleable label */\n",
              "#sk-container-id-6 label.sk-toggleable__label {\n",
              "  cursor: pointer;\n",
              "  display: flex;\n",
              "  width: 100%;\n",
              "  margin-bottom: 0;\n",
              "  padding: 0.5em;\n",
              "  box-sizing: border-box;\n",
              "  text-align: center;\n",
              "  align-items: start;\n",
              "  justify-content: space-between;\n",
              "  gap: 0.5em;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 label.sk-toggleable__label .caption {\n",
              "  font-size: 0.6rem;\n",
              "  font-weight: lighter;\n",
              "  color: var(--sklearn-color-text-muted);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 label.sk-toggleable__label-arrow:before {\n",
              "  /* Arrow on the left of the label */\n",
              "  content: \"▸\";\n",
              "  float: left;\n",
              "  margin-right: 0.25em;\n",
              "  color: var(--sklearn-color-icon);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 label.sk-toggleable__label-arrow:hover:before {\n",
              "  color: var(--sklearn-color-text);\n",
              "}\n",
              "\n",
              "/* Toggleable content - dropdown */\n",
              "\n",
              "#sk-container-id-6 div.sk-toggleable__content {\n",
              "  max-height: 0;\n",
              "  max-width: 0;\n",
              "  overflow: hidden;\n",
              "  text-align: left;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-toggleable__content.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-toggleable__content pre {\n",
              "  margin: 0.2em;\n",
              "  border-radius: 0.25em;\n",
              "  color: var(--sklearn-color-text);\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-toggleable__content.fitted pre {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
              "  /* Expand drop-down */\n",
              "  max-height: 200px;\n",
              "  max-width: 100%;\n",
              "  overflow: auto;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
              "  content: \"▾\";\n",
              "}\n",
              "\n",
              "/* Pipeline/ColumnTransformer-specific style */\n",
              "\n",
              "#sk-container-id-6 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator-specific style */\n",
              "\n",
              "/* Colorize estimator box */\n",
              "#sk-container-id-6 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-label label.sk-toggleable__label,\n",
              "#sk-container-id-6 div.sk-label label {\n",
              "  /* The background is the default theme color */\n",
              "  color: var(--sklearn-color-text-on-default-background);\n",
              "}\n",
              "\n",
              "/* On hover, darken the color of the background */\n",
              "#sk-container-id-6 div.sk-label:hover label.sk-toggleable__label {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "/* Label box, darken color on hover, fitted */\n",
              "#sk-container-id-6 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
              "  color: var(--sklearn-color-text);\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Estimator label */\n",
              "\n",
              "#sk-container-id-6 div.sk-label label {\n",
              "  font-family: monospace;\n",
              "  font-weight: bold;\n",
              "  display: inline-block;\n",
              "  line-height: 1.2em;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-label-container {\n",
              "  text-align: center;\n",
              "}\n",
              "\n",
              "/* Estimator-specific */\n",
              "#sk-container-id-6 div.sk-estimator {\n",
              "  font-family: monospace;\n",
              "  border: 1px dotted var(--sklearn-color-border-box);\n",
              "  border-radius: 0.25em;\n",
              "  box-sizing: border-box;\n",
              "  margin-bottom: 0.5em;\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-0);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-estimator.fitted {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-0);\n",
              "}\n",
              "\n",
              "/* on hover */\n",
              "#sk-container-id-6 div.sk-estimator:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-2);\n",
              "}\n",
              "\n",
              "#sk-container-id-6 div.sk-estimator.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-2);\n",
              "}\n",
              "\n",
              "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
              "\n",
              "/* Common style for \"i\" and \"?\" */\n",
              "\n",
              ".sk-estimator-doc-link,\n",
              "a:link.sk-estimator-doc-link,\n",
              "a:visited.sk-estimator-doc-link {\n",
              "  float: right;\n",
              "  font-size: smaller;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1em;\n",
              "  height: 1em;\n",
              "  width: 1em;\n",
              "  text-decoration: none !important;\n",
              "  margin-left: 0.5em;\n",
              "  text-align: center;\n",
              "  /* unfitted */\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted,\n",
              "a:link.sk-estimator-doc-link.fitted,\n",
              "a:visited.sk-estimator-doc-link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
              ".sk-estimator-doc-link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover,\n",
              "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
              ".sk-estimator-doc-link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "/* Span, style for the box shown on hovering the info icon */\n",
              ".sk-estimator-doc-link span {\n",
              "  display: none;\n",
              "  z-index: 9999;\n",
              "  position: relative;\n",
              "  font-weight: normal;\n",
              "  right: .2ex;\n",
              "  padding: .5ex;\n",
              "  margin: .5ex;\n",
              "  width: min-content;\n",
              "  min-width: 20ex;\n",
              "  max-width: 50ex;\n",
              "  color: var(--sklearn-color-text);\n",
              "  box-shadow: 2pt 2pt 4pt #999;\n",
              "  /* unfitted */\n",
              "  background: var(--sklearn-color-unfitted-level-0);\n",
              "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link.fitted span {\n",
              "  /* fitted */\n",
              "  background: var(--sklearn-color-fitted-level-0);\n",
              "  border: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "\n",
              ".sk-estimator-doc-link:hover span {\n",
              "  display: block;\n",
              "}\n",
              "\n",
              "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
              "\n",
              "#sk-container-id-6 a.estimator_doc_link {\n",
              "  float: right;\n",
              "  font-size: 1rem;\n",
              "  line-height: 1em;\n",
              "  font-family: monospace;\n",
              "  background-color: var(--sklearn-color-background);\n",
              "  border-radius: 1rem;\n",
              "  height: 1rem;\n",
              "  width: 1rem;\n",
              "  text-decoration: none;\n",
              "  /* unfitted */\n",
              "  color: var(--sklearn-color-unfitted-level-1);\n",
              "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 a.estimator_doc_link.fitted {\n",
              "  /* fitted */\n",
              "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
              "  color: var(--sklearn-color-fitted-level-1);\n",
              "}\n",
              "\n",
              "/* On hover */\n",
              "#sk-container-id-6 a.estimator_doc_link:hover {\n",
              "  /* unfitted */\n",
              "  background-color: var(--sklearn-color-unfitted-level-3);\n",
              "  color: var(--sklearn-color-background);\n",
              "  text-decoration: none;\n",
              "}\n",
              "\n",
              "#sk-container-id-6 a.estimator_doc_link.fitted:hover {\n",
              "  /* fitted */\n",
              "  background-color: var(--sklearn-color-fitted-level-3);\n",
              "}\n",
              "</style><div id=\"sk-container-id-6\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>SVC(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 fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-6\" type=\"checkbox\" checked><label for=\"sk-estimator-id-6\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow\"><div><div>SVC</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.svm.SVC.html\">?<span>Documentation for SVC</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>SVC(random_state=42)</pre></div> </div></div></div></div>"
            ]
          },
          "metadata": {},
          "execution_count": 26
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "y_pred = svm_model.predict(X_test)"
      ],
      "metadata": {
        "id": "1UNvJT8ECYrv"
      },
      "execution_count": 29,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print(\"SVM (RBF Kernel) Results:\")\n",
        "print(\"Accuracy:\", accuracy_score(Y_test, y_pred))\n",
        "print(\"\\nConfusion Matrix:\\n\", confusion_matrix(Y_test, y_pred))\n",
        "print(\"\\nClassification Report:\\n\", classification_report(Y_test, y_pred))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "FgIAMc1KCkZL",
        "outputId": "1e8906f5-746d-459e-cfe3-c8919a7f7f60"
      },
      "execution_count": 33,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "SVM (RBF Kernel) Results:\n",
            "Accuracy: 0.6688311688311688\n",
            "\n",
            "Confusion Matrix:\n",
            " [[87 13]\n",
            " [38 16]]\n",
            "\n",
            "Classification Report:\n",
            "               precision    recall  f1-score   support\n",
            "\n",
            "           0       0.70      0.87      0.77       100\n",
            "           1       0.55      0.30      0.39        54\n",
            "\n",
            "    accuracy                           0.67       154\n",
            "   macro avg       0.62      0.58      0.58       154\n",
            "weighted avg       0.65      0.67      0.64       154\n",
            "\n"
          ]
        }
      ]
    }
  ]
}