Skip to content
Snippets Groups Projects
miRNA_limma_dataset_xgb_described.ipynb 286 KiB
Newer Older
aakan96's avatar
aakan96 committed
{
 "cells": [
aakan96's avatar
aakan96 committed
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "75167b57",
   "metadata": {},
   "outputs": [],
   "source": [
    "## TRAINING  and TEST SET :  miRNA DATA , MODEL: XGBoost"
   ]
  },
aakan96's avatar
aakan96 committed
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "f097ad55",
   "metadata": {},
   "outputs": [],
   "source": [
    "import warnings\n",
    "warnings.filterwarnings('ignore')\n",
    "import pandas as pd\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.metrics import RocCurveDisplay\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "from imblearn.over_sampling import SMOTE\n",
    "from sklearn.linear_model import Lasso\n",
    "import xgboost as xgb\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "#np.random.seed(7)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "73b6611a",
   "metadata": {},
   "source": [
    "# Data Preprocessing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "id": "0eeb7a35",
   "metadata": {},
   "outputs": [],
   "source": [
    "df = pd.read_csv(\"DS/miRNA_DS_preprocessed_data.csv\") # read the data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "id": "6e7836e1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(230, 239)"
      ]
     },
     "execution_count": 89,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "id": "683b63ce",
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df.T # transpose the data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "id": "2e78017d",
   "metadata": {},
   "outputs": [],
   "source": [
    "#Transform the input data\n",
    "df.rename(columns=df.iloc[0], inplace = True)\n",
    "df.drop(df.index[0], inplace = True)\n",
    "df=df.reset_index()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "id": "4c50c510",
   "metadata": {},
   "outputs": [],
   "source": [
    "metadata = pd.read_csv(\"DS/miRNA_DS_metadata_col_info.csv\") # read the class information"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "id": "6730cf89",
   "metadata": {},
   "outputs": [],
   "source": [
    "df= df.merge(metadata, left_on=\"index\", right_on= \"Unnamed: 0\") # merge the expresison data with class info"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "id": "7a8ad8ad",
   "metadata": {},
   "outputs": [],
   "source": [
    "df['title0'] = df['title0'].replace('(?i)mucosa|normal|healthy', 0, regex=True) # replace the class name \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "id": "a8cf8643",
   "metadata": {},
   "outputs": [],
   "source": [
    "df['title0'] = df['title0'].replace('(?i)Tumor|Cancer|carcinoma', 1, regex=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "id": "f5d203aa",
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df[pd.to_numeric(df['title0'], errors='coerce').notnull()]#remove all non-numeric data from the column."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "id": "523bdaa6",
   "metadata": {},
   "outputs": [],
   "source": [
    "df= df.drop(['index', 'Unnamed: 0'], axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "id": "46a6fb36",
   "metadata": {},
   "outputs": [],
   "source": [
    "df= df.rename(columns={\"title0\": \"index\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "id": "e26f88c5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "index\n",
       "1    119\n",
       "0    119\n",
       "Name: count, dtype: int64"
      ]
     },
     "execution_count": 99,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['index'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "id": "fbaf2507",
   "metadata": {},
   "outputs": [],
   "source": [
    "df= df.apply(pd.to_numeric)"
aakan96's avatar
aakan96 committed
201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "id": "f3f7adb5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "index\n",
       "1    119\n",
       "0    119\n",
       "Name: count, dtype: int64"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['index'].value_counts()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "203eb696",
   "metadata": {},
   "source": [
    "# t-SNE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "id": "e1027be2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAksAAAHHCAYAAACvJxw8AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB1tklEQVR4nO3deXgUVdYG8LcTQlgTDNlJSFhkXxQRBIZNUUDUKIoIKuDCDIoLgqiMSgCVqIAwIuI2gltQFBTHTxlZggsgKoKCAhIMi0ACCiQikJjkfn/UdJNOeqmqrr3f3/P0A+l0d92udFeduvfcc11CCAEiIiIi8inC7AYQERERWRmDJSIiIqIAGCwRERERBcBgiYiIiCgABktEREREATBYIiIiIgqAwRIRERFRAAyWiIiIiAJgsEREREQUAIMlIiKDrVu3Di6XC+vWrTO7KUQkA4MlIjLVhg0bMG3aNJw4cUL2c06ePIns7Gx06NAB9evXR+PGjXHeeefh3nvvxaFDhzyPmzZtGlwuF5KSknDq1Kkar5OZmYkrrrjC6z6Xy+X3Nm7cuIDtWrx4sdfj69Spg1atWuGuu+5CUVGR7PcXyMcff4xp06Zp8lpEJE8tsxtAROFtw4YNmD59OsaMGYNGjRoFffxff/2FPn36YOfOnRg9ejTuvvtunDx5Ej/++CNyc3NxzTXXIDU11es5R44cwcKFCzFp0iRZbbr00ksxatSoGve3atVK1vNnzJiBZs2a4cyZM/jyyy+xcOFCfPzxx9i+fTvq1asn6zX8+fjjj7FgwQIGTEQGYrBERLbywQcfYMuWLXjrrbcwcuRIr9+dOXMGZWVlNZ5z3nnnYdasWbjzzjtRt27doNto1aoVbrrpJtVtHDx4MLp27QoAuP3229G4cWM888wzWLFiBUaMGKH6dYnIHByGIyLTTJs2DZMnTwYANGvWzDN8tXfvXr/P2bNnDwCgV69eNX5Xp04dxMTE1Lh/6tSpKCoqwsKFC7VpuEIXX3wxAKCgoCDg4959911ccMEFqFu3LuLj43HTTTfh4MGDnt+PGTMGCxYsAOA9XEhE+mLPEhGZZujQofj555+xZMkSzJ07F/Hx8QCAhIQEv8/JyMgAALz++ut45JFHZAULvXv3xsUXX4ynn34ad9xxR9DepTNnzuC3336rcX9MTAxq164ddHvVuQO8xo0b+33M4sWLccstt+DCCy9ETk4OioqK8K9//Qvr16/Hli1b0KhRI/zjH//AoUOHsGrVKrzxxhuK20FEKgkiIhPNmjVLABAFBQWyHn/q1CnRunVrAUBkZGSIMWPGiH//+9+iqKioxmOzs7MFAHH06FHx2WefCQDimWee8fw+IyNDDBkyxOs5APzelixZErBtixYtEgDE6tWrxdGjR8WBAwfE22+/LRo3bizq1q0rfv31VyGEEHl5eQKAyMvLE0IIUVZWJhITE0WHDh3E6dOnPa/30UcfCQBi6tSpnvvGjx8veOgmMhaH4YjIVurWrYtNmzZ5hu8WL16M2267DSkpKbj77rtRWlrq83l9+vRB//798fTTT+P06dMBt5GVlYVVq1bVuPXv319WGwcMGICEhASkp6fjhhtuQIMGDfD++++jSZMmPh//7bff4siRI7jzzjtRp04dz/1DhgxBmzZt8H//93+ytktE+uAwHBFZ0rFjx7yStevWrYvY2FgAQGxsLJ5++mk8/fTT2LdvH9asWYPZs2fjueeeQ2xsLB5//HGfrzlt2jT07dsXL7zwAu677z6/205LS8OAAQNUt33BggVo1aoVatWqhaSkJLRu3RoREf6vTfft2wcAaN26dY3ftWnTBl9++aXqthBR6NizRESWNHToUKSkpHhu9957r8/HZWRk4NZbb8X69evRqFEjvPXWW35fs0+fPujXr5+s3qVQdOvWDQMGDEC/fv3Qtm3bgIESEVkfe5aIyFT+ErTnzJmD48ePe36uXjupunPOOQctWrTA9u3bAz5u2rRp6NevH1588UXljdWJO2l9165dnplzbrt27fL8HvC/v4hIPwyWiMhU9evXB4AaFbwvuOACn4///vvv0aRJE8/MObd9+/bhp59+8jmUVVXfvn3Rr18/PPXUUxBCqG+4hrp27YrExES88MILuPXWWxEdHQ0A+OSTT7Bjxw5MnTrV89iq+0tOEU8iCh2DJSIylTsoevjhh3HDDTcgKioKV155pScoqG7VqlXIzs7GVVddhYsuuggNGjTAL7/8gldffRWlpaWyKltnZ2cHTNb++eef8eabb9a4PykpCZdeeqm8N6ZAVFQUnnrqKdxyyy3o27cvRowY4SkdkJmZ6ZVf5d5f99xzDwYOHIjIyEjccMMNmreJiKowezoeEdFjjz0mmjRpIiIiIoKWEfjll1/E1KlTxUUXXSQSExNFrVq1REJCghgyZIhYu3at12Orlg6orm/fvgKAotIBffv2Dfg+3KUDvvnmm4CPq146wO2dd94R559/voiOjhZxcXHixhtv9JQbcCsvLxd33323SEhIEC6Xi2UEiAzgEsIi/dBEREREFsQpGkREREQBMFgiIiIiCoDBEhEREVEADJaIiIiIAmCwRERERBQAgyUiIiKiAFiUUgOVlZU4dOgQGjZsyKUIiIiIbEIIgT/++AOpqakB13BksKSBQ4cOIT093exmEBERkQoHDhxAWlqa398zWNJAw4YNAUg7OyYmxuTWEBERkRwlJSVIT0/3nMf9YbCkAffQW0xMDIMlIiIimwmWQsMEbyIiIqIAGCwRERERBcBgiYiIiCgA5iwZpLKyEmVlZWY3g0wSFRWFyMhIs5tBREQqMFgyQFlZGQoKClBZWWl2U8hEjRo1QnJyMmtxERHZjK2Cpc8//xyzZs3C5s2bcfjwYbz//vu4+uqrPb8XQiA7Oxsvv/wyTpw4gV69emHhwoU499xzA77uggULMGvWLBQWFqJz586YP38+unXrpkmbhRA4fPgwIiMjkZ6eHrDoFTmTEAKnTp3CkSNHAAApKSkmt4iIiJSwVbD0559/onPnzrj11lsxdOjQGr9/+umn8eyzz+K1115Ds2bN8Oijj2LgwIH46aefUKdOHZ+v+c4772DixIl44YUX0L17d8ybNw8DBw7Erl27kJiYGHKby8vLcerUKaSmpqJevXohvx7ZU926dQEAR44cQWJiIofkiIhsxCWEEGY3Qg2Xy+XVsySEQGpqKiZNmoT7778fAFBcXIykpCQsXrwYN9xwg8/X6d69Oy688EI899xzAKTcovT0dNx999146KGHZLWlpKQEsbGxKC4urlFn6cyZMygoKEBmZqbnhEnh6fTp09i7dy+aNWvmN3gnIiLjBDp/V+WYMaGCggIUFhZiwIABnvtiY2PRvXt3bNy40edzysrKsHnzZq/nREREYMCAAX6fAwClpaUoKSnxugXDPBXiZ4CIyJ4cEywVFhYCAJKSkrzuT0pK8vyuut9++w0VFRWKngMAOTk5iI2N9dy4LhwREYWqogJYtw5YskT6t6LC7BaRm2OCJSNNmTIFxcXFntuBAwfMbhIREdnY8uVAZibQvz8wcqT0b2amdD+ZzzHBUnJyMgCgqKjI6/6ioiLP76qLj49HZGSkoucAQHR0tGcdOKeuBzdmzBi4XC48+eSTXvd/8MEHhg0nLVu2DP369UNsbCwaNGiATp06YcaMGTh27Jgh2yciMsLy5cB11wG//up9/8GD0v0MmMznmGCpWbNmSE5Oxpo1azz3lZSUYNOmTejRo4fP59SuXRsXXHCB13MqKyuxZs0av88xjQn9s3Xq1MFTTz2F48eP676t6h5++GEMHz4cF154IT755BNs374dc+bMwffff4833njD8PYo8ddff5ndBCKyiYoK4N57AV9Trdz3TZjAITmz2SpYOnnyJLZu3YqtW7cCkJK6t27div3798PlcmHChAl4/PHH8eGHH2Lbtm0YNWoUUlNTvWoxXXLJJZ6ZbwAwceJEvPzyy3jttdewY8cO3HHHHfjzzz9xyy23GPzuAjCpf3bAgAFITk5GTk6O38csW7YM7du3R3R0NDIzMzFnzhyv32dmZmLmzJm49dZb0bBhQzRt2hQvvfRSwO1+/fXXmDlzJubMmYNZs2ahZ8+eyMzMxKWXXoply5Zh9OjRAIA9e/YgKysLSUlJaNCgAS688EKsXr1a8fZ//fVXjBgxAnFxcahfvz66du2KTZs2eX6/YsUKdOnSBXXq1EHz5s0xffp0lJeXe37vcrmwcOFCXHXVVahfvz6eeOKJwDuWiExjtbygL76o2aNUlRDAgQPS48hEwkby8vIEgBq30aNHCyGEqKysFI8++qhISkoS0dHR4pJLLhG7du3yeo2MjAyRnZ3tdd/8+fNF06ZNRe3atUW3bt3EV199pahdxcXFAoAoLi6u8bvTp0+Ln376SZw+fVrRa3osWyaEyyWE9J05e3O5pNuyZepeN4jRo0eLrKwssXz5clGnTh1x4MABIYQQ77//vnB/bL799lsREREhZsyYIXbt2iUWLVok6tatKxYtWuR5nYyMDBEXFycWLFggdu/eLXJyckRERITYuXOn323fc889okGDBqKsrCxgG7du3SpeeOEFsW3bNvHzzz+LRx55RNSpU0fs27dP9vb/+OMP0bx5c9G7d2/xxRdfiN27d4t33nlHbNiwQQghxOeffy5iYmLE4sWLxZ49e8Snn34qMjMzxbRp0zzbACASExPFq6++Kvbs2eO1/apC/iwQUUiWLRMiLc37UJqWptthVJbc3JqHd1+33Fzz2uhkgc7f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IiIiIgqAwRIRERFRAAyWiMjyXC4XPvjgA7ObEdC6devgcrlw4sQJs5tCRBpjsEREphgzZgxcLhdcLheioqKQlJSESy+9FK+++ioqKyu9Hnv48GEMHjzYpJbK07NnTxw+fBixsbG6bufzzz/HlVdeidTUVFsEkUROwGCJiEwzaNAgHD58GHv37sUnn3yC/v37495778UVV1yB8vJyz+OSk5MtvyZe7dq1kZycDJfLpet2/vzzT3Tu3BkLFizQdTtEdBaDJSIyTXR0NJKTk9GkSRN06dIF//znP7FixQp88sknWLx4sedxVXtQ9u7dC5fLhaVLl6J3796oW7cuLrzwQvz888/45ptv0LVrVzRo0ACDBw/2WrgaAF555RW0bdsWderUQZs2bfD88897fud+3eXLl6N///6oV68eOnfujI0bN3oes2/fPlx55ZU455xzUL9+fbRv3x4ff/wxAN/DcMuWLUP79u0RHR2NzMxMzJkzx6s9mZmZmDlzJm699VY0bNgQTZs2xUsvvRRwnw0ePBiPP/44rrnmGiW7mohCwGCJiCzl4osvRufOnbF8+fKAj8vOzsYjjzyC7777DrVq1cLIkSPxwAMP4F//+he++OIL5OfnY+rUqZ7Hv/XWW5g6dSqeeOIJ7NixAzNnzsSjjz6K1157zet1H374Ydx///3YunUrWrVqhREjRnh6ucaPH4/S0lJ8/vnn2LZtG5566ik0aNDAZ/s2b96M66+/HjfccAO2bduGadOm4dFHH/UKAgFgzpw56Nq1K7Zs2YI777wTd9xxB3bt2qVizxGRbgxZrpeIqJrRo0eLrKwsn78bPny4aNu2rednAOL9998XQghRUFAgAIhXXnnF8/slS5YIAGLNmjWe+3JyckTr1q09P7do0ULk5uZ6beexxx4TPXr08Pu6P/74owAgduzYIYQQomPHjmLatGk+2+xeMf348eNCCCFGjhwpLr30Uq/HTJ48WbRr187zc0ZGhrjppps8P1dWVorExESxcOFCn9uorup+ISL9sGeJiCxHCBE096dTp06e/yclJQEAOnbs6HXfkSNHAEh5Pnv27MFtt92GBg0aeG6PP/449uzZ4/d1U1JSAMDzOvfccw8ef/xx9OrVC9nZ2fjhhx/8tm/Hjh3o1auX1329evXC7t27UVFR4XN7LpcLycnJnu0RkTUwWCIiy9mxYweaNWsW8DFRUVGe/7sDq+r3uWfVnTx5EgDw8ssvY+vWrZ7b9u3b8dVXXwV9Xffr3H777fjll19w8803Y9u2bejatSvmz5+v9m3W2F71dhORNTBYIiJLWbt2LbZt24Zrr71Ws9dMSkpCamoqfvnlF7Rs2dLrFiwoqy49PR3jxo3D8uXLMWnSJLz88ss+H9e2bVusX7/e677169ejVatWiIyMVP1eiMh4tcxuABGFr9LSUhQWFqKiogJFRUVYuXIlcnJycMUVV2DUqFGabmv69Om45557EBsbi0GDBqG0tBTffvstjh8/jokTJ8p6jQkTJmDw4MFo1aoVjh8/jry8PLRt29bnYydNmoQLL7wQjz32GIYPH46NGzfiueee85qBp8bJkyeRn5/v+bmgoABbt25FXFwcmjZtGtJrE5FvDJaIyDQrV65ESkoKatWqhXPOOQedO3fGs88+i9GjRyMiQtuO79tvvx316tXDrFmzMHnyZNSvXx8dO3bEhAkTZL9GRUUFxo8fj19//RUxMTEYNGgQ5s6d6/OxXbp0wdKlSzF16lQ89thjSElJwYwZMzBmzJiQ3se3336L/v37e352B3qjR4+uMdOOiLThEkIIsxtBREREZFXMWSIiIiIKgMESERERUQAMloiIiIgCYLBEREREFACDJSIiIqIAGCwRERERBcBgiYiIiCgABktEREREATBYIiIiIgqAwRIRERFRAAyWiIiIiAJgsEREREQUwP8DRCqI3p7YSUsAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.manifold import TSNE\n",
    "#t-SNE\n",
    "tsne = TSNE(n_components=2,perplexity=30)\n",
    "embedded_data = tsne.fit_transform(df)\n",
    "\n",
    "# Step 2: Separate data points by class\n",
    "class_1_indices = np.where(df['index'] == 0)[0]\n",
    "class_2_indices = np.where(df['index'] == 1)[0]\n",
    "\n",
    "class_1_data = embedded_data[class_1_indices]\n",
    "class_2_data = embedded_data[class_2_indices]\n",
    "\n",
    "# Step 3: Plot the t-SNE plot with different colors for each class\n",
    "plt.scatter(class_1_data[:, 0], class_1_data[:, 1], color='red', label='Non-Cancer')\n",
    "plt.scatter(class_2_data[:, 0], class_2_data[:, 1], color='blue', label='Cancer')\n",
    "\n",
    "plt.title('t-SNE Plot')\n",
    "plt.xlabel('Dimension 1')\n",
    "plt.ylabel('Dimension 2')\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "580d9e86",
   "metadata": {},
   "source": [
    "#### t-distributed stochastic neighbor embedding (t-SNE) is a statistical method for visualizing high-dimensional data by giving each datapoint a location in a two dimensional map.  In the plot above we used perplexity of 30 for visualizing the t-SNE, but we didnt do any dimensionality reduction with it. Blue points are Cancer and the red are non-cancer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "id": "6a50f416",
   "metadata": {},
   "outputs": [],
   "source": [
    "X=df.drop(\"index\",axis=1)\n",
    "y=df['index']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "id": "e644ab0e",
   "metadata": {},
   "outputs": [],
   "source": [
    "y=y.astype('int')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6cee6462",
   "metadata": {},
   "source": [
    "# Test train split"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "id": "1da48142",
   "metadata": {},
   "outputs": [],
   "source": [
    "# split data into training and testing data-sets\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=7)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "id": "129430e6",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(index\n",
       " 0    30\n",
       " 1    30\n",
       " Name: count, dtype: int64,\n",
       " index\n",
       " 0    89\n",
       " 1    89\n",
       " Name: count, dtype: int64)"
      ]
     },
     "execution_count": 106,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_test.value_counts(),y_train.value_counts()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1cfe2a06",
   "metadata": {},
   "source": [
    "# Cross validation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "id": "d3550b5e",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting 5 folds for each of 36 candidates, totalling 180 fits\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.6s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.1s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.1s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.6s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.7s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.1s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.4s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.1s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.1s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.3s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.4s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.3s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.5s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   1.0s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.4s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.4s\n",
      "[CV 5/5] END gamma=0.1, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.5s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.1s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.1s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.1s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.3s\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[CV 3/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.3s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.1s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.917 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.4s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.5s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.5s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.3s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.917 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.4s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.4s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.5s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.4s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.5s\n",
      "[CV 2/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.4s\n",
      "[CV 5/5] END gamma=0.01, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.1s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.1, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.1s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=1.000 total time=   0.1s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.1s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.1s\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[CV 1/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.1, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.5s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.01, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.3s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=1.000 total time=   0.5s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.917 total time=   0.6s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.3s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.01, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.4s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.4s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.001, max_depth=3, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.4s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.944 total time=   0.2s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.889 total time=   0.2s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.972 total time=   0.2s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.971 total time=   0.2s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=100, subsample=1.0;, score=0.943 total time=   0.2s\n",
      "[CV 1/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.944 total time=   0.4s\n",
      "[CV 2/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.889 total time=   0.3s\n",
      "[CV 3/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.972 total time=   0.5s\n",
      "[CV 4/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.971 total time=   0.5s\n",
      "[CV 5/5] END gamma=0.001, learning_rate=0.001, max_depth=5, n_estimators=200, subsample=1.0;, score=0.943 total time=   0.3s\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<style>#sk-container-id-3 {color: black;background-color: white;}#sk-container-id-3 pre{padding: 0;}#sk-container-id-3 div.sk-toggleable {background-color: white;}#sk-container-id-3 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-3 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-3 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-3 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-3 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-3 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-3 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-3 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-3 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-3 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-3 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-3 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-3 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-3 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-3 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-3 div.sk-item {position: relative;z-index: 1;}#sk-container-id-3 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-3 div.sk-item::before, #sk-container-id-3 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-3 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-3 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-3 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-3 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-3 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-3 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-3 div.sk-label-container {text-align: center;}#sk-container-id-3 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-3 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-3\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>GridSearchCV(estimator=XGBClassifier(base_score=None, booster=None,\n",
       "                                     callbacks=None, colsample_bylevel=None,\n",
       "                                     colsample_bynode=None,\n",
       "                                     colsample_bytree=None,\n",
       "                                     early_stopping_rounds=None,\n",
       "                                     enable_categorical=False, eval_metric=None,\n",
       "                                     feature_types=None, gamma=None,\n",
       "                                     gpu_id=None, grow_policy=None,\n",
       "                                     importance_type=None,\n",
       "                                     interaction_constraints=None,\n",
       "                                     learning_rate=None, max_b...\n",
       "                                     max_cat_to_onehot=None,\n",
       "                                     max_delta_step=None, max_depth=None,\n",
       "                                     max_leaves=None, min_child_weight=None,\n",
       "                                     missing=nan, monotone_constraints=None,\n",
       "                                     n_estimators=100, n_jobs=None,\n",
       "                                     num_parallel_tree=None, predictor=None,\n",
       "                                     random_state=42, ...),\n",
       "             param_grid={&#x27;gamma&#x27;: [0.1, 0.01, 0.001],\n",
       "                         &#x27;learning_rate&#x27;: [0.1, 0.01, 0.001],\n",
       "                         &#x27;max_depth&#x27;: [3, 5], &#x27;n_estimators&#x27;: [100, 200],\n",
       "                         &#x27;subsample&#x27;: [1.0]},\n",
       "             verbose=3)</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 sk-dashed-wrapped\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-5\" type=\"checkbox\" ><label for=\"sk-estimator-id-5\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">GridSearchCV</label><div class=\"sk-toggleable__content\"><pre>GridSearchCV(estimator=XGBClassifier(base_score=None, booster=None,\n",
       "                                     callbacks=None, colsample_bylevel=None,\n",
       "                                     colsample_bynode=None,\n",
       "                                     colsample_bytree=None,\n",
       "                                     early_stopping_rounds=None,\n",
       "                                     enable_categorical=False, eval_metric=None,\n",
       "                                     feature_types=None, gamma=None,\n",
       "                                     gpu_id=None, grow_policy=None,\n",
       "                                     importance_type=None,\n",
       "                                     interaction_constraints=None,\n",
       "                                     learning_rate=None, max_b...\n",
       "                                     max_cat_to_onehot=None,\n",
       "                                     max_delta_step=None, max_depth=None,\n",
       "                                     max_leaves=None, min_child_weight=None,\n",
       "                                     missing=nan, monotone_constraints=None,\n",
       "                                     n_estimators=100, n_jobs=None,\n",
       "                                     num_parallel_tree=None, predictor=None,\n",
       "                                     random_state=42, ...),\n",
       "             param_grid={&#x27;gamma&#x27;: [0.1, 0.01, 0.001],\n",
       "                         &#x27;learning_rate&#x27;: [0.1, 0.01, 0.001],\n",
       "                         &#x27;max_depth&#x27;: [3, 5], &#x27;n_estimators&#x27;: [100, 200],\n",
       "                         &#x27;subsample&#x27;: [1.0]},\n",
       "             verbose=3)</pre></div></div></div><div class=\"sk-parallel\"><div class=\"sk-parallel-item\"><div class=\"sk-item\"><div class=\"sk-label-container\"><div class=\"sk-label sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-6\" type=\"checkbox\" ><label for=\"sk-estimator-id-6\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">estimator: XGBClassifier</label><div class=\"sk-toggleable__content\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
       "              colsample_bylevel=None, colsample_bynode=None,\n",
       "              colsample_bytree=None, early_stopping_rounds=None,\n",
       "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
       "              gamma=None, gpu_id=None, grow_policy=None, importance_type=None,\n",
       "              interaction_constraints=None, learning_rate=None, max_bin=None,\n",
       "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
       "              max_delta_step=None, max_depth=None, max_leaves=None,\n",
       "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
       "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
       "              predictor=None, random_state=42, ...)</pre></div></div></div><div class=\"sk-serial\"><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-7\" type=\"checkbox\" ><label for=\"sk-estimator-id-7\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">XGBClassifier</label><div class=\"sk-toggleable__content\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
       "              colsample_bylevel=None, colsample_bynode=None,\n",
       "              colsample_bytree=None, early_stopping_rounds=None,\n",
       "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
       "              gamma=None, gpu_id=None, grow_policy=None, importance_type=None,\n",
       "              interaction_constraints=None, learning_rate=None, max_bin=None,\n",
       "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
       "              max_delta_step=None, max_depth=None, max_leaves=None,\n",
       "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
       "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
       "              predictor=None, random_state=42, ...)</pre></div></div></div></div></div></div></div></div></div></div>"
      ],
      "text/plain": [
       "GridSearchCV(estimator=XGBClassifier(base_score=None, booster=None,\n",
       "                                     callbacks=None, colsample_bylevel=None,\n",
       "                                     colsample_bynode=None,\n",
       "                                     colsample_bytree=None,\n",
       "                                     early_stopping_rounds=None,\n",
       "                                     enable_categorical=False, eval_metric=None,\n",
       "                                     feature_types=None, gamma=None,\n",
       "                                     gpu_id=None, grow_policy=None,\n",
       "                                     importance_type=None,\n",
       "                                     interaction_constraints=None,\n",
       "                                     learning_rate=None, max_b...\n",
       "                                     max_cat_to_onehot=None,\n",
       "                                     max_delta_step=None, max_depth=None,\n",
       "                                     max_leaves=None, min_child_weight=None,\n",
       "                                     missing=nan, monotone_constraints=None,\n",
       "                                     n_estimators=100, n_jobs=None,\n",
       "                                     num_parallel_tree=None, predictor=None,\n",
       "                                     random_state=42, ...),\n",
       "             param_grid={'gamma': [0.1, 0.01, 0.001],\n",
       "                         'learning_rate': [0.1, 0.01, 0.001],\n",
       "                         'max_depth': [3, 5], 'n_estimators': [100, 200],\n",
       "                         'subsample': [1.0]},\n",
       "             verbose=3)"
      ]
     },
     "execution_count": 107,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model = xgb.XGBClassifier(random_state=42)\n",
    "\n",
    "# Defining parameter range\n",
    "param_grid = {\n",
    "    'max_depth': [3,5],\n",
    "    'learning_rate': [0.1 ,0.01, 0.001],\n",
    "    'n_estimators': [100,200],\n",
    "    'gamma': [ 0.1,0.01,0.001],\n",
    "    'subsample': [1.0]\n",
    "}\n",
    "\n",
    "\n",
    "grid = GridSearchCV(model, param_grid, refit=True, verbose=3)\n",
    "\n",
    "# Fitting the model for grid search\n",
    "grid.fit(X_train, y_train)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0f4c5633",
   "metadata": {},
   "source": [
    "# Best hyperparameter :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "id": "556e249c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'gamma': 0.1, 'learning_rate': 0.1, 'max_depth': 3, 'n_estimators': 100, 'subsample': 1.0}\n",
      "XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
      "              colsample_bylevel=None, colsample_bynode=None,\n",
      "              colsample_bytree=None, early_stopping_rounds=None,\n",
      "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
      "              gamma=0.1, gpu_id=None, grow_policy=None, importance_type=None,\n",
      "              interaction_constraints=None, learning_rate=0.1, max_bin=None,\n",
      "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
      "              max_delta_step=None, max_depth=3, max_leaves=None,\n",
      "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
      "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
      "              predictor=None, random_state=42, ...)\n"
     ]
    }
   ],
   "source": [
    "# print best parameter after tuning\n",
    "print(grid.best_params_)\n",
    "  \n",
    "# print how our model looks after hyper-parameter tuning\n",
    "print(grid.best_estimator_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "id": "0686e808",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style>#sk-container-id-4 {color: black;background-color: white;}#sk-container-id-4 pre{padding: 0;}#sk-container-id-4 div.sk-toggleable {background-color: white;}#sk-container-id-4 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-4 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-4 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-4 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-4 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-4 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-4 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-4 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-4 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-4 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-4 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-4 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-4 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-4 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-4 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-4 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-4 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-4 div.sk-item {position: relative;z-index: 1;}#sk-container-id-4 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-4 div.sk-item::before, #sk-container-id-4 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-4 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-4 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-4 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-4 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-4 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-4 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-4 div.sk-label-container {text-align: center;}#sk-container-id-4 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-4 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-4\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
       "              colsample_bylevel=None, colsample_bynode=None,\n",
       "              colsample_bytree=None, early_stopping_rounds=None,\n",
       "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
       "              gamma=0.1, gpu_id=None, grow_policy=None, importance_type=None,\n",
       "              interaction_constraints=None, learning_rate=0.1, max_bin=None,\n",
       "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
       "              max_delta_step=None, max_depth=3, max_leaves=None,\n",
       "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
       "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
       "              predictor=None, random_state=42, ...)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-8\" type=\"checkbox\" checked><label for=\"sk-estimator-id-8\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">XGBClassifier</label><div class=\"sk-toggleable__content\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
       "              colsample_bylevel=None, colsample_bynode=None,\n",
       "              colsample_bytree=None, early_stopping_rounds=None,\n",
       "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
       "              gamma=0.1, gpu_id=None, grow_policy=None, importance_type=None,\n",
       "              interaction_constraints=None, learning_rate=0.1, max_bin=None,\n",
       "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
       "              max_delta_step=None, max_depth=3, max_leaves=None,\n",
       "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
       "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
       "              predictor=None, random_state=42, ...)</pre></div></div></div></div></div>"
      ],
      "text/plain": [
       "XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
       "              colsample_bylevel=None, colsample_bynode=None,\n",
       "              colsample_bytree=None, early_stopping_rounds=None,\n",
       "              enable_categorical=False, eval_metric=None, feature_types=None,\n",
       "              gamma=0.1, gpu_id=None, grow_policy=None, importance_type=None,\n",
       "              interaction_constraints=None, learning_rate=0.1, max_bin=None,\n",
       "              max_cat_threshold=None, max_cat_to_onehot=None,\n",
       "              max_delta_step=None, max_depth=3, max_leaves=None,\n",
       "              min_child_weight=None, missing=nan, monotone_constraints=None,\n",
       "              n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
       "              predictor=None, random_state=42, ...)"
      ]
     },
     "execution_count": 109,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model_xgb = grid.best_estimator_\n",
    "model_xgb.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "id": "ac776bef",
   "metadata": {},
   "outputs": [],
   "source": [
    "y_proba = model_xgb.fit(X_train, y_train).predict_proba(X_test)[:,1]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3ea57532",
   "metadata": {},
   "source": [
    "# classification report"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "id": "18becbe2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              precision    recall  f1-score   support\n",
      "\n",
      "           0       0.97      0.97      0.97        30\n",
      "           1       0.97      0.97      0.97        30\n",
      "\n",
      "    accuracy                           0.97        60\n",
      "   macro avg       0.97      0.97      0.97        60\n",
      "weighted avg       0.97      0.97      0.97        60\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import classification_report, confusion_matrix\n",
    "grid_predictions = grid.predict(X_test)\n",
    "print(classification_report(y_test, grid_predictions))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5906ed11",
   "metadata": {},
   "source": [
    "#### The model demonstrated outstanding performance on the test dataset, with high precision, recall, and F1-score of 0.97 for both classes and an overall accuracy of 0.97."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "id": "c0193b78",
   "metadata": {},
   "outputs": [],
   "source": [
    "classes = model_xgb.classes_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "id": "d723c69f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0, 1])"
      ]
     },
     "execution_count": 113,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "classes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "id": "4643393d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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O1dZWVlatmxZOGIEAACXEHRrfc2aNVq2bJkGDBigsWPH6oYbblCnTp3Url07LV++XKNHjw5HnAAA2BOjq9aDrshPnjypDh06SKqbDz958qQk6frrr9fmzZtDGx0AACFy/sludrZoFHQi79Chgw4cOCBJ6tq1q9566y1JdZX6+ZeoAACAhhF0Ih87dqw+//xzSdK0adO0aNEiJSYmavLkyXr44YdDHiAAACHRwIvdNm/erGHDhikrK0uGYWj16tV+348ZM0aGYfhtQ4YMCfrHCnqOfPLkyb7/zsvL01dffaXdu3erU6dO6tWrV9ABAAAQiyorK5Wbm6u77rpLI0eOvOgxQ4YM0dKlS32fPR5P0NexdR+5JLVr107t2rWzexoAAMLKkM23nwV5/NChQzV06NCfPMbj8SgzM7P+QSnARL5w4cKAT3j//ffXOxgAAKJdeXm532ePx1OvSlqSNm7cqJYtW6pZs2b61a9+pSeffFLNmzcP6hwBJfLnn38+oJMZhhGRRH5r555qZFzR4NcFGsL7R4siHQIQNuVnTDXr3EAXC9HtZ9nZ2X67Z8+erTlz5gR9uiFDhmjkyJHKyclRaWmpZsyYoaFDh2r79u2Kj48P+DwBJfLzq9QBAHCsED2itayszO9x5PWtxu+44w7ff/fs2VO9evVSx44dtXHjRt10000BnyfoVesAALhZamqq31bfRP73OnTooBYtWqikpCSocbYXuwEA4AhR/tKUw4cP6/vvv1erVq2CGkciBwC4gt2nswU7tqKiwq+6PnDggIqKipSenq709HTNnTtXt912mzIzM1VaWqpHHnlEnTp10uDBg4O6DokcAIAw2LVrlwYOHOj7PGXKFElSfn6+Fi9erD179uiNN97QqVOnlJWVpUGDBumJJ54IulVPIgcAuEMDt9YHDBggy7r0oPfff99GMD+q12K3LVu26M4771S/fv105MgRSdIf/vAHbd26NSRBAQAQcryPvM7bb7+twYMHKykpSZ999pmqq6slSadPn9bTTz8d8gABAMClBZ3In3zySS1ZskSvvPKKrrjix4ewXHfddfr0009DGhwAAKESq68xDXqOvLi4WP37979gf1pamk6dOhWKmAAACL0QPdkt2gRdkWdmZl70ZvWtW7eqQ4cOIQkKAICQY468zvjx4/XAAw9o586dMgxDR48e1fLlyzV1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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#######CONFUSION MATRIX ###########\n",
    "from sklearn import metrics\n",
    "y_test_pred_xgb = model_xgb.predict(X_test)\n",
    "confusion_matrix_test = metrics.confusion_matrix(y_test, y_test_pred_xgb)\n",
    "cm_display = metrics.ConfusionMatrixDisplay(confusion_matrix = confusion_matrix_test)\n",
    "cm_display.plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "id": "5ad4efb1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Accuracy :  0.9666666666666667\n",
      "Sensitivity :  0.9666666666666667\n",
      "Specificity :  0.9666666666666667\n"
     ]
    }
   ],
   "source": [
    "total1=sum(sum(confusion_matrix_test))\n",
    "#####from confusion matrix calculate accuracy\n",
    "accuracy1=(confusion_matrix_test[0,0]+confusion_matrix_test[1,1])/total1\n",
    "print ('Accuracy : ', accuracy1)\n",
    "\n",
    "sensitivity1 = confusion_matrix_test[0,0]/(confusion_matrix_test[0,0]+confusion_matrix_test[0,1])\n",
    "print('Sensitivity : ', sensitivity1 )\n",
    "\n",
    "specificity1 = confusion_matrix_test[1,1]/(confusion_matrix_test[1,0]+confusion_matrix_test[1,1])\n",
    "print('Specificity : ', specificity1)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d9587421",
   "metadata": {},
   "source": [
    "#### The model achieved impressive consistency across accuracy, sensitivity, and specificity, with all metrics scoring 0.96, indicating its strong performance in correctly classifying both positive and negative samples."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6603d82c",
   "metadata": {},
   "source": [
    "# ROC curve"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 116,
   "id": "0e2a2694",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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mMC6deuoX7++oz8jI4MGDRoQFxfHnj17CAgI4NSpU7Ro0YLNmzfTsmVLx/SGv+/c1rJlSxYtWgRkvXNbYmIiy5Yt45tvvqFRo0b89ttvjofZLi9n1qxZMx599FH27t3LpEmTqFOnTpbLmUVERNChQwfHcmalSpVyLGe2ZcsWHnjgAdq1a8cdd9xBoUKF+O6771iyZAlff/01jz/+OAB9+vTho48+YsSIEdx2222UKlWKpk2b5uZXICJy46xdVEJEJP/asGGD4enpafTt2zfL93///XfDw8PD6N+/v6Pv0qVLxrhx44yGDRsagYGBRqFChYzSpUsbjzzyiDFr1iwjPT3dcWxWy5kVKlTIqFChgvHyyy8biYmJV91zwoQJRpUqVQwvLy8jODjY6NWrV6Yl0i6bO3euUbt2bcPHx8coXry40alTJ+Po0aOO98+cOWP06dPHqFKlilG4cGEjKCjIiIiIML766qtM14mLizMefvhhIyAgwAC0tJmI5Gka8RURERERt6A5viIiIiLiFhR8RURERMQtKPiKiIiIiFtQ8BURERERt6DgKyIiIiJuQcFXRERERNxCIasLyG12u53jx48TEBCgrTZFRERE8iDDMEhMTCQ0NNSxSY8ruF3wPX78OGFhYVaXISIiIiL/4siRI5QtW9Zl13O74BsQEACYv5GBgYEWVyMiIiIi/5SQkEBYWJgjt7mK2wXfy9MbAgMDFXxFRERE8jBXT0vVw20iIiIi4hYUfEVERETELSj4ioiIiIhbUPAVEREREbeg4CsiIiIibkHBV0RERETcgoKviIiIiLgFBV8RERERcQsKviIiIiLiFhR8RURERMQtKPiKiIiIiFtQ8BURERERt6DgKyIiIiJuQcFXRERERNyCgq+IiIiIuAVLg++vv/5Kq1atCA0NxWaz8f333//rOStWrKBOnTr4+Phw2223MX369ByvU0RERETyP0uD78WLF6lZsyYTJ068oeNjY2N5+OGHuf/++9myZQsvvvgizz77LIsXL87hSkVEREQkvytk5c1btmxJy5Ytb/j4yZMnU758ecaOHQtA1apVWbVqFe+//z7NmzfPqTL/lWFAUpJltxcREREpUC5ezJnrWhp8nbV27VoiIyMz9TVv3pwXX3zxmuekpKSQkpLiaCckJLi0JsOAu++GNWtcelkRERERt1SINNJz6Nr5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X+6SwnJKQkICQUFBHD8eT0hIoNXliEhBt2SJGXjvvtts/33pMhERydLlvBYfH09goOvy2g2P+K5YscJlNxURKfCSk80H2N5/H8LCzI0oihUztx/+l0EEERHJGU5vYCEiIv9i507o2BG2bTPbrVqBj4+1NYmIiPNbFouIyDUYBowfD3XrmqG3ZEmYPx8mToS/PR8hIiLW0IiviIgrJCXB449DTIzZbtkSpk2D4GBr6xIREQeN+IqIuIKfHxQpYk5pGD8eFi5U6BURyWMUfEVEsispCeLjzV/bbPDxx7BxI/TtqwfYRETyoGwF399++43OnTvTsGFDjh07BsDMmTNZtWqVS4sTEcmzNm825/L26GHO7QUoXhzuvNPaukRE5JqcDr7ffPMNzZs3x8/Pj82bN5OSkgJAfHw8o0aNcnmBIiJ5it0OY8aYWwzv2QOrVkFcnNVViYjIDXA6+L755ptMnjyZKVOm4OXl5ehv3LgxmzZtcmlxIiJ5ytGj8OCD8MorkJYGbdqYqzeEhFhdmYiI3ACng+/evXu59957r+oPCgri/PnzrqhJRCTv+fprqFEDli83lyabMgW++QZKlLC6MhERuUFOB9/SpUuzf//+q/pXrVpFhQoVXFKUiEiekpQEAwbAuXNQr545v/fZZ/UAm4hIPuN08O3RowcvvPAC69evx2azcfz4cWbNmsXAgQPp1atXTtQoImItf3/4/HNzC+I1a6BSJasrEhGRbHB6A4tBgwZht9t54IEHSEpK4t5778XHx4eBAwfSr1+/nKhRRCR3pafD6NEQFgZPPWX23X+/+RIRkXzLZhiX1+FxTmpqKvv37+fChQvccccdFClSxNW15YiEhASCgoI4fjyekJBAq8sRkbwmNha6dIHVq6FwYfjzTz28JiKSyy7ntfj4eAIDXZfXsr1lsbe3N3fccYfLChERsZRhwKxZ0Ls3JCZCYCBMmqTQKyJSgDgdfO+//35s13mgY/ny5TdVkIhIrjt/3gy8X35pths3hi++gPBwK6sSEREXczr41qpVK1M7LS2NLVu2sGPHDrp16+aqukREckdSEtSpY05x8PSE11+HQYOgULZ/ICYiInmU03+zv//++1n2v/7661y4cOGmCxIRyVX+/tC+PcybZ051iIiwuiIREckh2X647Z/2799PgwYNOHv2rCsul2P0cJuIsG8feHjA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elXozsrzzz/Pli1brvu61lQHb29v6taty7Jlyxx9drudZcuWOaaEXI+vry9lypQhPT2db775htatW191TOHChQkJCeHcuXMsXrz4qmN27Nhx3VH33Kbg6wqJifD009CuHZw7Zz689v9/0YiIiFjhiSeewNPTk4kTJwJQrlw53nnnHcaNG8fQoUPZs2cPBw4c4L333uOVV17hpZdeIiIiAoCIiAhH3yuvvMLatWv53//+x7Jly3jiiSeYMWNGlvfs0KEDpUuX5rHHHmP16tUcPHiQb775xvEgVdOmTdmwYQOff/45f/75J9HR0ezYseOGP1PHjh2ZPHkyS5YsoVOnTo7+gIAABg4cyIABA5gxYwYHDhxg06ZNjB8//pq1gjmXde3atY65q2DO3V2yZAlr1qxh9+7dPPfcc1eNmGalT58+nD17lg4dOvDHH39w4MABFi9eTPfu3cnIyKBYsWLccsstfPLJJ+zfv5/ly5cTFRX1r9ctXrz4VUH6n69Cha79A/yoqCimTJnCjBkz2L17N7169eLixYt0797dcUzXrl0ZPHiwo71+/Xq+/fZbDh48yG+//UaLFi2w2+288sorjmMWL15MTEwMsbGxLFmyhPvvv58qVapkui6YDxA2a9bsXz9nrnHpGhH5gMuXM1u71jAqVjSXKbPZDGPoUMNITXXNtUVEJNdcb2mlvC6rZcIMwzBGjx5tlCxZ0rhw4YKj74cffjDuueceo3Dhwoavr69Rt25dY+rUqVled+7cuca9995rBAQEGIULFzZq1KhhjBgx4rrLmR06dMh4/PHHjcDAQMPf39+oV6+esX79esf7w4cPN4KDg42goCBjwIABRt++fa9azuyFF17I8tq7du0yAOPWW2817P9Y881utxvjxo0zKleubHh5eRklS5Y0mjdvbqxcufKataalpRmhoaFGTEyMo++vv/4yWrdubRQpUsQoVaqUMWzYMKNr166Zfn+vVeO+ffuMNm3aGEWLFjX8/PyMKlWqGC+++KKj1iVLlhhVq1Y1fHx8jBo1ahgrVqwwAOO77767Zo2uMH78eKNcuXKGt7e30aBBA8fycn//PN26dXO0V6xY4ajzlltuMbp06WIcO3Ys0zlz5841KlSoYHh7exulS5c2+vTpY5w/fz7TMUePHjW8vLyMI0eOZFmXFcuZ2QwjmzPY86mEhASCgoI4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",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.metrics import roc_curve, auc\n",
    "# Calculate the false positive rate (FPR), true positive rate (TPR), and thresholds\n",
    "fpr, tpr, thresholds = roc_curve(y_test, y_proba)\n",
    "\n",
    "# Calculate the area under the ROC curve (AUC)\n",
    "roc_auc = auc(fpr, tpr)\n",
    "\n",
    "# Plot the ROC curve\n",
    "plt.figure(figsize=(8, 6))\n",
    "plt.plot(fpr, tpr, color='blue', label='ROC curve (area = %0.2f)' % roc_auc)\n",
    "plt.plot([0, 1], [0, 1], color='red', linestyle='--')\n",
    "plt.xlim([0.0, 1.0])\n",
    "plt.ylim([0.0, 1.05])\n",
    "plt.xlabel('False Positive Rate')\n",
    "plt.ylabel('True Positive Rate')\n",
    "plt.title('XGBoost')\n",
    "plt.legend(loc='lower right')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "371daa84",
   "metadata": {},
   "source": [
    "### The ROC curve above shows that the XGBoost model has an AUC of 0.99 which indicates that the model preformed good in classification of non cancer and cancer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "id": "338beef4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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19eEhISY119/PdVrOnz4sGnTpo3x8/MzgYGB5plnnjHLly9PV8C/VvA1xpgxY8YYwEybNs3Zlp73JK3P+d/vz4wZM8zdd99tAgMDjZeXl6lcubKZMmXKNWsVyYkKZHWPskh+4ubmxvvvv0+tWrXo3bs3P/30E3Xr1qVv374p9luyZAlgjQvOqNjYWM6cOQNATEwM33zzDcuXL2fw4MEp9nv55Zd55ZVXCA8Pp3fv3uzdu5f33nuPjRs3sm7dOjw9PYF/vjqtV68eY8eO5eTJk7zzzjusW7eOrVu3UqRIEQAeeOABdu3aRf/+/QkLC+PUqVOsXLmSI0eOEBYWxoQJE+jfvz+FChVi6NChAAQFBWX49WVEYmIix44do2jRoinalyxZgo+PDx07dkzzuLJly9KkSRNWr17N5cuX8fX1ZfHixfj6+vK///0vU7XExsayatUq7rzzTsqUKZOpc1xLYmIiERERNGnShDfffBM/Pz/CwsKYPHkyS5cu5cEHH0xRy5IlS3jkkUfw8PAAYM6cOfTo0YOIiAhef/11YmNjee+992jSpAlbt2696lfbHTp0oEiRIgwcONA5zKZQoUIA7Nq1izvuuAN/f3+ef/55PD09ef/997nrrrv44YcfaNCgQYpz9enTh8DAQIYPH86lS5du+D158MEHqVChAmPGjMH8/6i9lStXcvDgQXr27EnJkiXZtWsX06ZNY9euXfz888/XHdawf/9+/ve///HYY4/Ro0cPZsyYwSOPPEKdOnWoUqXKNY89d+4cLVq0oEOHDnTs2JHPPvuMF154gWrVqtGyZUsALl26RLNmzThx4gQDBgygZMmSzJs3j++///6G3w+Abt26MWTIEFasWOEc/pOe96RDhw7s27ePTz75hLfffpvixYsDEBgYCMB7771HlSpVuP/++ylQoABLliyhT58+OByOVH+/ieRodidvkbxo8ODBBjAeHh5m8+bNqZ5v3769Acz58+dTtF++fNmcPn3a+fh372xyT2Baj969exuHw+Hc99SpU8bLy8s0b97cJCUlOdsnTZpkADNjxgxjjDHx8fGmRIkSpmrVquby5cvO/b7++msDmOHDhxtjrGEApOOr7qwe6tC8eXPne7Njxw7TrVs3A5i+ffum2LdIkSKmRo0a1zzf008/bQDz22+/GWOMKVq06HWPuZbt27cbwAwYMCBd+2e0xxcwL774Yop9HQ6HKVWqlHnggQdStH/66acGMD/++KMxxpgLFy6YIkWKmF69eqXYLyoqygQEBKRq/6+rfdvQrl074+XlZQ4cOOBsO378uClcuLC58847nW3JvZRNmjRJ0QOdHtfq8e3cuXOq/dP6ij/5m5fk9+PfNf23x/e/+506dcp4e3ubZ5991tl2tR5f/vMtQ1xcnClZsmSKz2f8+PEGMIsWLXK2Xb582VSqVMklPb7GGBMQEGBq1arl3E7ve3KtoQ5pnSMiIsKUK1fumvWK5DSa1UEkCyT3loSEhFC1atVUz8fExAA4e86STZ06lcDAQOejSZMmqY594oknWLlyJStXruTzzz+nb9++vP/++0RGRjr3+e6774iPj+eZZ55JcfNNr1698Pf3Z+nSpYB109apU6fo06cPPj4+zv1at25NpUqVnPv5+vri5eXFmjVrOHfuXGbflhu2YsUK53tTrVo15syZQ8+ePVPd1HfhwgUKFy58zXMlP5/8WcTExFz3mGtJPs+NnON6evfunWLbzc2NBx98kGXLlnHx4kVn+4IFCyhVqpTz52flypWcP3+ezp07c+bMGefDw8ODBg0aZKq3MSkpiRUrVtCuXTvKlSvnbA8ODqZLly6sXbvW+Z4k69Wrl7MH2hWeeuqpVG2+vr7O31+5coUzZ85w++23A7Bly5brnvO2227jjjvucG4HBgZy6623cvDgweseW6hQoRTf4nh5eVG/fv0Uxy5fvpxSpUpx//33O9t8fHxS3Zx5IwoVKpRidocbfU/+e47o6GjOnDlD06ZNOXjwINHR0S6qXCTrKfiKuNjRo0cZMWIEVatW5ejRo7zxxhup9kkOR/8OK2ANJ0gOtVe7K7tChQqEh4cTHh5Ohw4dmDRpEn369GHChAns2LEDgD///BOAW2+9NcWxXl5elCtXzvn81fYDqFSpkvN5b29vXn/9db755huCgoK48847eeONN4iKikr3+/Jfp0+fJioqyvn473uRlgYNGrBy5UqWL1/Om2++SZEiRTh37hxeXl4p9itcuPB1p3VKfj75s/D397+hqaD8/f1TnNfVChQoQOnSpVO1d+rUicuXL7N48WLA+platmwZDz74oPNr/T/++AOAZs2apfiPVWBgICtWrODUqVMZruf06dPExsam+bNTuXJlHA4HR48eTdFetmzZDF/n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REREJJu4GZN8W7s9GjRoQL169Zg0aRIADoeD0NBQ+vfvz4svvnjd45OSkihatCiTJk2ie/fu190/JiaGgIAAjh+PJjjY/4brl1xk1CjYsAFmzoSgILurERERkatIzmvR0dH4+7sur9k6nVl8fDybN29m8ODBzjZ3d3fCw8PZsGFDus4RGxtLQkICxYoVS/P5uLg44uLinNsxWnY2/1iyBMqWhapVre0hQ8Dd3Zq6TERERPIdW4c6nDlzhqSkJIL+0/sWFBREVFRUus7xwgsvEBISQnh4eJrPjx07loCAAOcjNDT0huuWHC42Fnr3hvvvh65drRvawFp+WKFXREQk37J9jO+NeO2115g/fz5ffvklPj4+ae4zePBgoqOjnY+jR49mc5WSrbZsgdq1YepUazs8XGFXREREAJuHOhQvXhwPDw9OnjyZov3kyZOULFnymse++eabvPbaa3z33XdUr179qvt5e3vj7e3tknolB3M44M03YdgwSEiA4GD46CMr+IqIiIhgc4+vl5cXderUYdWqVc42h8PBqlWraNiw4VWPe+ONNxg1ahTLly+nbt262VGq5GTnzlkB94UXrNDbvr01e4NCr4iIiPyLrT2+AJGRkfTo0YO6detSv359JkyYwKVLl+jZsycA3bt3p1SpUowdOxaA119/neHDhzNv3jzCwsKcY4ELFSpEoUKFbHsdYiN/fyvw+vnBu+/Co49qeIOIiIikYnvw7dSpE6dPn2b48OFERUVRs2ZNli9f7rzh7ciRI7i7/9Mx/d577xEfH8///ve/FOcZMWIEL7/8cnaWLna6cAE8PcHHx7ppbe5ciIuDChXsrkxERERyKNvn8c1umsc3D/j5Z2u2hjZt/lmFTURERPKMrJrHN1fP6iD5TGIijBwJTZrAwYOwaBFoXmYRERFJJwVfyR0OHYKmTWHECEhKgi5dYNs2a3yviIiISDoo+ErOZgzMmQM1asD69VbQ/fhja0xvkSJ2VyciIiK5iO03t4lc099/Q//+1s1sjRtboTcszO6qREREJBdS8JWcrXhxeP99+OMPePFFKKAfWREREckcpQjJWeLj4eWXrRvYWrWy2jp1srUkERERyRsUfCXn2LvXmqZs82YoUQL274fChe2uSkRERPII3dwm9jMGpk+H2rWt0Fu0KEyZotArIiIiLqUeX7HXmTPQq5c1Jy9A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mxIlSpjRo0fb9RIkAzL6eY8YMcIULlzYfPLJJ+bgwYNmxYoVpnz58qZjx452vQTJgAsXLpitW7earVu3GsC89dZbZuvWrebPP/80xhjz4osvmm7dujn3T57O7LnnnjO7d+82kydP1nRmySZOnGjKlCljvLy8TP369c3PP//sfK5p06amR48eKfb/9NNPTcWKFY2Xl5epUqWKWbp0aTZXLDciI5/3zTffbIBUjxEjRmR/4ZIpGf3z/W8KvrlPRj/v9evXmwYNGhhvb29Trlw58+qrr5rExMRsrloyKyOfd0JCgnn55ZdN+fLljY+PjwkNDTV9+vQx586dy/7CJcO+//77NP89Tv6Me/ToYZo2bZrqmJo1axovLy9Trlw5M3PmzAxf180YfR8gIiIiInlfnhrjKyIiIiJyNQq+IiIiIpIvKPiKiIiISL6g4CsiIiIi+YKCr4iIiIjkCwq+IiIiIpIvKPiKiIiISL6g4CsiIiIi+YKCr4gIMGvWLIoUKWJ3GZnm5ubGokWLrrnPI488Qrt27bKlHhGRnEjBV0TyjEceeQQ3N7dUj/3799tdGrNmzXLW4+7uTunSpenZsyenTp1yyflPnDhBy5YtATh8+DBubm5s27YtxT7vvPMOs2bNcsn1rubll192vk4PDw9CQ0N54oknOHv2bIbOo5AuIlmhgN0FiIi4UosWLZg5c2aKtsDAQJuqScnf35+9e/ficDjYvn07PXv25Pjx43z77bc3fO6SJUted5+AgIAbvk56VKlShe+++46kpCR2797No48+SnR0NAsWLMiW64uIXI16fEUkT/H29qZkyZIpHh4eHrz11ltUq1aNggULEhoaSp8+fbh48eJVz7N9+3buvvtuChcujL+/P3Xq1GHTpk3O59euXcsdd9yBr68voaGhPP3001y6dOmatbm5uVGyZElCQkJo2bIlTz/9NN999x2XL1/G4XAwcuRISpcujbe3NzVr1mT58uXOY+Pj4+nXrx/BwcH4+Phw8803M3bs2BTnTh7qULZsWQBq1aqFm5sbd911F5CyF3XatGmEhITgcDhS1Ni2bVseffRR5/ZXX31F7dq18fHxoVy5crzyyiskJiZe83UWKFCAkiVLUqpUKcLDw3nwwQdZuXKl8/mkpCQee+wxypYti6+vL7feeivvvPOO8/mXX36Z2bNn89VXXzl7j9esWQPA0aNH6dixI0WKFKFYsWK0bduWw4cPX7MeEZFkCr4iki+4u7vz7rvvsmvXLmbPns3q1at5/vnnr7p/165dKV26NBs3bmTz5s28+OKLeHp6AnDgwAFatGjBAw88wG+//caCBQtYu3Yt/fr1y1BNvr6+OBwOEhMTeeeddxg/fjxvvvkmv/32GxEREdx///388ccfALz77rssXryYTz/9lL179zJ37lzCwsLSPO+vv/4KwHfffceJEyf44osvUu3z4IMP8vfff/P99987286ePcvy5cvp2rUrAD/99BPdu3dnwIAB/P7777z//vvMmjWLV199Nd2v8fDhw3z77bd4eXk52xwOB6VLl2bhwoX8/vvvDB8+nCFDhvDpp58CMGjQIDp27EiLFi04ceIEJ06coFGjRiQkJBAREUHhwoX56aefWLduHYUKFaJFixbEx8enuyYRyceMiEge0aNHD+Ph4WEKFizofPzvf/9Lc9+FCxeam266ybk9c+ZMExAQ4NwuXLiwmTVrVprHPvbYY+aJJ55I0fbTTz8Zd3d3c/ny5TSP+e/59+3bZypWrGjq1q1rjDEmJCTEvPrqqymOqVevnunTp48xxpj+/fubZs2aGYfDkeb5AfPll18aY4w5dOiQAczWrVtT7NOjRw/Ttm1b53bbtm3No48+6tx+//33TUhIiElKSjLGGHPPPfeYMWPGpDjHnDlzTHBwcJo1GGPMiBEjjLu7uylYsKDx8fExgAHMW2+9ddVjjDGmb9++5oEHHrhqrcnXvvXWW1O8B3FxccbX19d8++231zy/iIgxxmiMr4jkKXfffTfvvfeec7tgwYKA1fs5duxY9uzZQ0xMDImJiVy5coXY2Fj8/PxSnScyMpLHH3+cOXPmOL+uL1++PGANg/jtt9+YO3euc39jDA6Hg0OHDlG5cuU0a4uOjqZQoUI4HA6uXLlCkyZN+OCDD4iJieH48eM0btw4xf6NGzdm+/btgDVM4d577+XWW2+lRYsW3HfffTRv3vyG3quuXbvSq1cvpkyZgre3N3PnzuWhhx7C3d3d+TrXrVuXooc3KSnpmu8bwK233srixYu5cuUKH3/8Mdu2baN///4p9pk8eTIzZszgyJEjXL58mfj4eGrWrHnNerdv387+/fspXLhwivYrV65w4MCBTLwDIpLfKPiKSJ5SsGBBbrnllhRthw8f5r777qN37968+uqrFCtWjLVr1/LYY48RHx+fZoB7+eWX6dKlC0uXLuWbb75hxIgRzJ8/n/bt23Px4kWefPJJnn766VTHlSlT5qq1FS5cmC1btuDu7k5wcDC+vr4AxMTEXPd11a5dm0OHDvHNN9/w3Xff0bFjR8LDw/nss8+ue+zVtGnTBmMMS5cupV69evz000+8/fbbzucvXrzIK6+8QocOHVId6+Pjc9Xzenl5OT+D1157jdatW/PKK68watQoAObPn8+gQYMYP348DRs2pHDhwowbN45ffvnlmvVevHiROnXqpPgPR7KccgOjiORsCr4ikudt3rwZh8PB+PHjnb2ZyeNJr6VixYpUrFiRgQMH0rlzZ2bOnEn79u2pXbs2v//+e6qAfT3u7u5pHuPv709ISAjr1q2jadOmzvZ169ZRv379FPt16tSJTp068b///Y8WLVpw9uxZihUrluJ8yeNpk5KSrlmPj48PHTp0YO7cuezfv59bb72V2rVrO5+vXbs2e/fuzfDr/K9hw4bRrFkzevfu7XydjRo1ok+fPs59/ttj6+Xllar+2rVrs2DBAkqUKIG/v/8N1SQi+ZNubhORPO+WW24hISGBiRMncvDgQebMmcPUqVOvuv/ly5fp168fa9as4c8//2TdunVs3LjROYThhRdeYP369fTr149t27bxxx9/8NVXX2X45rZ/e+6553j99ddZsGABe/fu5cUXX2Tbtm0MGDAAgLfeeotPPvmEPXv2sG/fPhYuXEjJkiXTXHSjRIkS+Pr6snz5ck6ePEl0dPRVr9u1a1eWLl3KjBkznDe1JRs+fDgfffQRr7zyCrt27WL37t3Mnz+fYcOGZei1NWzYkOrVqzNmzBgAKlSowKZNm/j222/Zt28fL730Ehs3bkxxTFhYGL/99ht79+7lzJkzJCQk0LVrV4oXL07btm356aefOHToEGvWrOHpp5/m2LFjGapJRPInBV8RyfNq1KjBW2+9xeuvv07VqlWZO3duiqnA/svDw4O///6b7t27U7FiRTp27EjLli155ZVXAKhevTo//PAD+/bt44477qBWrVoMHz6ckJCQTNf49NNPExkZybPPPku1atVYvnw5ixcvpkKFCoA1TOKNN96gbt261KtXj8OHD7Ns2TJnD/a/FShQgHfffZf333+fkJAQ2rZte9XrNmvWjGLFirF37166dOmS4rmIiAi+/vprVqxYQb169bj99tt5++23ufnmmzP8+gYOHMgHH3zA0aNHefLJJ+nQoQOdOnWiQYMG/P333yl6fwF69erFrbfeSt26dQkMDGTdunX4+fnx448/UqZMGTp06EDlypV57LHHuHLlinqARSRd3Iwxxu4iRERERESymnp8RURERCRfUPAVERERkXxBwVdERERE8gUFXxERERHJFxR8RURERCRfUPAVERERkXxBwVdERERE8gUFXxERERHJFxR8RURERCRfUPAVERERkXxBwVdERERE8oX/A8lTrErJuNg/AAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Predict probabilities for the training data\n",
    "y_train_proba = model_xgb.predict_proba(X_train)[:, 1]\n",
    "\n",
    "# Calculate the false positive rate (FPR), true positive rate (TPR), and thresholds\n",
    "fpr_train, tpr_train, thresholds_train = roc_curve(y_train, y_train_proba)\n",
    "\n",
    "# Calculate the area under the ROC curve (AUC) for training data\n",
    "roc_auc_train = auc(fpr_train, tpr_train)\n",
    "\n",
    "# Plot the ROC curve for training data\n",
    "plt.figure(figsize=(8, 6))\n",
    "plt.plot(fpr_train, tpr_train, color='blue', label='ROC curve (area = %0.2f)' % roc_auc_train)\n",
    "plt.plot([0, 1], [0, 1], color='red', linestyle='--')\n",
    "plt.xlim([0.0, 1.0])\n",
    "plt.ylim([0.0, 1.05])\n",
    "plt.xlabel('False Positive Rate')\n",
    "plt.ylabel('True Positive Rate')\n",
    "plt.title('XGBoost - ROC Curve for Training Data')\n",
    "plt.legend(loc='lower right')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9c0fc6a6",
   "metadata": {},
   "source": [
    "#### In the ROC curve above we can see that the AUC value of 1 for the train set which indicates the model's flawless ability to distinguish between positive and negative classes during training, showcasing excellent performance on the training data."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bee03388",
   "metadata": {},
   "source": [
    "# Feature importance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "id": "6688e037",
   "metadata": {},
   "outputs": [],
   "source": [
    "# for important features:\n",
    "important_feat = model_xgb.feature_importances_\n",
    "#get indices of those important features\n",
    "idx = important_feat.argsort(kind= \"quicksort\")\n",
    "idx= idx[::-1][:50]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 119,
   "id": "4e6a7ea1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 32, 212, 169, 137, 170,  83,  84, 101,   7, 140, 104,  17,  14,\n",
       "       120, 135, 116, 103, 198, 136, 229,  22, 189, 217,  71,  77,  75,\n",
       "        78,  79,  76,  74,  73,  72,  70,  80,  68,  67,  66,  65,  64,\n",
       "        63,  62,  61,  69, 108, 106, 105, 102, 100,  99,  98])"
      ]
     },
     "execution_count": 119,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "idx"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 120,
   "id": "f2101fe1",
   "metadata": {},
   "outputs": [],
   "source": [
    "df1 = X.T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 121,
   "id": "2cbf1166",
   "metadata": {},
   "outputs": [],
   "source": [
    "top_met = df1.iloc[idx]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 122,
   "id": "2370b2df",
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['hsa-miR-130b-3p', 'hsa-miR-93-5p', 'hsa-miR-455-3p', 'hsa-miR-378i',\n",
       "       'hsa-miR-455-5p', 'hsa-miR-21-3p', 'hsa-miR-21-5p', 'hsa-miR-29c-3p',\n",
       "       'hsa-miR-100-5p', 'hsa-miR-424-5p', 'hsa-miR-30a-5p', 'hsa-miR-1246',\n",
       "       'hsa-miR-1224-5p', 'hsa-miR-338-3p', 'hsa-miR-378a-3p',\n",
       "       'hsa-miR-324-3p', 'hsa-miR-301a-3p', 'hsa-miR-582-5p', 'hsa-miR-378d',\n",
       "       'mr_1', 'hsa-miR-126-3p', 'hsa-miR-497-5p', 'hsa-miR-99a-5p',\n",
       "       'hsa-miR-197-3p', 'hsa-miR-19b-3p', 'hsa-miR-199a-5p',\n",
       "       'hsa-miR-200b-3p', 'hsa-miR-200c-3p', 'hsa-miR-19a-3p',\n",
       "       'hsa-miR-199a-3p', 'hsa-miR-1973', 'hsa-miR-197-5p', 'hsa-miR-195-5p',\n",
       "       'hsa-miR-205-5p', 'hsa-miR-193a-5p', 'hsa-miR-1915-3p',\n",
       "       'hsa-miR-18b-5p', 'hsa-miR-18a-5p', 'hsa-miR-188-5p', 'hsa-miR-185-5p',\n",
       "       'hsa-miR-181b-5p', 'hsa-miR-181a-5p', 'hsa-miR-193b-3p', 'hsa-miR-3125',\n",
       "       'hsa-miR-30c-5p', 'hsa-miR-30b-5p', 'hsa-miR-29c-5p', 'hsa-miR-29a-3p',\n",
       "       'hsa-miR-296-5p', 'hsa-miR-27b-3p'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 122,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "top_met.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 123,
   "id": "479adbc2",
   "metadata": {},
   "outputs": [],
   "source": [
    "from xgboost import plot_importance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 124,
   "id": "24f6ba66",
   "metadata": {},
   "outputs": [],
   "source": [
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 125,
   "id": "9e9641d0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 0, 'Xgboost Feature Importance')"
      ]
     },
     "execution_count": 125,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sorted_idx = model_xgb.feature_importances_.argsort()\n",
    "plt.barh(top_met.index, model_xgb.feature_importances_[idx])[::-1]\n",
    "plt.xlabel(\"Xgboost Feature Importance\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "280fc535",
   "metadata": {},
   "source": [
    "#### The plot above shows the feature importance from low to high for top 50 genes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5cf81884",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.16"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}