├── All Regression Check ├── Algerian Forest.pdf ├── Tips FE Automation │ ├── FE Automation.ipynb │ └── index.css └── index.php ├── Decision Tree ├── Carseats.csv ├── Decision Tree.ipynb ├── index.css └── index.php ├── Hyper Parameter Tuning ├── HyperParameter Tuning.pdf └── index.css ├── KNN ├── KNN.ipynb └── index.css ├── Linear Regression ├── LINEAR REGRESSION .pdf ├── Tv Ads Linear Regression.pdf ├── index.html └── tvmarketing.csv ├── Logistic Regression ├── Logistic Regression .pdf └── index.html ├── ML]]Preprocessing Automation ├── Heart Stroke Jup Notebook.ipynb ├── healthcare-dataset-stroke-data.csv └── index.html ├── Multi Linear Regression ├── Multi Linear Regressions ├── 50_Startups.csv ├── Startup Profits Prediction.ipynb └── index.php ├── PCA ├── PCA.ipynb └── index.php └── SVC ├── SVC - Jupyter Notebook.pdf ├── SVC.ipynb ├── Social_Network_Ads.csv └── index.php /All Regression Check/Algerian Forest.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/All Regression Check/Algerian Forest.pdf -------------------------------------------------------------------------------- /All Regression Check/Tips FE Automation/FE Automation.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "954bf0ce-f43f-4bf7-b72c-4cebc5481215", 6 | "metadata": {}, 7 | "source": [ 8 | "# ML Feature Engineering Automation" 9 | ] 10 | }, 11 | { 12 | "cell_type": "markdown", 13 | "id": "c089e171-700b-4033-8043-cdee4b785f59", 14 | "metadata": {}, 15 | "source": [ 16 | "## Import Necessary Libraries" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "id": "5547d609-4d6b-4fa1-abb4-fe56c92c77bd", 23 | "metadata": {}, 24 | "outputs": [], 25 | "source": [ 26 | "import pandas as pd\n", 27 | "import numpy as np\n", 28 | "import matplotlib.pyplot as plt\n", 29 | "import seaborn as sns\n", 30 | "import warnings\n", 31 | "warnings.filterwarnings(\"ignore\")" 32 | ] 33 | }, 34 | { 35 | "cell_type": "markdown", 36 | "id": "62a65aae-088a-4218-a0fa-8d852d4b20da", 37 | "metadata": {}, 38 | "source": [ 39 | "## Load the Tips Dataset" 40 | ] 41 | }, 42 | { 43 | "cell_type": "code", 44 | "execution_count": 2, 45 | "id": "f1a1e18d-842f-4bee-be3e-373ae312c0bc", 46 | "metadata": {}, 47 | "outputs": [], 48 | "source": [ 49 | "df=sns.load_dataset(\"tips\")" 50 | ] 51 | }, 52 | { 53 | "cell_type": "code", 54 | "execution_count": 3, 55 | "id": "ec1125bd-abb1-49ba-9cc6-97edcd7293f4", 56 | "metadata": {}, 57 | "outputs": [ 58 | { 59 | "data": { 60 | "text/html": [ 61 | "
\n", 62 | "\n", 75 | "\n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | " \n", 115 | " \n", 116 | " \n", 117 | " \n", 118 | " \n", 119 | " \n", 120 | " \n", 121 | " \n", 122 | " \n", 123 | " \n", 124 | " \n", 125 | " \n", 126 | " \n", 127 | " \n", 128 | " \n", 129 | " \n", 130 | " \n", 131 | " \n", 132 | " \n", 133 | " \n", 134 | " \n", 135 | " \n", 136 | " \n", 137 | " \n", 138 | " \n", 139 | " \n", 140 | " \n", 141 | " \n", 142 | " \n", 143 | " \n", 144 | " \n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | " \n", 185 | " \n", 186 | " \n", 187 | " \n", 188 | " \n", 189 | " \n", 190 | " \n", 191 | " \n", 192 | " \n", 193 | " \n", 194 | " \n", 195 | " \n", 196 | " \n", 197 | " \n", 198 | " \n", 199 | " \n", 200 | "
total_billtipsexsmokerdaytimesize
016.991.01FemaleNoSunDinner2
110.341.66MaleNoSunDinner3
221.013.50MaleNoSunDinner3
323.683.31MaleNoSunDinner2
424.593.61FemaleNoSunDinner4
........................
23929.035.92MaleNoSatDinner3
24027.182.00FemaleYesSatDinner2
24122.672.00MaleYesSatDinner2
24217.821.75MaleNoSatDinner2
24318.783.00FemaleNoThurDinner2
\n", 201 | "

244 rows × 7 columns

\n", 202 | "
" 203 | ], 204 | "text/plain": [ 205 | " total_bill tip sex smoker day time size\n", 206 | "0 16.99 1.01 Female No Sun Dinner 2\n", 207 | "1 10.34 1.66 Male No Sun Dinner 3\n", 208 | "2 21.01 3.50 Male No Sun Dinner 3\n", 209 | "3 23.68 3.31 Male No Sun Dinner 2\n", 210 | "4 24.59 3.61 Female No Sun Dinner 4\n", 211 | ".. ... ... ... ... ... ... ...\n", 212 | "239 29.03 5.92 Male No Sat Dinner 3\n", 213 | "240 27.18 2.00 Female Yes Sat Dinner 2\n", 214 | "241 22.67 2.00 Male Yes Sat Dinner 2\n", 215 | "242 17.82 1.75 Male No Sat Dinner 2\n", 216 | "243 18.78 3.00 Female No Thur Dinner 2\n", 217 | "\n", 218 | "[244 rows x 7 columns]" 219 | ] 220 | }, 221 | "execution_count": 3, 222 | "metadata": {}, 223 | "output_type": "execute_result" 224 | } 225 | ], 226 | "source": [ 227 | "df" 228 | ] 229 | }, 230 | { 231 | "cell_type": "markdown", 232 | "id": "213b71ee-7679-479d-9d05-10656dcedccb", 233 | "metadata": {}, 234 | "source": [ 235 | "## Split the Data into dependent and Independent features" 236 | ] 237 | }, 238 | { 239 | "cell_type": "code", 240 | "execution_count": 4, 241 | "id": "75ea5606-d65d-495a-ae49-d869ca39c244", 242 | "metadata": {}, 243 | "outputs": [], 244 | "source": [ 245 | "x=df.drop(\"time\",axis=1)" 246 | ] 247 | }, 248 | { 249 | "cell_type": "code", 250 | "execution_count": 5, 251 | "id": "310b9cc3-4cc7-4ba5-9457-d16cb897ac51", 252 | "metadata": {}, 253 | "outputs": [], 254 | "source": [ 255 | "y=df[\"time\"]" 256 | ] 257 | }, 258 | { 259 | "cell_type": "markdown", 260 | "id": "dd693204-9268-4bc1-b243-06876c568ece", 261 | "metadata": {}, 262 | "source": [ 263 | "## Split the Data into Training and Testing" 264 | ] 265 | }, 266 | { 267 | "cell_type": "code", 268 | "execution_count": 6, 269 | "id": "568b6f3e-3ae7-4ed9-aa43-b392ebe26a96", 270 | "metadata": {}, 271 | "outputs": [], 272 | "source": [ 273 | "from sklearn.model_selection import train_test_split" 274 | ] 275 | }, 276 | { 277 | "cell_type": "code", 278 | "execution_count": 7, 279 | "id": "b1e16e27-5774-438a-a3ef-b58770ed6a90", 280 | "metadata": {}, 281 | "outputs": [], 282 | "source": [ 283 | "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25)" 284 | ] 285 | }, 286 | { 287 | "cell_type": "markdown", 288 | "id": "fb889185-f5d1-4d09-8341-1e6ecda83154", 289 | "metadata": {}, 290 | "source": [ 291 | "## Divide features into categorical and numerical" 292 | ] 293 | }, 294 | { 295 | "cell_type": "code", 296 | "execution_count": 8, 297 | "id": "c45bbb92-4eb9-4966-9a72-bcac67b46f7c", 298 | "metadata": {}, 299 | "outputs": [], 300 | "source": [ 301 | "cat_fea=[\"sex\",\"smoker\",\"day\"]\n", 302 | "num_fea=[\"total_bill\",\"tip\",\"size\"]" 303 | ] 304 | }, 305 | { 306 | "cell_type": "markdown", 307 | "id": "1f4290a2-8d7e-46bf-a914-178891ccb1dd", 308 | "metadata": {}, 309 | "source": [ 310 | "## Import required Libraies for FE" 311 | ] 312 | }, 313 | { 314 | "cell_type": "code", 315 | "execution_count": 9, 316 | "id": "33db2ae2-eb01-499c-bef7-a3e4a675ef26", 317 | "metadata": {}, 318 | "outputs": [], 319 | "source": [ 320 | "from sklearn.impute import SimpleImputer\n", 321 | "from sklearn.preprocessing import OneHotEncoder\n", 322 | "from sklearn.preprocessing import MinMaxScaler\n", 323 | "from sklearn.pipeline import Pipeline\n", 324 | "from sklearn.compose import ColumnTransformer" 325 | ] 326 | }, 327 | { 328 | "cell_type": "code", 329 | "execution_count": 10, 330 | "id": "e6da3ae4-9fcc-40a5-93c5-e684ae041e0e", 331 | "metadata": {}, 332 | "outputs": [], 333 | "source": [ 334 | "cat_pipe=Pipeline(\n", 335 | " \n", 336 | " steps=[\n", 337 | " \n", 338 | " (\"imputer\",SimpleImputer(strategy=\"most_frequent\")),\n", 339 | " (\"encoder\",OneHotEncoder())\n", 340 | " ]\n", 341 | ")\n", 342 | "\n", 343 | "num_pipe=Pipeline(\n", 344 | " steps=[\n", 345 | " (\"imputer\",SimpleImputer(strategy=\"median\")),\n", 346 | " (\"scaler\",MinMaxScaler())\n", 347 | " ]\n", 348 | ")" 349 | ] 350 | }, 351 | { 352 | "cell_type": "code", 353 | "execution_count": 11, 354 | "id": "18d7f02b-04fc-4062-a9be-5336e2d7b1d8", 355 | "metadata": {}, 356 | "outputs": [], 357 | "source": [ 358 | "fe=ColumnTransformer([\n", 359 | " (\"cat_pipe\",cat_pipe,cat_fea),\n", 360 | " (\"num_pipe\",num_pipe,num_fea)\n", 361 | "])" 362 | ] 363 | }, 364 | { 365 | "cell_type": "code", 366 | "execution_count": 12, 367 | "id": "ea15125d-80bc-43b7-977a-7019fbf0af3a", 368 | "metadata": {}, 369 | "outputs": [], 370 | "source": [ 371 | "x_train=fe.fit_transform(x_train)" 372 | ] 373 | }, 374 | { 375 | "cell_type": "code", 376 | "execution_count": 13, 377 | "id": "b4f36320-8b51-48d1-b3c7-fadf8da373a2", 378 | "metadata": {}, 379 | "outputs": [], 380 | "source": [ 381 | "x_test=fe.fit_transform(x_test)" 382 | ] 383 | }, 384 | { 385 | "cell_type": "markdown", 386 | "id": "9d5bb233-7823-4459-a3b4-77f8e2a72082", 387 | "metadata": {}, 388 | "source": [ 389 | "## Import Models" 390 | ] 391 | }, 392 | { 393 | "cell_type": "code", 394 | "execution_count": 14, 395 | "id": "e56bb8e3-2501-40bf-aea4-ef4e8ee82462", 396 | "metadata": {}, 397 | "outputs": [], 398 | "source": [ 399 | "from sklearn.linear_model import LogisticRegression\n", 400 | "from sklearn.tree import DecisionTreeClassifier\n", 401 | "from sklearn.svm import SVC\n", 402 | "from sklearn.ensemble import RandomForestClassifier" 403 | ] 404 | }, 405 | { 406 | "cell_type": "code", 407 | "execution_count": 15, 408 | "id": "a3fd8e29-9d6a-48ab-a7e5-a6bd239e2360", 409 | "metadata": {}, 410 | "outputs": [], 411 | "source": [ 412 | "models=[LogisticRegression,DecisionTreeClassifier,SVC,RandomForestClassifier]" 413 | ] 414 | }, 415 | { 416 | "cell_type": "markdown", 417 | "id": "e6b011d9-124e-4ed5-9d65-8fb8922b2c06", 418 | "metadata": {}, 419 | "source": [ 420 | "## Build and Test the Models" 421 | ] 422 | }, 423 | { 424 | "cell_type": "code", 425 | "execution_count": 16, 426 | "id": "fa296b52-1eda-4f3e-8f14-74c6e55fb2bd", 427 | "metadata": {}, 428 | "outputs": [], 429 | "source": [ 430 | "from sklearn.metrics import accuracy_score" 431 | ] 432 | }, 433 | { 434 | "cell_type": "code", 435 | "execution_count": 17, 436 | "id": "6c9d8ea4-14a6-4ac6-9d3a-662f0bf8ad8a", 437 | "metadata": {}, 438 | "outputs": [], 439 | "source": [ 440 | "d={}\n", 441 | "for i in models:\n", 442 | " model=i()\n", 443 | " model.fit(x_train,y_train)\n", 444 | " y_preds=model.predict(x_test)\n", 445 | " acc=accuracy_score(y_test,y_preds)\n", 446 | " i=str(i).split(\".\")[-1]\n", 447 | " i=i[:-2]\n", 448 | " d[i]=round(acc,2)" 449 | ] 450 | }, 451 | { 452 | "cell_type": "code", 453 | "execution_count": 18, 454 | "id": "e3076386-3d31-4727-8abd-5b8405a5e3de", 455 | "metadata": {}, 456 | "outputs": [ 457 | { 458 | "data": { 459 | "text/plain": [ 460 | "{'LogisticRegression': 0.98,\n", 461 | " 'DecisionTreeClassifier': 0.97,\n", 462 | " 'SVC': 0.98,\n", 463 | " 'RandomForestClassifier': 0.97}" 464 | ] 465 | }, 466 | "execution_count": 18, 467 | "metadata": {}, 468 | "output_type": "execute_result" 469 | } 470 | ], 471 | "source": [ 472 | "d" 473 | ] 474 | }, 475 | { 476 | "cell_type": "markdown", 477 | "id": "7e44ed88-936d-47d7-addb-9a37b1ffde42", 478 | "metadata": {}, 479 | "source": [ 480 | "## Hyperparameter Tuning of RandomForestClassifier" 481 | ] 482 | }, 483 | { 484 | "cell_type": "code", 485 | "execution_count": 19, 486 | "id": "c3bf004c-8ea5-4ae1-872d-c491a2d394fc", 487 | "metadata": {}, 488 | "outputs": [], 489 | "source": [ 490 | "grid={\n", 491 | " \"n_estimators\":[100,200,300,400,500],\n", 492 | " \"criterion\":(\"gini\",\"entropy\",\"log_loss\"),\n", 493 | " \"max_features\":(\"sqrt\",\"auto\",None)\n", 494 | "}" 495 | ] 496 | }, 497 | { 498 | "cell_type": "code", 499 | "execution_count": 20, 500 | "id": "70fc4e13-805b-43eb-80ed-0c2773dc50ec", 501 | "metadata": {}, 502 | "outputs": [], 503 | "source": [ 504 | "from sklearn.model_selection import GridSearchCV" 505 | ] 506 | }, 507 | { 508 | "cell_type": "code", 509 | "execution_count": 21, 510 | "id": "41a9e2d3-8901-4d3b-a083-e495a2ab8cca", 511 | "metadata": {}, 512 | "outputs": [], 513 | "source": [ 514 | "model=RandomForestClassifier()" 515 | ] 516 | }, 517 | { 518 | "cell_type": "code", 519 | "execution_count": 22, 520 | "id": "28643624-d370-4e0c-b3ff-5e041b17a020", 521 | "metadata": {}, 522 | "outputs": [], 523 | "source": [ 524 | "clf=GridSearchCV(model,param_grid=grid,cv=5)" 525 | ] 526 | }, 527 | { 528 | "cell_type": "code", 529 | "execution_count": 23, 530 | "id": "41006935-6676-4979-b5b9-b5cb0bed8444", 531 | "metadata": {}, 532 | "outputs": [ 533 | { 534 | "data": { 535 | "text/html": [ 536 | "
GridSearchCV(cv=5, estimator=RandomForestClassifier(),\n",
537 |        "             param_grid={'criterion': ('gini', 'entropy', 'log_loss'),\n",
538 |        "                         'max_features': ('sqrt', 'auto', None),\n",
539 |        "                         'n_estimators': [100, 200, 300, 400, 500]})
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" 543 | ], 544 | "text/plain": [ 545 | "GridSearchCV(cv=5, estimator=RandomForestClassifier(),\n", 546 | " param_grid={'criterion': ('gini', 'entropy', 'log_loss'),\n", 547 | " 'max_features': ('sqrt', 'auto', None),\n", 548 | " 'n_estimators': [100, 200, 300, 400, 500]})" 549 | ] 550 | }, 551 | "execution_count": 23, 552 | "metadata": {}, 553 | "output_type": "execute_result" 554 | } 555 | ], 556 | "source": [ 557 | "clf.fit(x_train,y_train)" 558 | ] 559 | }, 560 | { 561 | "cell_type": "code", 562 | "execution_count": 24, 563 | "id": "fc210a29-b086-42a0-ad9c-6acae6c1244f", 564 | "metadata": {}, 565 | "outputs": [ 566 | { 567 | "data": { 568 | "text/plain": [ 569 | "{'criterion': 'gini', 'max_features': None, 'n_estimators': 300}" 570 | ] 571 | }, 572 | "execution_count": 24, 573 | "metadata": {}, 574 | "output_type": "execute_result" 575 | } 576 | ], 577 | "source": [ 578 | "clf.best_params_" 579 | ] 580 | }, 581 | { 582 | "cell_type": "markdown", 583 | "id": "9503b8c8-82ea-40c6-8b1a-1a23bcfc9c12", 584 | "metadata": {}, 585 | "source": [ 586 | "## Build a model with these Params" 587 | ] 588 | }, 589 | { 590 | "cell_type": "code", 591 | "execution_count": 26, 592 | "id": "0e823494-1e2c-470b-8a7f-d69243eb9af7", 593 | "metadata": {}, 594 | "outputs": [], 595 | "source": [ 596 | "model=RandomForestClassifier(criterion=\"gini\",n_estimators=400,max_features=None)" 597 | ] 598 | }, 599 | { 600 | "cell_type": "code", 601 | "execution_count": 27, 602 | "id": "0f02f149-3d1a-40a7-b987-a11893a04c83", 603 | "metadata": {}, 604 | "outputs": [ 605 | { 606 | "data": { 607 | "text/html": [ 608 | "
RandomForestClassifier(max_features=None, n_estimators=400)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" 609 | ], 610 | "text/plain": [ 611 | "RandomForestClassifier(max_features=None, n_estimators=400)" 612 | ] 613 | }, 614 | "execution_count": 27, 615 | "metadata": {}, 616 | "output_type": "execute_result" 617 | } 618 | ], 619 | "source": [ 620 | "model.fit(x_train,y_train)" 621 | ] 622 | }, 623 | { 624 | "cell_type": "code", 625 | "execution_count": 28, 626 | "id": "24f40bb5-e9e1-48c2-8294-5f10349f5ce7", 627 | "metadata": {}, 628 | "outputs": [], 629 | "source": [ 630 | "y_preds=model.predict(x_test)" 631 | ] 632 | }, 633 | { 634 | "cell_type": "code", 635 | "execution_count": 29, 636 | "id": "b33bdd31-637c-4572-9a1a-c2a6de93aff5", 637 | "metadata": {}, 638 | "outputs": [ 639 | { 640 | "data": { 641 | "text/plain": [ 642 | "0.9672131147540983" 643 | ] 644 | }, 645 | "execution_count": 29, 646 | "metadata": {}, 647 | "output_type": "execute_result" 648 | } 649 | ], 650 | "source": [ 651 | "accuracy_score(y_test,y_preds)" 652 | ] 653 | }, 654 | { 655 | "cell_type": "code", 656 | "execution_count": null, 657 | "id": "c41e0ff1-ca53-4eb3-b78f-19169f66af5c", 658 | "metadata": {}, 659 | "outputs": [], 660 | "source": [] 661 | } 662 | ], 663 | "metadata": { 664 | "kernelspec": { 665 | "display_name": "Python 3 (ipykernel)", 666 | "language": "python", 667 | "name": "python3" 668 | }, 669 | "language_info": { 670 | "codemirror_mode": { 671 | "name": "ipython", 672 | "version": 3 673 | }, 674 | "file_extension": ".py", 675 | "mimetype": "text/x-python", 676 | "name": "python", 677 | "nbconvert_exporter": "python", 678 | "pygments_lexer": "ipython3", 679 | "version": "3.10.8" 680 | } 681 | }, 682 | "nbformat": 4, 683 | "nbformat_minor": 5 684 | } 685 | -------------------------------------------------------------------------------- /All Regression Check/Tips FE Automation/index.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /All Regression Check/index.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Decision Tree/Carseats.csv: -------------------------------------------------------------------------------- 1 | "Sales","CompPrice","Income","Advertising","Population","Price","ShelveLoc","Age","Education","Urban","US" 2 | 9.5,138,73,11,276,120,"Bad",42,17,"Yes","Yes" 3 | 11.22,111,48,16,260,83,"Good",65,10,"Yes","Yes" 4 | 10.06,113,35,10,269,80,"Medium",59,12,"Yes","Yes" 5 | 7.4,117,100,4,466,97,"Medium",55,14,"Yes","Yes" 6 | 4.15,141,64,3,340,128,"Bad",38,13,"Yes","No" 7 | 10.81,124,113,13,501,72,"Bad",78,16,"No","Yes" 8 | 6.63,115,105,0,45,108,"Medium",71,15,"Yes","No" 9 | 11.85,136,81,15,425,120,"Good",67,10,"Yes","Yes" 10 | 6.54,132,110,0,108,124,"Medium",76,10,"No","No" 11 | 4.69,132,113,0,131,124,"Medium",76,17,"No","Yes" 12 | 9.01,121,78,9,150,100,"Bad",26,10,"No","Yes" 13 | 11.96,117,94,4,503,94,"Good",50,13,"Yes","Yes" 14 | 3.98,122,35,2,393,136,"Medium",62,18,"Yes","No" 15 | 10.96,115,28,11,29,86,"Good",53,18,"Yes","Yes" 16 | 11.17,107,117,11,148,118,"Good",52,18,"Yes","Yes" 17 | 8.71,149,95,5,400,144,"Medium",76,18,"No","No" 18 | 7.58,118,32,0,284,110,"Good",63,13,"Yes","No" 19 | 12.29,147,74,13,251,131,"Good",52,10,"Yes","Yes" 20 | 13.91,110,110,0,408,68,"Good",46,17,"No","Yes" 21 | 8.73,129,76,16,58,121,"Medium",69,12,"Yes","Yes" 22 | 6.41,125,90,2,367,131,"Medium",35,18,"Yes","Yes" 23 | 12.13,134,29,12,239,109,"Good",62,18,"No","Yes" 24 | 5.08,128,46,6,497,138,"Medium",42,13,"Yes","No" 25 | 5.87,121,31,0,292,109,"Medium",79,10,"Yes","No" 26 | 10.14,145,119,16,294,113,"Bad",42,12,"Yes","Yes" 27 | 14.9,139,32,0,176,82,"Good",54,11,"No","No" 28 | 8.33,107,115,11,496,131,"Good",50,11,"No","Yes" 29 | 5.27,98,118,0,19,107,"Medium",64,17,"Yes","No" 30 | 2.99,103,74,0,359,97,"Bad",55,11,"Yes","Yes" 31 | 7.81,104,99,15,226,102,"Bad",58,17,"Yes","Yes" 32 | 13.55,125,94,0,447,89,"Good",30,12,"Yes","No" 33 | 8.25,136,58,16,241,131,"Medium",44,18,"Yes","Yes" 34 | 6.2,107,32,12,236,137,"Good",64,10,"No","Yes" 35 | 8.77,114,38,13,317,128,"Good",50,16,"Yes","Yes" 36 | 2.67,115,54,0,406,128,"Medium",42,17,"Yes","Yes" 37 | 11.07,131,84,11,29,96,"Medium",44,17,"No","Yes" 38 | 8.89,122,76,0,270,100,"Good",60,18,"No","No" 39 | 4.95,121,41,5,412,110,"Medium",54,10,"Yes","Yes" 40 | 6.59,109,73,0,454,102,"Medium",65,15,"Yes","No" 41 | 3.24,130,60,0,144,138,"Bad",38,10,"No","No" 42 | 2.07,119,98,0,18,126,"Bad",73,17,"No","No" 43 | 7.96,157,53,0,403,124,"Bad",58,16,"Yes","No" 44 | 10.43,77,69,0,25,24,"Medium",50,18,"Yes","No" 45 | 4.12,123,42,11,16,134,"Medium",59,13,"Yes","Yes" 46 | 4.16,85,79,6,325,95,"Medium",69,13,"Yes","Yes" 47 | 4.56,141,63,0,168,135,"Bad",44,12,"Yes","Yes" 48 | 12.44,127,90,14,16,70,"Medium",48,15,"No","Yes" 49 | 4.38,126,98,0,173,108,"Bad",55,16,"Yes","No" 50 | 3.91,116,52,0,349,98,"Bad",69,18,"Yes","No" 51 | 10.61,157,93,0,51,149,"Good",32,17,"Yes","No" 52 | 1.42,99,32,18,341,108,"Bad",80,16,"Yes","Yes" 53 | 4.42,121,90,0,150,108,"Bad",75,16,"Yes","No" 54 | 7.91,153,40,3,112,129,"Bad",39,18,"Yes","Yes" 55 | 6.92,109,64,13,39,119,"Medium",61,17,"Yes","Yes" 56 | 4.9,134,103,13,25,144,"Medium",76,17,"No","Yes" 57 | 6.85,143,81,5,60,154,"Medium",61,18,"Yes","Yes" 58 | 11.91,133,82,0,54,84,"Medium",50,17,"Yes","No" 59 | 0.91,93,91,0,22,117,"Bad",75,11,"Yes","No" 60 | 5.42,103,93,15,188,103,"Bad",74,16,"Yes","Yes" 61 | 5.21,118,71,4,148,114,"Medium",80,13,"Yes","No" 62 | 8.32,122,102,19,469,123,"Bad",29,13,"Yes","Yes" 63 | 7.32,105,32,0,358,107,"Medium",26,13,"No","No" 64 | 1.82,139,45,0,146,133,"Bad",77,17,"Yes","Yes" 65 | 8.47,119,88,10,170,101,"Medium",61,13,"Yes","Yes" 66 | 7.8,100,67,12,184,104,"Medium",32,16,"No","Yes" 67 | 4.9,122,26,0,197,128,"Medium",55,13,"No","No" 68 | 8.85,127,92,0,508,91,"Medium",56,18,"Yes","No" 69 | 9.01,126,61,14,152,115,"Medium",47,16,"Yes","Yes" 70 | 13.39,149,69,20,366,134,"Good",60,13,"Yes","Yes" 71 | 7.99,127,59,0,339,99,"Medium",65,12,"Yes","No" 72 | 9.46,89,81,15,237,99,"Good",74,12,"Yes","Yes" 73 | 6.5,148,51,16,148,150,"Medium",58,17,"No","Yes" 74 | 5.52,115,45,0,432,116,"Medium",25,15,"Yes","No" 75 | 12.61,118,90,10,54,104,"Good",31,11,"No","Yes" 76 | 6.2,150,68,5,125,136,"Medium",64,13,"No","Yes" 77 | 8.55,88,111,23,480,92,"Bad",36,16,"No","Yes" 78 | 10.64,102,87,10,346,70,"Medium",64,15,"Yes","Yes" 79 | 7.7,118,71,12,44,89,"Medium",67,18,"No","Yes" 80 | 4.43,134,48,1,139,145,"Medium",65,12,"Yes","Yes" 81 | 9.14,134,67,0,286,90,"Bad",41,13,"Yes","No" 82 | 8.01,113,100,16,353,79,"Bad",68,11,"Yes","Yes" 83 | 7.52,116,72,0,237,128,"Good",70,13,"Yes","No" 84 | 11.62,151,83,4,325,139,"Good",28,17,"Yes","Yes" 85 | 4.42,109,36,7,468,94,"Bad",56,11,"Yes","Yes" 86 | 2.23,111,25,0,52,121,"Bad",43,18,"No","No" 87 | 8.47,125,103,0,304,112,"Medium",49,13,"No","No" 88 | 8.7,150,84,9,432,134,"Medium",64,15,"Yes","No" 89 | 11.7,131,67,7,272,126,"Good",54,16,"No","Yes" 90 | 6.56,117,42,7,144,111,"Medium",62,10,"Yes","Yes" 91 | 7.95,128,66,3,493,119,"Medium",45,16,"No","No" 92 | 5.33,115,22,0,491,103,"Medium",64,11,"No","No" 93 | 4.81,97,46,11,267,107,"Medium",80,15,"Yes","Yes" 94 | 4.53,114,113,0,97,125,"Medium",29,12,"Yes","No" 95 | 8.86,145,30,0,67,104,"Medium",55,17,"Yes","No" 96 | 8.39,115,97,5,134,84,"Bad",55,11,"Yes","Yes" 97 | 5.58,134,25,10,237,148,"Medium",59,13,"Yes","Yes" 98 | 9.48,147,42,10,407,132,"Good",73,16,"No","Yes" 99 | 7.45,161,82,5,287,129,"Bad",33,16,"Yes","Yes" 100 | 12.49,122,77,24,382,127,"Good",36,16,"No","Yes" 101 | 4.88,121,47,3,220,107,"Bad",56,16,"No","Yes" 102 | 4.11,113,69,11,94,106,"Medium",76,12,"No","Yes" 103 | 6.2,128,93,0,89,118,"Medium",34,18,"Yes","No" 104 | 5.3,113,22,0,57,97,"Medium",65,16,"No","No" 105 | 5.07,123,91,0,334,96,"Bad",78,17,"Yes","Yes" 106 | 4.62,121,96,0,472,138,"Medium",51,12,"Yes","No" 107 | 5.55,104,100,8,398,97,"Medium",61,11,"Yes","Yes" 108 | 0.16,102,33,0,217,139,"Medium",70,18,"No","No" 109 | 8.55,134,107,0,104,108,"Medium",60,12,"Yes","No" 110 | 3.47,107,79,2,488,103,"Bad",65,16,"Yes","No" 111 | 8.98,115,65,0,217,90,"Medium",60,17,"No","No" 112 | 9,128,62,7,125,116,"Medium",43,14,"Yes","Yes" 113 | 6.62,132,118,12,272,151,"Medium",43,14,"Yes","Yes" 114 | 6.67,116,99,5,298,125,"Good",62,12,"Yes","Yes" 115 | 6.01,131,29,11,335,127,"Bad",33,12,"Yes","Yes" 116 | 9.31,122,87,9,17,106,"Medium",65,13,"Yes","Yes" 117 | 8.54,139,35,0,95,129,"Medium",42,13,"Yes","No" 118 | 5.08,135,75,0,202,128,"Medium",80,10,"No","No" 119 | 8.8,145,53,0,507,119,"Medium",41,12,"Yes","No" 120 | 7.57,112,88,2,243,99,"Medium",62,11,"Yes","Yes" 121 | 7.37,130,94,8,137,128,"Medium",64,12,"Yes","Yes" 122 | 6.87,128,105,11,249,131,"Medium",63,13,"Yes","Yes" 123 | 11.67,125,89,10,380,87,"Bad",28,10,"Yes","Yes" 124 | 6.88,119,100,5,45,108,"Medium",75,10,"Yes","Yes" 125 | 8.19,127,103,0,125,155,"Good",29,15,"No","Yes" 126 | 8.87,131,113,0,181,120,"Good",63,14,"Yes","No" 127 | 9.34,89,78,0,181,49,"Medium",43,15,"No","No" 128 | 11.27,153,68,2,60,133,"Good",59,16,"Yes","Yes" 129 | 6.52,125,48,3,192,116,"Medium",51,14,"Yes","Yes" 130 | 4.96,133,100,3,350,126,"Bad",55,13,"Yes","Yes" 131 | 4.47,143,120,7,279,147,"Bad",40,10,"No","Yes" 132 | 8.41,94,84,13,497,77,"Medium",51,12,"Yes","Yes" 133 | 6.5,108,69,3,208,94,"Medium",77,16,"Yes","No" 134 | 9.54,125,87,9,232,136,"Good",72,10,"Yes","Yes" 135 | 7.62,132,98,2,265,97,"Bad",62,12,"Yes","Yes" 136 | 3.67,132,31,0,327,131,"Medium",76,16,"Yes","No" 137 | 6.44,96,94,14,384,120,"Medium",36,18,"No","Yes" 138 | 5.17,131,75,0,10,120,"Bad",31,18,"No","No" 139 | 6.52,128,42,0,436,118,"Medium",80,11,"Yes","No" 140 | 10.27,125,103,12,371,109,"Medium",44,10,"Yes","Yes" 141 | 12.3,146,62,10,310,94,"Medium",30,13,"No","Yes" 142 | 6.03,133,60,10,277,129,"Medium",45,18,"Yes","Yes" 143 | 6.53,140,42,0,331,131,"Bad",28,15,"Yes","No" 144 | 7.44,124,84,0,300,104,"Medium",77,15,"Yes","No" 145 | 0.53,122,88,7,36,159,"Bad",28,17,"Yes","Yes" 146 | 9.09,132,68,0,264,123,"Good",34,11,"No","No" 147 | 8.77,144,63,11,27,117,"Medium",47,17,"Yes","Yes" 148 | 3.9,114,83,0,412,131,"Bad",39,14,"Yes","No" 149 | 10.51,140,54,9,402,119,"Good",41,16,"No","Yes" 150 | 7.56,110,119,0,384,97,"Medium",72,14,"No","Yes" 151 | 11.48,121,120,13,140,87,"Medium",56,11,"Yes","Yes" 152 | 10.49,122,84,8,176,114,"Good",57,10,"No","Yes" 153 | 10.77,111,58,17,407,103,"Good",75,17,"No","Yes" 154 | 7.64,128,78,0,341,128,"Good",45,13,"No","No" 155 | 5.93,150,36,7,488,150,"Medium",25,17,"No","Yes" 156 | 6.89,129,69,10,289,110,"Medium",50,16,"No","Yes" 157 | 7.71,98,72,0,59,69,"Medium",65,16,"Yes","No" 158 | 7.49,146,34,0,220,157,"Good",51,16,"Yes","No" 159 | 10.21,121,58,8,249,90,"Medium",48,13,"No","Yes" 160 | 12.53,142,90,1,189,112,"Good",39,10,"No","Yes" 161 | 9.32,119,60,0,372,70,"Bad",30,18,"No","No" 162 | 4.67,111,28,0,486,111,"Medium",29,12,"No","No" 163 | 2.93,143,21,5,81,160,"Medium",67,12,"No","Yes" 164 | 3.63,122,74,0,424,149,"Medium",51,13,"Yes","No" 165 | 5.68,130,64,0,40,106,"Bad",39,17,"No","No" 166 | 8.22,148,64,0,58,141,"Medium",27,13,"No","Yes" 167 | 0.37,147,58,7,100,191,"Bad",27,15,"Yes","Yes" 168 | 6.71,119,67,17,151,137,"Medium",55,11,"Yes","Yes" 169 | 6.71,106,73,0,216,93,"Medium",60,13,"Yes","No" 170 | 7.3,129,89,0,425,117,"Medium",45,10,"Yes","No" 171 | 11.48,104,41,15,492,77,"Good",73,18,"Yes","Yes" 172 | 8.01,128,39,12,356,118,"Medium",71,10,"Yes","Yes" 173 | 12.49,93,106,12,416,55,"Medium",75,15,"Yes","Yes" 174 | 9.03,104,102,13,123,110,"Good",35,16,"Yes","Yes" 175 | 6.38,135,91,5,207,128,"Medium",66,18,"Yes","Yes" 176 | 0,139,24,0,358,185,"Medium",79,15,"No","No" 177 | 7.54,115,89,0,38,122,"Medium",25,12,"Yes","No" 178 | 5.61,138,107,9,480,154,"Medium",47,11,"No","Yes" 179 | 10.48,138,72,0,148,94,"Medium",27,17,"Yes","Yes" 180 | 10.66,104,71,14,89,81,"Medium",25,14,"No","Yes" 181 | 7.78,144,25,3,70,116,"Medium",77,18,"Yes","Yes" 182 | 4.94,137,112,15,434,149,"Bad",66,13,"Yes","Yes" 183 | 7.43,121,83,0,79,91,"Medium",68,11,"Yes","No" 184 | 4.74,137,60,4,230,140,"Bad",25,13,"Yes","No" 185 | 5.32,118,74,6,426,102,"Medium",80,18,"Yes","Yes" 186 | 9.95,132,33,7,35,97,"Medium",60,11,"No","Yes" 187 | 10.07,130,100,11,449,107,"Medium",64,10,"Yes","Yes" 188 | 8.68,120,51,0,93,86,"Medium",46,17,"No","No" 189 | 6.03,117,32,0,142,96,"Bad",62,17,"Yes","No" 190 | 8.07,116,37,0,426,90,"Medium",76,15,"Yes","No" 191 | 12.11,118,117,18,509,104,"Medium",26,15,"No","Yes" 192 | 8.79,130,37,13,297,101,"Medium",37,13,"No","Yes" 193 | 6.67,156,42,13,170,173,"Good",74,14,"Yes","Yes" 194 | 7.56,108,26,0,408,93,"Medium",56,14,"No","No" 195 | 13.28,139,70,7,71,96,"Good",61,10,"Yes","Yes" 196 | 7.23,112,98,18,481,128,"Medium",45,11,"Yes","Yes" 197 | 4.19,117,93,4,420,112,"Bad",66,11,"Yes","Yes" 198 | 4.1,130,28,6,410,133,"Bad",72,16,"Yes","Yes" 199 | 2.52,124,61,0,333,138,"Medium",76,16,"Yes","No" 200 | 3.62,112,80,5,500,128,"Medium",69,10,"Yes","Yes" 201 | 6.42,122,88,5,335,126,"Medium",64,14,"Yes","Yes" 202 | 5.56,144,92,0,349,146,"Medium",62,12,"No","No" 203 | 5.94,138,83,0,139,134,"Medium",54,18,"Yes","No" 204 | 4.1,121,78,4,413,130,"Bad",46,10,"No","Yes" 205 | 2.05,131,82,0,132,157,"Bad",25,14,"Yes","No" 206 | 8.74,155,80,0,237,124,"Medium",37,14,"Yes","No" 207 | 5.68,113,22,1,317,132,"Medium",28,12,"Yes","No" 208 | 4.97,162,67,0,27,160,"Medium",77,17,"Yes","Yes" 209 | 8.19,111,105,0,466,97,"Bad",61,10,"No","No" 210 | 7.78,86,54,0,497,64,"Bad",33,12,"Yes","No" 211 | 3.02,98,21,11,326,90,"Bad",76,11,"No","Yes" 212 | 4.36,125,41,2,357,123,"Bad",47,14,"No","Yes" 213 | 9.39,117,118,14,445,120,"Medium",32,15,"Yes","Yes" 214 | 12.04,145,69,19,501,105,"Medium",45,11,"Yes","Yes" 215 | 8.23,149,84,5,220,139,"Medium",33,10,"Yes","Yes" 216 | 4.83,115,115,3,48,107,"Medium",73,18,"Yes","Yes" 217 | 2.34,116,83,15,170,144,"Bad",71,11,"Yes","Yes" 218 | 5.73,141,33,0,243,144,"Medium",34,17,"Yes","No" 219 | 4.34,106,44,0,481,111,"Medium",70,14,"No","No" 220 | 9.7,138,61,12,156,120,"Medium",25,14,"Yes","Yes" 221 | 10.62,116,79,19,359,116,"Good",58,17,"Yes","Yes" 222 | 10.59,131,120,15,262,124,"Medium",30,10,"Yes","Yes" 223 | 6.43,124,44,0,125,107,"Medium",80,11,"Yes","No" 224 | 7.49,136,119,6,178,145,"Medium",35,13,"Yes","Yes" 225 | 3.45,110,45,9,276,125,"Medium",62,14,"Yes","Yes" 226 | 4.1,134,82,0,464,141,"Medium",48,13,"No","No" 227 | 6.68,107,25,0,412,82,"Bad",36,14,"Yes","No" 228 | 7.8,119,33,0,245,122,"Good",56,14,"Yes","No" 229 | 8.69,113,64,10,68,101,"Medium",57,16,"Yes","Yes" 230 | 5.4,149,73,13,381,163,"Bad",26,11,"No","Yes" 231 | 11.19,98,104,0,404,72,"Medium",27,18,"No","No" 232 | 5.16,115,60,0,119,114,"Bad",38,14,"No","No" 233 | 8.09,132,69,0,123,122,"Medium",27,11,"No","No" 234 | 13.14,137,80,10,24,105,"Good",61,15,"Yes","Yes" 235 | 8.65,123,76,18,218,120,"Medium",29,14,"No","Yes" 236 | 9.43,115,62,11,289,129,"Good",56,16,"No","Yes" 237 | 5.53,126,32,8,95,132,"Medium",50,17,"Yes","Yes" 238 | 9.32,141,34,16,361,108,"Medium",69,10,"Yes","Yes" 239 | 9.62,151,28,8,499,135,"Medium",48,10,"Yes","Yes" 240 | 7.36,121,24,0,200,133,"Good",73,13,"Yes","No" 241 | 3.89,123,105,0,149,118,"Bad",62,16,"Yes","Yes" 242 | 10.31,159,80,0,362,121,"Medium",26,18,"Yes","No" 243 | 12.01,136,63,0,160,94,"Medium",38,12,"Yes","No" 244 | 4.68,124,46,0,199,135,"Medium",52,14,"No","No" 245 | 7.82,124,25,13,87,110,"Medium",57,10,"Yes","Yes" 246 | 8.78,130,30,0,391,100,"Medium",26,18,"Yes","No" 247 | 10,114,43,0,199,88,"Good",57,10,"No","Yes" 248 | 6.9,120,56,20,266,90,"Bad",78,18,"Yes","Yes" 249 | 5.04,123,114,0,298,151,"Bad",34,16,"Yes","No" 250 | 5.36,111,52,0,12,101,"Medium",61,11,"Yes","Yes" 251 | 5.05,125,67,0,86,117,"Bad",65,11,"Yes","No" 252 | 9.16,137,105,10,435,156,"Good",72,14,"Yes","Yes" 253 | 3.72,139,111,5,310,132,"Bad",62,13,"Yes","Yes" 254 | 8.31,133,97,0,70,117,"Medium",32,16,"Yes","No" 255 | 5.64,124,24,5,288,122,"Medium",57,12,"No","Yes" 256 | 9.58,108,104,23,353,129,"Good",37,17,"Yes","Yes" 257 | 7.71,123,81,8,198,81,"Bad",80,15,"Yes","Yes" 258 | 4.2,147,40,0,277,144,"Medium",73,10,"Yes","No" 259 | 8.67,125,62,14,477,112,"Medium",80,13,"Yes","Yes" 260 | 3.47,108,38,0,251,81,"Bad",72,14,"No","No" 261 | 5.12,123,36,10,467,100,"Bad",74,11,"No","Yes" 262 | 7.67,129,117,8,400,101,"Bad",36,10,"Yes","Yes" 263 | 5.71,121,42,4,188,118,"Medium",54,15,"Yes","Yes" 264 | 6.37,120,77,15,86,132,"Medium",48,18,"Yes","Yes" 265 | 7.77,116,26,6,434,115,"Medium",25,17,"Yes","Yes" 266 | 6.95,128,29,5,324,159,"Good",31,15,"Yes","Yes" 267 | 5.31,130,35,10,402,129,"Bad",39,17,"Yes","Yes" 268 | 9.1,128,93,12,343,112,"Good",73,17,"No","Yes" 269 | 5.83,134,82,7,473,112,"Bad",51,12,"No","Yes" 270 | 6.53,123,57,0,66,105,"Medium",39,11,"Yes","No" 271 | 5.01,159,69,0,438,166,"Medium",46,17,"Yes","No" 272 | 11.99,119,26,0,284,89,"Good",26,10,"Yes","No" 273 | 4.55,111,56,0,504,110,"Medium",62,16,"Yes","No" 274 | 12.98,113,33,0,14,63,"Good",38,12,"Yes","No" 275 | 10.04,116,106,8,244,86,"Medium",58,12,"Yes","Yes" 276 | 7.22,135,93,2,67,119,"Medium",34,11,"Yes","Yes" 277 | 6.67,107,119,11,210,132,"Medium",53,11,"Yes","Yes" 278 | 6.93,135,69,14,296,130,"Medium",73,15,"Yes","Yes" 279 | 7.8,136,48,12,326,125,"Medium",36,16,"Yes","Yes" 280 | 7.22,114,113,2,129,151,"Good",40,15,"No","Yes" 281 | 3.42,141,57,13,376,158,"Medium",64,18,"Yes","Yes" 282 | 2.86,121,86,10,496,145,"Bad",51,10,"Yes","Yes" 283 | 11.19,122,69,7,303,105,"Good",45,16,"No","Yes" 284 | 7.74,150,96,0,80,154,"Good",61,11,"Yes","No" 285 | 5.36,135,110,0,112,117,"Medium",80,16,"No","No" 286 | 6.97,106,46,11,414,96,"Bad",79,17,"No","No" 287 | 7.6,146,26,11,261,131,"Medium",39,10,"Yes","Yes" 288 | 7.53,117,118,11,429,113,"Medium",67,18,"No","Yes" 289 | 6.88,95,44,4,208,72,"Bad",44,17,"Yes","Yes" 290 | 6.98,116,40,0,74,97,"Medium",76,15,"No","No" 291 | 8.75,143,77,25,448,156,"Medium",43,17,"Yes","Yes" 292 | 9.49,107,111,14,400,103,"Medium",41,11,"No","Yes" 293 | 6.64,118,70,0,106,89,"Bad",39,17,"Yes","No" 294 | 11.82,113,66,16,322,74,"Good",76,15,"Yes","Yes" 295 | 11.28,123,84,0,74,89,"Good",59,10,"Yes","No" 296 | 12.66,148,76,3,126,99,"Good",60,11,"Yes","Yes" 297 | 4.21,118,35,14,502,137,"Medium",79,10,"No","Yes" 298 | 8.21,127,44,13,160,123,"Good",63,18,"Yes","Yes" 299 | 3.07,118,83,13,276,104,"Bad",75,10,"Yes","Yes" 300 | 10.98,148,63,0,312,130,"Good",63,15,"Yes","No" 301 | 9.4,135,40,17,497,96,"Medium",54,17,"No","Yes" 302 | 8.57,116,78,1,158,99,"Medium",45,11,"Yes","Yes" 303 | 7.41,99,93,0,198,87,"Medium",57,16,"Yes","Yes" 304 | 5.28,108,77,13,388,110,"Bad",74,14,"Yes","Yes" 305 | 10.01,133,52,16,290,99,"Medium",43,11,"Yes","Yes" 306 | 11.93,123,98,12,408,134,"Good",29,10,"Yes","Yes" 307 | 8.03,115,29,26,394,132,"Medium",33,13,"Yes","Yes" 308 | 4.78,131,32,1,85,133,"Medium",48,12,"Yes","Yes" 309 | 5.9,138,92,0,13,120,"Bad",61,12,"Yes","No" 310 | 9.24,126,80,19,436,126,"Medium",52,10,"Yes","Yes" 311 | 11.18,131,111,13,33,80,"Bad",68,18,"Yes","Yes" 312 | 9.53,175,65,29,419,166,"Medium",53,12,"Yes","Yes" 313 | 6.15,146,68,12,328,132,"Bad",51,14,"Yes","Yes" 314 | 6.8,137,117,5,337,135,"Bad",38,10,"Yes","Yes" 315 | 9.33,103,81,3,491,54,"Medium",66,13,"Yes","No" 316 | 7.72,133,33,10,333,129,"Good",71,14,"Yes","Yes" 317 | 6.39,131,21,8,220,171,"Good",29,14,"Yes","Yes" 318 | 15.63,122,36,5,369,72,"Good",35,10,"Yes","Yes" 319 | 6.41,142,30,0,472,136,"Good",80,15,"No","No" 320 | 10.08,116,72,10,456,130,"Good",41,14,"No","Yes" 321 | 6.97,127,45,19,459,129,"Medium",57,11,"No","Yes" 322 | 5.86,136,70,12,171,152,"Medium",44,18,"Yes","Yes" 323 | 7.52,123,39,5,499,98,"Medium",34,15,"Yes","No" 324 | 9.16,140,50,10,300,139,"Good",60,15,"Yes","Yes" 325 | 10.36,107,105,18,428,103,"Medium",34,12,"Yes","Yes" 326 | 2.66,136,65,4,133,150,"Bad",53,13,"Yes","Yes" 327 | 11.7,144,69,11,131,104,"Medium",47,11,"Yes","Yes" 328 | 4.69,133,30,0,152,122,"Medium",53,17,"Yes","No" 329 | 6.23,112,38,17,316,104,"Medium",80,16,"Yes","Yes" 330 | 3.15,117,66,1,65,111,"Bad",55,11,"Yes","Yes" 331 | 11.27,100,54,9,433,89,"Good",45,12,"Yes","Yes" 332 | 4.99,122,59,0,501,112,"Bad",32,14,"No","No" 333 | 10.1,135,63,15,213,134,"Medium",32,10,"Yes","Yes" 334 | 5.74,106,33,20,354,104,"Medium",61,12,"Yes","Yes" 335 | 5.87,136,60,7,303,147,"Medium",41,10,"Yes","Yes" 336 | 7.63,93,117,9,489,83,"Bad",42,13,"Yes","Yes" 337 | 6.18,120,70,15,464,110,"Medium",72,15,"Yes","Yes" 338 | 5.17,138,35,6,60,143,"Bad",28,18,"Yes","No" 339 | 8.61,130,38,0,283,102,"Medium",80,15,"Yes","No" 340 | 5.97,112,24,0,164,101,"Medium",45,11,"Yes","No" 341 | 11.54,134,44,4,219,126,"Good",44,15,"Yes","Yes" 342 | 7.5,140,29,0,105,91,"Bad",43,16,"Yes","No" 343 | 7.38,98,120,0,268,93,"Medium",72,10,"No","No" 344 | 7.81,137,102,13,422,118,"Medium",71,10,"No","Yes" 345 | 5.99,117,42,10,371,121,"Bad",26,14,"Yes","Yes" 346 | 8.43,138,80,0,108,126,"Good",70,13,"No","Yes" 347 | 4.81,121,68,0,279,149,"Good",79,12,"Yes","No" 348 | 8.97,132,107,0,144,125,"Medium",33,13,"No","No" 349 | 6.88,96,39,0,161,112,"Good",27,14,"No","No" 350 | 12.57,132,102,20,459,107,"Good",49,11,"Yes","Yes" 351 | 9.32,134,27,18,467,96,"Medium",49,14,"No","Yes" 352 | 8.64,111,101,17,266,91,"Medium",63,17,"No","Yes" 353 | 10.44,124,115,16,458,105,"Medium",62,16,"No","Yes" 354 | 13.44,133,103,14,288,122,"Good",61,17,"Yes","Yes" 355 | 9.45,107,67,12,430,92,"Medium",35,12,"No","Yes" 356 | 5.3,133,31,1,80,145,"Medium",42,18,"Yes","Yes" 357 | 7.02,130,100,0,306,146,"Good",42,11,"Yes","No" 358 | 3.58,142,109,0,111,164,"Good",72,12,"Yes","No" 359 | 13.36,103,73,3,276,72,"Medium",34,15,"Yes","Yes" 360 | 4.17,123,96,10,71,118,"Bad",69,11,"Yes","Yes" 361 | 3.13,130,62,11,396,130,"Bad",66,14,"Yes","Yes" 362 | 8.77,118,86,7,265,114,"Good",52,15,"No","Yes" 363 | 8.68,131,25,10,183,104,"Medium",56,15,"No","Yes" 364 | 5.25,131,55,0,26,110,"Bad",79,12,"Yes","Yes" 365 | 10.26,111,75,1,377,108,"Good",25,12,"Yes","No" 366 | 10.5,122,21,16,488,131,"Good",30,14,"Yes","Yes" 367 | 6.53,154,30,0,122,162,"Medium",57,17,"No","No" 368 | 5.98,124,56,11,447,134,"Medium",53,12,"No","Yes" 369 | 14.37,95,106,0,256,53,"Good",52,17,"Yes","No" 370 | 10.71,109,22,10,348,79,"Good",74,14,"No","Yes" 371 | 10.26,135,100,22,463,122,"Medium",36,14,"Yes","Yes" 372 | 7.68,126,41,22,403,119,"Bad",42,12,"Yes","Yes" 373 | 9.08,152,81,0,191,126,"Medium",54,16,"Yes","No" 374 | 7.8,121,50,0,508,98,"Medium",65,11,"No","No" 375 | 5.58,137,71,0,402,116,"Medium",78,17,"Yes","No" 376 | 9.44,131,47,7,90,118,"Medium",47,12,"Yes","Yes" 377 | 7.9,132,46,4,206,124,"Medium",73,11,"Yes","No" 378 | 16.27,141,60,19,319,92,"Good",44,11,"Yes","Yes" 379 | 6.81,132,61,0,263,125,"Medium",41,12,"No","No" 380 | 6.11,133,88,3,105,119,"Medium",79,12,"Yes","Yes" 381 | 5.81,125,111,0,404,107,"Bad",54,15,"Yes","No" 382 | 9.64,106,64,10,17,89,"Medium",68,17,"Yes","Yes" 383 | 3.9,124,65,21,496,151,"Bad",77,13,"Yes","Yes" 384 | 4.95,121,28,19,315,121,"Medium",66,14,"Yes","Yes" 385 | 9.35,98,117,0,76,68,"Medium",63,10,"Yes","No" 386 | 12.85,123,37,15,348,112,"Good",28,12,"Yes","Yes" 387 | 5.87,131,73,13,455,132,"Medium",62,17,"Yes","Yes" 388 | 5.32,152,116,0,170,160,"Medium",39,16,"Yes","No" 389 | 8.67,142,73,14,238,115,"Medium",73,14,"No","Yes" 390 | 8.14,135,89,11,245,78,"Bad",79,16,"Yes","Yes" 391 | 8.44,128,42,8,328,107,"Medium",35,12,"Yes","Yes" 392 | 5.47,108,75,9,61,111,"Medium",67,12,"Yes","Yes" 393 | 6.1,153,63,0,49,124,"Bad",56,16,"Yes","No" 394 | 4.53,129,42,13,315,130,"Bad",34,13,"Yes","Yes" 395 | 5.57,109,51,10,26,120,"Medium",30,17,"No","Yes" 396 | 5.35,130,58,19,366,139,"Bad",33,16,"Yes","Yes" 397 | 12.57,138,108,17,203,128,"Good",33,14,"Yes","Yes" 398 | 6.14,139,23,3,37,120,"Medium",55,11,"No","Yes" 399 | 7.41,162,26,12,368,159,"Medium",40,18,"Yes","Yes" 400 | 5.94,100,79,7,284,95,"Bad",50,12,"Yes","Yes" 401 | 9.71,134,37,0,27,120,"Good",49,16,"Yes","Yes" 402 | -------------------------------------------------------------------------------- /Decision Tree/index.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Decision Tree/index.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Hyper Parameter Tuning/HyperParameter Tuning.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/Hyper Parameter Tuning/HyperParameter Tuning.pdf -------------------------------------------------------------------------------- /Hyper Parameter Tuning/index.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /KNN/KNN.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "4f136211-8f63-4567-bbb5-f1fa57426d70", 6 | "metadata": {}, 7 | "source": [ 8 | "# KNN Algorithm usecase using Iris Dataset" 9 | ] 10 | }, 11 | { 12 | "cell_type": "markdown", 13 | "id": "148c1a8f-ee91-4e1b-8b25-91bd07e380c3", 14 | "metadata": {}, 15 | "source": [ 16 | "# Import Necessary Libraries" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "id": "36d43271-672f-4c5d-bf21-2784bd262218", 23 | "metadata": {}, 24 | "outputs": [], 25 | "source": [ 26 | "import pandas as pd\n", 27 | "import numpy as np\n", 28 | "import matplotlib.pyplot as plt\n", 29 | "import seaborn as sns" 30 | ] 31 | }, 32 | { 33 | "cell_type": "markdown", 34 | "id": "e3cb2590-c77f-43cf-918d-089d6154704e", 35 | "metadata": {}, 36 | "source": [ 37 | "# Import the Dataset" 38 | ] 39 | }, 40 | { 41 | "cell_type": "code", 42 | "execution_count": 2, 43 | "id": "3820e965-e94a-46b2-9945-bd36e36e16a5", 44 | "metadata": {}, 45 | "outputs": [], 46 | "source": [ 47 | "df=sns.load_dataset(\"iris\")" 48 | ] 49 | }, 50 | { 51 | "cell_type": "code", 52 | "execution_count": 3, 53 | "id": "e464ad26-160f-41fb-b226-b3d37cc05a31", 54 | "metadata": {}, 55 | "outputs": [ 56 | { 57 | "data": { 58 | "text/html": [ 59 | "
\n", 60 | "\n", 73 | "\n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | " \n", 115 | " \n", 116 | " \n", 117 | " \n", 118 | " \n", 119 | " \n", 120 | " \n", 121 | " \n", 122 | " \n", 123 | " \n", 124 | " \n", 125 | " \n", 126 | " \n", 127 | " \n", 128 | " \n", 129 | " \n", 130 | " \n", 131 | " \n", 132 | " \n", 133 | " \n", 134 | " \n", 135 | " \n", 136 | " \n", 137 | " \n", 138 | " \n", 139 | " \n", 140 | " \n", 141 | " \n", 142 | " \n", 143 | " \n", 144 | " \n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
..................
1456.73.05.22.3virginica
1466.32.55.01.9virginica
1476.53.05.22.0virginica
1486.23.45.42.3virginica
1495.93.05.11.8virginica
\n", 175 | "

150 rows × 5 columns

\n", 176 | "
" 177 | ], 178 | "text/plain": [ 179 | " sepal_length sepal_width petal_length petal_width species\n", 180 | "0 5.1 3.5 1.4 0.2 setosa\n", 181 | "1 4.9 3.0 1.4 0.2 setosa\n", 182 | "2 4.7 3.2 1.3 0.2 setosa\n", 183 | "3 4.6 3.1 1.5 0.2 setosa\n", 184 | "4 5.0 3.6 1.4 0.2 setosa\n", 185 | ".. ... ... ... ... ...\n", 186 | "145 6.7 3.0 5.2 2.3 virginica\n", 187 | "146 6.3 2.5 5.0 1.9 virginica\n", 188 | "147 6.5 3.0 5.2 2.0 virginica\n", 189 | "148 6.2 3.4 5.4 2.3 virginica\n", 190 | "149 5.9 3.0 5.1 1.8 virginica\n", 191 | "\n", 192 | "[150 rows x 5 columns]" 193 | ] 194 | }, 195 | "execution_count": 3, 196 | "metadata": {}, 197 | "output_type": "execute_result" 198 | } 199 | ], 200 | "source": [ 201 | "df" 202 | ] 203 | }, 204 | { 205 | "cell_type": "code", 206 | "execution_count": 4, 207 | "id": "e7dc3610-1a2f-4833-9990-3181caabb593", 208 | "metadata": {}, 209 | "outputs": [ 210 | { 211 | "name": "stdout", 212 | "output_type": "stream", 213 | "text": [ 214 | "\n", 215 | "RangeIndex: 150 entries, 0 to 149\n", 216 | "Data columns (total 5 columns):\n", 217 | " # Column Non-Null Count Dtype \n", 218 | "--- ------ -------------- ----- \n", 219 | " 0 sepal_length 150 non-null float64\n", 220 | " 1 sepal_width 150 non-null float64\n", 221 | " 2 petal_length 150 non-null float64\n", 222 | " 3 petal_width 150 non-null float64\n", 223 | " 4 species 150 non-null object \n", 224 | "dtypes: float64(4), object(1)\n", 225 | "memory usage: 6.0+ KB\n" 226 | ] 227 | } 228 | ], 229 | "source": [ 230 | "df.info()" 231 | ] 232 | }, 233 | { 234 | "cell_type": "markdown", 235 | "id": "374f3434-9959-4811-b869-8ad10c3d56f7", 236 | "metadata": {}, 237 | "source": [ 238 | "# Transform Species column to Numericals" 239 | ] 240 | }, 241 | { 242 | "cell_type": "code", 243 | "execution_count": 5, 244 | "id": "cbbc0b67-f7be-493e-b475-0ddaff5afc4e", 245 | "metadata": {}, 246 | "outputs": [], 247 | "source": [ 248 | "from sklearn.preprocessing import LabelEncoder" 249 | ] 250 | }, 251 | { 252 | "cell_type": "code", 253 | "execution_count": 6, 254 | "id": "f4f6b208-fbd2-4bdb-b35f-3b3d4256ea74", 255 | "metadata": {}, 256 | "outputs": [], 257 | "source": [ 258 | "encoder=LabelEncoder()" 259 | ] 260 | }, 261 | { 262 | "cell_type": "code", 263 | "execution_count": 7, 264 | "id": "65b3f07c-1dc6-4bf2-9d50-afa6d0292038", 265 | "metadata": {}, 266 | "outputs": [], 267 | "source": [ 268 | "df[\"sp\"]=pd.DataFrame(encoder.fit_transform(df[\"species\"]))" 269 | ] 270 | }, 271 | { 272 | "cell_type": "code", 273 | "execution_count": 8, 274 | "id": "ec806cef-0743-47eb-801f-5e1fca2ca722", 275 | "metadata": {}, 276 | "outputs": [ 277 | { 278 | "data": { 279 | "text/html": [ 280 | "
\n", 281 | "\n", 294 | "\n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | " \n", 321 | " \n", 322 | " \n", 323 | " \n", 324 | " \n", 325 | " \n", 326 | " \n", 327 | " \n", 328 | " \n", 329 | " \n", 330 | " \n", 331 | " \n", 332 | " \n", 333 | " \n", 334 | " \n", 335 | " \n", 336 | " \n", 337 | " \n", 338 | " \n", 339 | " \n", 340 | " \n", 341 | " \n", 342 | " \n", 343 | " \n", 344 | " \n", 345 | " \n", 346 | " \n", 347 | " \n", 348 | " \n", 349 | " \n", 350 | " \n", 351 | " \n", 352 | " \n", 353 | " \n", 354 | " \n", 355 | " \n", 356 | " \n", 357 | " \n", 358 | " \n", 359 | " \n", 360 | " \n", 361 | " \n", 362 | " \n", 363 | " \n", 364 | " \n", 365 | " \n", 366 | " \n", 367 | " \n", 368 | " \n", 369 | " \n", 370 | " \n", 371 | " \n", 372 | " \n", 373 | " \n", 374 | " \n", 375 | " \n", 376 | " \n", 377 | " \n", 378 | " \n", 379 | " \n", 380 | " \n", 381 | " \n", 382 | " \n", 383 | " \n", 384 | " \n", 385 | " \n", 386 | " \n", 387 | " \n", 388 | " \n", 389 | " \n", 390 | " \n", 391 | " \n", 392 | " \n", 393 | " \n", 394 | " \n", 395 | " \n", 396 | " \n", 397 | " \n", 398 | " \n", 399 | " \n", 400 | " \n", 401 | " \n", 402 | " \n", 403 | " \n", 404 | " \n", 405 | " \n", 406 | " \n", 407 | "
sepal_lengthsepal_widthpetal_lengthpetal_widthspeciessp
05.13.51.40.2setosa0
14.93.01.40.2setosa0
24.73.21.30.2setosa0
34.63.11.50.2setosa0
45.03.61.40.2setosa0
.....................
1456.73.05.22.3virginica2
1466.32.55.01.9virginica2
1476.53.05.22.0virginica2
1486.23.45.42.3virginica2
1495.93.05.11.8virginica2
\n", 408 | "

150 rows × 6 columns

\n", 409 | "
" 410 | ], 411 | "text/plain": [ 412 | " sepal_length sepal_width petal_length petal_width species sp\n", 413 | "0 5.1 3.5 1.4 0.2 setosa 0\n", 414 | "1 4.9 3.0 1.4 0.2 setosa 0\n", 415 | "2 4.7 3.2 1.3 0.2 setosa 0\n", 416 | "3 4.6 3.1 1.5 0.2 setosa 0\n", 417 | "4 5.0 3.6 1.4 0.2 setosa 0\n", 418 | ".. ... ... ... ... ... ..\n", 419 | "145 6.7 3.0 5.2 2.3 virginica 2\n", 420 | "146 6.3 2.5 5.0 1.9 virginica 2\n", 421 | "147 6.5 3.0 5.2 2.0 virginica 2\n", 422 | "148 6.2 3.4 5.4 2.3 virginica 2\n", 423 | "149 5.9 3.0 5.1 1.8 virginica 2\n", 424 | "\n", 425 | "[150 rows x 6 columns]" 426 | ] 427 | }, 428 | "execution_count": 8, 429 | "metadata": {}, 430 | "output_type": "execute_result" 431 | } 432 | ], 433 | "source": [ 434 | "df" 435 | ] 436 | }, 437 | { 438 | "cell_type": "markdown", 439 | "id": "eb4a3ad3-0f3c-4b88-b1ae-f4e668448406", 440 | "metadata": {}, 441 | "source": [ 442 | "# Use Regressor Algorithm to find out sepal_lenght's" 443 | ] 444 | }, 445 | { 446 | "cell_type": "markdown", 447 | "id": "926d70b9-3925-49ef-8062-abaaec42564a", 448 | "metadata": {}, 449 | "source": [ 450 | "## Split Independent and Dependent features into train and test" 451 | ] 452 | }, 453 | { 454 | "cell_type": "code", 455 | "execution_count": 9, 456 | "id": "50d8c42c-6d6f-4f12-b8d1-ef764e7672cc", 457 | "metadata": {}, 458 | "outputs": [], 459 | "source": [ 460 | "x=df.drop([\"sepal_length\",\"species\"],axis=1)\n", 461 | "y=df[\"sepal_length\"]" 462 | ] 463 | }, 464 | { 465 | "cell_type": "code", 466 | "execution_count": 10, 467 | "id": "fc75989b-f44f-43f4-adfc-151d5a4506ac", 468 | "metadata": {}, 469 | "outputs": [], 470 | "source": [ 471 | "from sklearn.model_selection import train_test_split" 472 | ] 473 | }, 474 | { 475 | "cell_type": "code", 476 | "execution_count": 11, 477 | "id": "d71cf72a-bf02-48fd-8986-2e6171053737", 478 | "metadata": {}, 479 | "outputs": [], 480 | "source": [ 481 | "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25)" 482 | ] 483 | }, 484 | { 485 | "cell_type": "markdown", 486 | "id": "e4edf63d-c5f5-4d39-8ba8-f73432d8d0c1", 487 | "metadata": {}, 488 | "source": [ 489 | "## Import required libraries to use the model and to do evaluation metrics" 490 | ] 491 | }, 492 | { 493 | "cell_type": "code", 494 | "execution_count": 12, 495 | "id": "cb4c9806-0df8-49cb-84dd-131b08f85067", 496 | "metadata": {}, 497 | "outputs": [], 498 | "source": [ 499 | "from sklearn.neighbors import KNeighborsRegressor\n", 500 | "from sklearn.metrics import mean_absolute_error,mean_absolute_percentage_error,r2_score" 501 | ] 502 | }, 503 | { 504 | "cell_type": "code", 505 | "execution_count": 13, 506 | "id": "1d2ffe88-b0a7-4a3c-acce-7a75d6c8d3f8", 507 | "metadata": {}, 508 | "outputs": [], 509 | "source": [ 510 | "model=KNeighborsRegressor(n_neighbors=3)" 511 | ] 512 | }, 513 | { 514 | "cell_type": "code", 515 | "execution_count": 14, 516 | "id": "14766979-32a6-41ac-bae6-3cd09ffd98d0", 517 | "metadata": {}, 518 | "outputs": [ 519 | { 520 | "data": { 521 | "text/html": [ 522 | "
KNeighborsRegressor(n_neighbors=3)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" 523 | ], 524 | "text/plain": [ 525 | "KNeighborsRegressor(n_neighbors=3)" 526 | ] 527 | }, 528 | "execution_count": 14, 529 | "metadata": {}, 530 | "output_type": "execute_result" 531 | } 532 | ], 533 | "source": [ 534 | "model.fit(x_train,y_train)" 535 | ] 536 | }, 537 | { 538 | "cell_type": "code", 539 | "execution_count": 15, 540 | "id": "752da270-a965-4ef8-88d9-705020022156", 541 | "metadata": {}, 542 | "outputs": [], 543 | "source": [ 544 | "y_pred=model.predict(x_test)" 545 | ] 546 | }, 547 | { 548 | "cell_type": "markdown", 549 | "id": "368ec976-56f4-410a-9c2c-3fcc8f45f11c", 550 | "metadata": {}, 551 | "source": [ 552 | "## Check the performance of the Model" 553 | ] 554 | }, 555 | { 556 | "cell_type": "code", 557 | "execution_count": 16, 558 | "id": "8a99e434-e238-4b1d-8aed-476eeea51c0c", 559 | "metadata": {}, 560 | "outputs": [ 561 | { 562 | "data": { 563 | "text/plain": [ 564 | "0.6117073556603678" 565 | ] 566 | }, 567 | "execution_count": 16, 568 | "metadata": {}, 569 | "output_type": "execute_result" 570 | } 571 | ], 572 | "source": [ 573 | "r2_score(y_test,y_pred)" 574 | ] 575 | }, 576 | { 577 | "cell_type": "code", 578 | "execution_count": 17, 579 | "id": "9ba24b59-8853-49b2-b6d9-3fc021dc46be", 580 | "metadata": {}, 581 | "outputs": [ 582 | { 583 | "data": { 584 | "text/plain": [ 585 | "0.31491228070175453" 586 | ] 587 | }, 588 | "execution_count": 17, 589 | "metadata": {}, 590 | "output_type": "execute_result" 591 | } 592 | ], 593 | "source": [ 594 | "mean_absolute_error(y_test,y_pred)" 595 | ] 596 | }, 597 | { 598 | "cell_type": "code", 599 | "execution_count": 18, 600 | "id": "c3571745-9224-41e2-912e-fffde5686d66", 601 | "metadata": {}, 602 | "outputs": [ 603 | { 604 | "data": { 605 | "text/plain": [ 606 | "0.05557470769618534" 607 | ] 608 | }, 609 | "execution_count": 18, 610 | "metadata": {}, 611 | "output_type": "execute_result" 612 | } 613 | ], 614 | "source": [ 615 | "mean_absolute_percentage_error(y_test,y_pred)" 616 | ] 617 | }, 618 | { 619 | "cell_type": "markdown", 620 | "id": "2d7be313-2fa0-4632-a8c6-223f7705dff5", 621 | "metadata": {}, 622 | "source": [ 623 | "# Use Classification Algorithm to find out Species's" 624 | ] 625 | }, 626 | { 627 | "cell_type": "markdown", 628 | "id": "3f9f4c81-6be9-4f15-b34e-77459c10d787", 629 | "metadata": {}, 630 | "source": [ 631 | "## Split Independent and Dependent features into train and test" 632 | ] 633 | }, 634 | { 635 | "cell_type": "code", 636 | "execution_count": 19, 637 | "id": "53856c24-3e13-43d4-82e1-97fdecfb88ac", 638 | "metadata": {}, 639 | "outputs": [], 640 | "source": [ 641 | "x=df.drop([\"sp\",\"species\"],axis=1)\n", 642 | "y=df[\"species\"]" 643 | ] 644 | }, 645 | { 646 | "cell_type": "code", 647 | "execution_count": 20, 648 | "id": "9572092a-39ff-4977-961c-1bc0ea4144d8", 649 | "metadata": {}, 650 | "outputs": [], 651 | "source": [ 652 | "from sklearn.model_selection import train_test_split" 653 | ] 654 | }, 655 | { 656 | "cell_type": "code", 657 | "execution_count": 21, 658 | "id": "e02a0760-b815-4b77-873d-ee61dfb76608", 659 | "metadata": {}, 660 | "outputs": [], 661 | "source": [ 662 | "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25)" 663 | ] 664 | }, 665 | { 666 | "cell_type": "markdown", 667 | "id": "2174c131-5380-476f-a725-083e58c2b6df", 668 | "metadata": {}, 669 | "source": [ 670 | "## Import required libraries to use the model and to do evaluation metrics" 671 | ] 672 | }, 673 | { 674 | "cell_type": "code", 675 | "execution_count": 22, 676 | "id": "2d5090eb-0f77-4cf2-8e18-c71a156964c6", 677 | "metadata": {}, 678 | "outputs": [], 679 | "source": [ 680 | "from sklearn.neighbors import KNeighborsClassifier\n", 681 | "from sklearn.metrics import confusion_matrix,classification_report" 682 | ] 683 | }, 684 | { 685 | "cell_type": "code", 686 | "execution_count": 23, 687 | "id": "cf93aefa-d9cb-41c2-b3a0-43013a253751", 688 | "metadata": {}, 689 | "outputs": [], 690 | "source": [ 691 | "model=KNeighborsClassifier(n_neighbors=3)" 692 | ] 693 | }, 694 | { 695 | "cell_type": "code", 696 | "execution_count": 24, 697 | "id": "cbe791d7-aed4-4760-835e-d21546a053b7", 698 | "metadata": {}, 699 | "outputs": [ 700 | { 701 | "data": { 702 | "text/html": [ 703 | "
KNeighborsClassifier(n_neighbors=3)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" 704 | ], 705 | "text/plain": [ 706 | "KNeighborsClassifier(n_neighbors=3)" 707 | ] 708 | }, 709 | "execution_count": 24, 710 | "metadata": {}, 711 | "output_type": "execute_result" 712 | } 713 | ], 714 | "source": [ 715 | "model.fit(x_train,y_train)" 716 | ] 717 | }, 718 | { 719 | "cell_type": "code", 720 | "execution_count": 25, 721 | "id": "5683598c-d9c9-4b6a-889b-85f98e7fc27d", 722 | "metadata": {}, 723 | "outputs": [], 724 | "source": [ 725 | "y_pred=model.predict(x_test)" 726 | ] 727 | }, 728 | { 729 | "cell_type": "markdown", 730 | "id": "a7900f74-ef56-4096-9600-107ae0f267f1", 731 | "metadata": {}, 732 | "source": [ 733 | "## Check the performance of the Model" 734 | ] 735 | }, 736 | { 737 | "cell_type": "code", 738 | "execution_count": 26, 739 | "id": "88f90669-d4ea-48f8-8dcd-a925b01c7a71", 740 | "metadata": {}, 741 | "outputs": [ 742 | { 743 | "data": { 744 | "text/plain": [ 745 | "Text(50.722222222222214, 0.5, 'Predicted')" 746 | ] 747 | }, 748 | "execution_count": 26, 749 | "metadata": {}, 750 | "output_type": "execute_result" 751 | }, 752 | { 753 | "data": { 754 | "image/png": "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\n", 755 | "text/plain": [ 756 | "
" 757 | ] 758 | }, 759 | "metadata": {}, 760 | "output_type": "display_data" 761 | } 762 | ], 763 | "source": [ 764 | "sns.heatmap(confusion_matrix(y_test,y_pred),annot=True)\n", 765 | "plt.xlabel(\"Actual\")\n", 766 | "plt.ylabel(\"Predicted\")" 767 | ] 768 | }, 769 | { 770 | "cell_type": "code", 771 | "execution_count": 27, 772 | "id": "0c48f54b-9144-4227-b1d8-a16f20ed7cc5", 773 | "metadata": {}, 774 | "outputs": [ 775 | { 776 | "name": "stdout", 777 | "output_type": "stream", 778 | "text": [ 779 | " precision recall f1-score support\n", 780 | "\n", 781 | " setosa 1.00 1.00 1.00 12\n", 782 | " versicolor 0.92 0.92 0.92 13\n", 783 | " virginica 0.92 0.92 0.92 13\n", 784 | "\n", 785 | " accuracy 0.95 38\n", 786 | " macro avg 0.95 0.95 0.95 38\n", 787 | "weighted avg 0.95 0.95 0.95 38\n", 788 | "\n" 789 | ] 790 | } 791 | ], 792 | "source": [ 793 | "print(classification_report(y_test,y_pred))" 794 | ] 795 | } 796 | ], 797 | "metadata": { 798 | "kernelspec": { 799 | "display_name": "Python 3 (ipykernel)", 800 | "language": "python", 801 | "name": "python3" 802 | }, 803 | "language_info": { 804 | "codemirror_mode": { 805 | "name": "ipython", 806 | "version": 3 807 | }, 808 | "file_extension": ".py", 809 | "mimetype": "text/x-python", 810 | "name": "python", 811 | "nbconvert_exporter": "python", 812 | "pygments_lexer": "ipython3", 813 | "version": "3.10.8" 814 | } 815 | }, 816 | "nbformat": 4, 817 | "nbformat_minor": 5 818 | } 819 | -------------------------------------------------------------------------------- /KNN/index.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Linear Regression/LINEAR REGRESSION .pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/Linear Regression/LINEAR REGRESSION .pdf -------------------------------------------------------------------------------- /Linear Regression/Tv Ads Linear Regression.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/Linear Regression/Tv Ads Linear Regression.pdf -------------------------------------------------------------------------------- /Linear Regression/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Linear Regression/tvmarketing.csv: -------------------------------------------------------------------------------- 1 | TV,Sales 2 | 230.1,22.1 3 | 44.5,10.4 4 | 17.2,9.3 5 | 151.5,18.5 6 | 180.8,12.9 7 | 8.7,7.2 8 | 57.5,11.8 9 | 120.2,13.2 10 | 8.6,4.8 11 | 199.8,10.6 12 | 66.1,8.6 13 | 214.7,17.4 14 | 23.8,9.2 15 | 97.5,9.7 16 | 204.1,19 17 | 195.4,22.4 18 | 67.8,12.5 19 | 281.4,24.4 20 | 69.2,11.3 21 | 147.3,14.6 22 | 218.4,18 23 | 237.4,12.5 24 | 13.2,5.6 25 | 228.3,15.5 26 | 62.3,9.7 27 | 262.9,12 28 | 142.9,15 29 | 240.1,15.9 30 | 248.8,18.9 31 | 70.6,10.5 32 | 292.9,21.4 33 | 112.9,11.9 34 | 97.2,9.6 35 | 265.6,17.4 36 | 95.7,9.5 37 | 290.7,12.8 38 | 266.9,25.4 39 | 74.7,14.7 40 | 43.1,10.1 41 | 228,21.5 42 | 202.5,16.6 43 | 177,17.1 44 | 293.6,20.7 45 | 206.9,12.9 46 | 25.1,8.5 47 | 175.1,14.9 48 | 89.7,10.6 49 | 239.9,23.2 50 | 227.2,14.8 51 | 66.9,9.7 52 | 199.8,11.4 53 | 100.4,10.7 54 | 216.4,22.6 55 | 182.6,21.2 56 | 262.7,20.2 57 | 198.9,23.7 58 | 7.3,5.5 59 | 136.2,13.2 60 | 210.8,23.8 61 | 210.7,18.4 62 | 53.5,8.1 63 | 261.3,24.2 64 | 239.3,15.7 65 | 102.7,14 66 | 131.1,18 67 | 69,9.3 68 | 31.5,9.5 69 | 139.3,13.4 70 | 237.4,18.9 71 | 216.8,22.3 72 | 199.1,18.3 73 | 109.8,12.4 74 | 26.8,8.8 75 | 129.4,11 76 | 213.4,17 77 | 16.9,8.7 78 | 27.5,6.9 79 | 120.5,14.2 80 | 5.4,5.3 81 | 116,11 82 | 76.4,11.8 83 | 239.8,12.3 84 | 75.3,11.3 85 | 68.4,13.6 86 | 213.5,21.7 87 | 193.2,15.2 88 | 76.3,12 89 | 110.7,16 90 | 88.3,12.9 91 | 109.8,16.7 92 | 134.3,11.2 93 | 28.6,7.3 94 | 217.7,19.4 95 | 250.9,22.2 96 | 107.4,11.5 97 | 163.3,16.9 98 | 197.6,11.7 99 | 184.9,15.5 100 | 289.7,25.4 101 | 135.2,17.2 102 | 222.4,11.7 103 | 296.4,23.8 104 | 280.2,14.8 105 | 187.9,14.7 106 | 238.2,20.7 107 | 137.9,19.2 108 | 25,7.2 109 | 90.4,8.7 110 | 13.1,5.3 111 | 255.4,19.8 112 | 225.8,13.4 113 | 241.7,21.8 114 | 175.7,14.1 115 | 209.6,15.9 116 | 78.2,14.6 117 | 75.1,12.6 118 | 139.2,12.2 119 | 76.4,9.4 120 | 125.7,15.9 121 | 19.4,6.6 122 | 141.3,15.5 123 | 18.8,7 124 | 224,11.6 125 | 123.1,15.2 126 | 229.5,19.7 127 | 87.2,10.6 128 | 7.8,6.6 129 | 80.2,8.8 130 | 220.3,24.7 131 | 59.6,9.7 132 | 0.7,1.6 133 | 265.2,12.7 134 | 8.4,5.7 135 | 219.8,19.6 136 | 36.9,10.8 137 | 48.3,11.6 138 | 25.6,9.5 139 | 273.7,20.8 140 | 43,9.6 141 | 184.9,20.7 142 | 73.4,10.9 143 | 193.7,19.2 144 | 220.5,20.1 145 | 104.6,10.4 146 | 96.2,11.4 147 | 140.3,10.3 148 | 240.1,13.2 149 | 243.2,25.4 150 | 38,10.9 151 | 44.7,10.1 152 | 280.7,16.1 153 | 121,11.6 154 | 197.6,16.6 155 | 171.3,19 156 | 187.8,15.6 157 | 4.1,3.2 158 | 93.9,15.3 159 | 149.8,10.1 160 | 11.7,7.3 161 | 131.7,12.9 162 | 172.5,14.4 163 | 85.7,13.3 164 | 188.4,14.9 165 | 163.5,18 166 | 117.2,11.9 167 | 234.5,11.9 168 | 17.9,8 169 | 206.8,12.2 170 | 215.4,17.1 171 | 284.3,15 172 | 50,8.4 173 | 164.5,14.5 174 | 19.6,7.6 175 | 168.4,11.7 176 | 222.4,11.5 177 | 276.9,27 178 | 248.4,20.2 179 | 170.2,11.7 180 | 276.7,11.8 181 | 165.6,12.6 182 | 156.6,10.5 183 | 218.5,12.2 184 | 56.2,8.7 185 | 287.6,26.2 186 | 253.8,17.6 187 | 205,22.6 188 | 139.5,10.3 189 | 191.1,17.3 190 | 286,15.9 191 | 18.7,6.7 192 | 39.5,10.8 193 | 75.5,9.9 194 | 17.2,5.9 195 | 166.8,19.6 196 | 149.7,17.3 197 | 38.2,7.6 198 | 94.2,9.7 199 | 177,12.8 200 | 283.6,25.5 201 | 232.1,13.4 202 | -------------------------------------------------------------------------------- /Logistic Regression/Logistic Regression .pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/Logistic Regression/Logistic Regression .pdf -------------------------------------------------------------------------------- /Logistic Regression/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /ML]]Preprocessing Automation/Heart Stroke Jup Notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "dcf2ee32-966c-4819-a29f-1a30b174fa2d", 6 | "metadata": {}, 7 | "source": [ 8 | "# Heart Stroke Prediction" 9 | ] 10 | }, 11 | { 12 | "cell_type": "markdown", 13 | "id": "857db1c7-fe53-4f6e-9637-dc23d3cc5bc7", 14 | "metadata": {}, 15 | "source": [ 16 | "## Import Necessary Libraries" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "id": "494f1e9f-7b6b-4642-8e71-4ab7a7840410", 23 | "metadata": {}, 24 | "outputs": [], 25 | "source": [ 26 | "import pandas as pd\n", 27 | "import numpy as np\n", 28 | "import matplotlib.pyplot as plt\n", 29 | "import seaborn as sns\n", 30 | "import warnings\n", 31 | "warnings.filterwarnings(\"ignore\")" 32 | ] 33 | }, 34 | { 35 | "cell_type": "markdown", 36 | "id": "78d4cd04-1e58-42a6-b19d-7593a4957646", 37 | "metadata": {}, 38 | "source": [ 39 | "### Import the Dataset" 40 | ] 41 | }, 42 | { 43 | "cell_type": "code", 44 | "execution_count": 2, 45 | "id": "7357c6c3-084a-4e35-ac7c-49641d0dd0bb", 46 | "metadata": {}, 47 | "outputs": [], 48 | "source": [ 49 | "df=pd.read_csv(\"healthcare-dataset-stroke-data.csv\")" 50 | ] 51 | }, 52 | { 53 | "cell_type": "code", 54 | "execution_count": 3, 55 | "id": "69e096bc-a303-49e5-9a31-dcd732820ae8", 56 | "metadata": {}, 57 | "outputs": [ 58 | { 59 | "data": { 60 | "text/html": [ 61 | "
\n", 62 | "\n", 75 | "\n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | " \n", 115 | " \n", 116 | " \n", 117 | " \n", 118 | " \n", 119 | " \n", 120 | " \n", 121 | " \n", 122 | " \n", 123 | " \n", 124 | " \n", 125 | " \n", 126 | " \n", 127 | " \n", 128 | " \n", 129 | " \n", 130 | " \n", 131 | " \n", 132 | " \n", 133 | " \n", 134 | " \n", 135 | " \n", 136 | " \n", 137 | " \n", 138 | " \n", 139 | " \n", 140 | " \n", 141 | " \n", 142 | " \n", 143 | " \n", 144 | " \n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | " \n", 185 | " \n", 186 | " \n", 187 | " \n", 188 | " \n", 189 | " \n", 190 | " \n", 191 | " \n", 192 | " \n", 193 | " \n", 194 | " \n", 195 | " \n", 196 | " \n", 197 | " \n", 198 | " \n", 199 | " \n", 200 | " \n", 201 | " \n", 202 | " \n", 203 | " \n", 204 | " \n", 205 | " \n", 206 | " \n", 207 | " \n", 208 | " \n", 209 | " \n", 210 | " \n", 211 | " \n", 212 | " \n", 213 | " \n", 214 | " \n", 215 | " \n", 216 | " \n", 217 | " \n", 218 | " \n", 219 | " \n", 220 | " \n", 221 | " \n", 222 | " \n", 223 | " \n", 224 | " \n", 225 | " \n", 226 | " \n", 227 | " \n", 228 | " \n", 229 | " \n", 230 | " \n", 231 | " \n", 232 | " \n", 233 | " \n", 234 | " \n", 235 | " \n", 236 | " \n", 237 | " \n", 238 | " \n", 239 | " \n", 240 | " \n", 241 | " \n", 242 | " \n", 243 | " \n", 244 | " \n", 245 | " \n", 246 | " \n", 247 | " \n", 248 | " \n", 249 | " \n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | "
idgenderagehypertensionheart_diseaseever_marriedwork_typeResidence_typeavg_glucose_levelbmismoking_statusstroke
09046Male67.001YesPrivateUrban228.6936.6formerly smoked1
151676Female61.000YesSelf-employedRural202.21NaNnever smoked1
231112Male80.001YesPrivateRural105.9232.5never smoked1
360182Female49.000YesPrivateUrban171.2334.4smokes1
41665Female79.010YesSelf-employedRural174.1224.0never smoked1
.......................................
510518234Female80.010YesPrivateUrban83.75NaNnever smoked0
510644873Female81.000YesSelf-employedUrban125.2040.0never smoked0
510719723Female35.000YesSelf-employedRural82.9930.6never smoked0
510837544Male51.000YesPrivateRural166.2925.6formerly smoked0
510944679Female44.000YesGovt_jobUrban85.2826.2Unknown0
\n", 261 | "

5110 rows × 12 columns

\n", 262 | "
" 263 | ], 264 | "text/plain": [ 265 | " id gender age hypertension heart_disease ever_married \\\n", 266 | "0 9046 Male 67.0 0 1 Yes \n", 267 | "1 51676 Female 61.0 0 0 Yes \n", 268 | "2 31112 Male 80.0 0 1 Yes \n", 269 | "3 60182 Female 49.0 0 0 Yes \n", 270 | "4 1665 Female 79.0 1 0 Yes \n", 271 | "... ... ... ... ... ... ... \n", 272 | "5105 18234 Female 80.0 1 0 Yes \n", 273 | "5106 44873 Female 81.0 0 0 Yes \n", 274 | "5107 19723 Female 35.0 0 0 Yes \n", 275 | "5108 37544 Male 51.0 0 0 Yes \n", 276 | "5109 44679 Female 44.0 0 0 Yes \n", 277 | "\n", 278 | " work_type Residence_type avg_glucose_level bmi smoking_status \\\n", 279 | "0 Private Urban 228.69 36.6 formerly smoked \n", 280 | "1 Self-employed Rural 202.21 NaN never smoked \n", 281 | "2 Private Rural 105.92 32.5 never smoked \n", 282 | "3 Private Urban 171.23 34.4 smokes \n", 283 | "4 Self-employed Rural 174.12 24.0 never smoked \n", 284 | "... ... ... ... ... ... \n", 285 | "5105 Private Urban 83.75 NaN never smoked \n", 286 | "5106 Self-employed Urban 125.20 40.0 never smoked \n", 287 | "5107 Self-employed Rural 82.99 30.6 never smoked \n", 288 | "5108 Private Rural 166.29 25.6 formerly smoked \n", 289 | "5109 Govt_job Urban 85.28 26.2 Unknown \n", 290 | "\n", 291 | " stroke \n", 292 | "0 1 \n", 293 | "1 1 \n", 294 | "2 1 \n", 295 | "3 1 \n", 296 | "4 1 \n", 297 | "... ... \n", 298 | "5105 0 \n", 299 | "5106 0 \n", 300 | "5107 0 \n", 301 | "5108 0 \n", 302 | "5109 0 \n", 303 | "\n", 304 | "[5110 rows x 12 columns]" 305 | ] 306 | }, 307 | "execution_count": 3, 308 | "metadata": {}, 309 | "output_type": "execute_result" 310 | } 311 | ], 312 | "source": [ 313 | "df" 314 | ] 315 | }, 316 | { 317 | "cell_type": "markdown", 318 | "id": "8e037466-14f2-4319-9a04-70619bf2981d", 319 | "metadata": {}, 320 | "source": [ 321 | "### Drop unnecessary columns" 322 | ] 323 | }, 324 | { 325 | "cell_type": "code", 326 | "execution_count": 4, 327 | "id": "3f20ae85-8cff-435e-8abe-5ecda9421679", 328 | "metadata": {}, 329 | "outputs": [], 330 | "source": [ 331 | "df.drop(\"id\",axis=1,inplace=True)" 332 | ] 333 | }, 334 | { 335 | "cell_type": "code", 336 | "execution_count": 5, 337 | "id": "f9e4067f-6fed-485e-8b6b-2aaae1e01c3f", 338 | "metadata": {}, 339 | "outputs": [ 340 | { 341 | "data": { 342 | "text/html": [ 343 | "
\n", 344 | "\n", 357 | "\n", 358 | " \n", 359 | " \n", 360 | " \n", 361 | " \n", 362 | " \n", 363 | " \n", 364 | " \n", 365 | " \n", 366 | " \n", 367 | " \n", 368 | " \n", 369 | " \n", 370 | " \n", 371 | " \n", 372 | " \n", 373 | " \n", 374 | " \n", 375 | " \n", 376 | " \n", 377 | " \n", 378 | " \n", 379 | " \n", 380 | " \n", 381 | " \n", 382 | " \n", 383 | " \n", 384 | " \n", 385 | " \n", 386 | " \n", 387 | " \n", 388 | " \n", 389 | " \n", 390 | " \n", 391 | " \n", 392 | " \n", 393 | " \n", 394 | " \n", 395 | " \n", 396 | " \n", 397 | " \n", 398 | " \n", 399 | " \n", 400 | " \n", 401 | " \n", 402 | " \n", 403 | " \n", 404 | " \n", 405 | " \n", 406 | " \n", 407 | " \n", 408 | " \n", 409 | " \n", 410 | " \n", 411 | " \n", 412 | " \n", 413 | " \n", 414 | " \n", 415 | " \n", 416 | " \n", 417 | " \n", 418 | " \n", 419 | " \n", 420 | " \n", 421 | " \n", 422 | " \n", 423 | " \n", 424 | " \n", 425 | " \n", 426 | " \n", 427 | " \n", 428 | " \n", 429 | " \n", 430 | " \n", 431 | " \n", 432 | " \n", 433 | " \n", 434 | " \n", 435 | " \n", 436 | " \n", 437 | " \n", 438 | " \n", 439 | " \n", 440 | " \n", 441 | " \n", 442 | " \n", 443 | " \n", 444 | " \n", 445 | " \n", 446 | "
genderagehypertensionheart_diseaseever_marriedwork_typeResidence_typeavg_glucose_levelbmismoking_statusstroke
0Male67.001YesPrivateUrban228.6936.6formerly smoked1
1Female61.000YesSelf-employedRural202.21NaNnever smoked1
2Male80.001YesPrivateRural105.9232.5never smoked1
3Female49.000YesPrivateUrban171.2334.4smokes1
4Female79.010YesSelf-employedRural174.1224.0never smoked1
\n", 447 | "
" 448 | ], 449 | "text/plain": [ 450 | " gender age hypertension heart_disease ever_married work_type \\\n", 451 | "0 Male 67.0 0 1 Yes Private \n", 452 | "1 Female 61.0 0 0 Yes Self-employed \n", 453 | "2 Male 80.0 0 1 Yes Private \n", 454 | "3 Female 49.0 0 0 Yes Private \n", 455 | "4 Female 79.0 1 0 Yes Self-employed \n", 456 | "\n", 457 | " Residence_type avg_glucose_level bmi smoking_status stroke \n", 458 | "0 Urban 228.69 36.6 formerly smoked 1 \n", 459 | "1 Rural 202.21 NaN never smoked 1 \n", 460 | "2 Rural 105.92 32.5 never smoked 1 \n", 461 | "3 Urban 171.23 34.4 smokes 1 \n", 462 | "4 Rural 174.12 24.0 never smoked 1 " 463 | ] 464 | }, 465 | "execution_count": 5, 466 | "metadata": {}, 467 | "output_type": "execute_result" 468 | } 469 | ], 470 | "source": [ 471 | "df.head()" 472 | ] 473 | }, 474 | { 475 | "cell_type": "markdown", 476 | "id": "850d9ebf-9120-418a-879c-8b1cd224bb28", 477 | "metadata": {}, 478 | "source": [ 479 | "## Handle Data Imbalancement" 480 | ] 481 | }, 482 | { 483 | "cell_type": "code", 484 | "execution_count": 6, 485 | "id": "f0d75821-83b4-4d4e-8ee7-891d25ecfee3", 486 | "metadata": {}, 487 | "outputs": [], 488 | "source": [ 489 | "minor=df[df[\"stroke\"]==1]\n", 490 | "major=df[df[\"stroke\"]==0]" 491 | ] 492 | }, 493 | { 494 | "cell_type": "code", 495 | "execution_count": 7, 496 | "id": "4888df5f-6fcf-490f-bf1f-f168469666af", 497 | "metadata": {}, 498 | "outputs": [], 499 | "source": [ 500 | "from sklearn.utils import resample" 501 | ] 502 | }, 503 | { 504 | "cell_type": "code", 505 | "execution_count": 8, 506 | "id": "b3a15e7d-f9a9-47ce-b094-a4b332f2117c", 507 | "metadata": {}, 508 | "outputs": [], 509 | "source": [ 510 | "minor_new=resample(minor,replace=True,n_samples=len(major),random_state=42)" 511 | ] 512 | }, 513 | { 514 | "cell_type": "code", 515 | "execution_count": 9, 516 | "id": "78c0aea8-5bf1-4ab4-8c10-39d03c130e91", 517 | "metadata": {}, 518 | "outputs": [], 519 | "source": [ 520 | "df=pd.concat([minor_new,major])" 521 | ] 522 | }, 523 | { 524 | "cell_type": "code", 525 | "execution_count": 10, 526 | "id": "d5b71306-b96d-4b2d-9a41-df53e5c9b89f", 527 | "metadata": {}, 528 | "outputs": [], 529 | "source": [ 530 | "df=df.sample(frac=1)" 531 | ] 532 | }, 533 | { 534 | "cell_type": "code", 535 | "execution_count": 11, 536 | "id": "99aef89a-4e14-49b3-9ac4-0401346dd07f", 537 | "metadata": {}, 538 | "outputs": [ 539 | { 540 | "data": { 541 | "text/html": [ 542 | "
\n", 543 | "\n", 556 | "\n", 557 | " \n", 558 | " \n", 559 | " \n", 560 | " \n", 561 | " \n", 562 | " \n", 563 | " \n", 564 | " \n", 565 | " \n", 566 | " \n", 567 | " \n", 568 | " \n", 569 | " \n", 570 | " \n", 571 | " \n", 572 | " \n", 573 | " \n", 574 | " \n", 575 | " \n", 576 | " \n", 577 | " \n", 578 | " \n", 579 | " \n", 580 | " \n", 581 | " \n", 582 | " \n", 583 | " \n", 584 | " \n", 585 | " \n", 586 | " \n", 587 | " \n", 588 | " \n", 589 | " \n", 590 | " \n", 591 | " \n", 592 | " \n", 593 | " \n", 594 | " \n", 595 | " \n", 596 | " \n", 597 | " \n", 598 | " \n", 599 | " \n", 600 | " \n", 601 | " \n", 602 | " \n", 603 | " \n", 604 | " \n", 605 | " \n", 606 | " \n", 607 | " \n", 608 | " \n", 609 | " \n", 610 | " \n", 611 | " \n", 612 | " \n", 613 | " \n", 614 | " \n", 615 | " \n", 616 | " \n", 617 | " \n", 618 | " \n", 619 | " \n", 620 | " \n", 621 | " \n", 622 | " \n", 623 | " \n", 624 | " \n", 625 | " \n", 626 | " \n", 627 | " \n", 628 | " \n", 629 | " \n", 630 | " \n", 631 | " \n", 632 | " \n", 633 | " \n", 634 | " \n", 635 | " \n", 636 | " \n", 637 | " \n", 638 | " \n", 639 | " \n", 640 | " \n", 641 | " \n", 642 | " \n", 643 | " \n", 644 | " \n", 645 | " \n", 646 | " \n", 647 | " \n", 648 | " \n", 649 | " \n", 650 | " \n", 651 | " \n", 652 | " \n", 653 | " \n", 654 | " \n", 655 | " \n", 656 | " \n", 657 | " \n", 658 | " \n", 659 | " \n", 660 | " \n", 661 | " \n", 662 | " \n", 663 | " \n", 664 | " \n", 665 | " \n", 666 | " \n", 667 | " \n", 668 | " \n", 669 | " \n", 670 | " \n", 671 | " \n", 672 | " \n", 673 | " \n", 674 | " \n", 675 | " \n", 676 | " \n", 677 | " \n", 678 | " \n", 679 | " \n", 680 | " \n", 681 | " \n", 682 | " \n", 683 | " \n", 684 | " \n", 685 | " \n", 686 | " \n", 687 | " \n", 688 | " \n", 689 | " \n", 690 | " \n", 691 | " \n", 692 | " \n", 693 | " \n", 694 | " \n", 695 | " \n", 696 | " \n", 697 | " \n", 698 | " \n", 699 | " \n", 700 | " \n", 701 | " \n", 702 | " \n", 703 | " \n", 704 | " \n", 705 | " \n", 706 | " \n", 707 | " \n", 708 | " \n", 709 | " \n", 710 | " \n", 711 | " \n", 712 | " \n", 713 | " \n", 714 | " \n", 715 | " \n", 716 | " \n", 717 | " \n", 718 | " \n", 719 | " \n", 720 | " \n", 721 | " \n", 722 | " \n", 723 | " \n", 724 | " \n", 725 | " \n", 726 | " \n", 727 | " \n", 728 | " \n", 729 | "
genderagehypertensionheart_diseaseever_marriedwork_typeResidence_typeavg_glucose_levelbmismoking_statusstroke
3520Male18.000NoSelf-employedUrban74.0023.7Unknown0
4494Male54.000NoPrivateRural106.5227.4formerly smoked0
154Female55.000YesSelf-employedRural92.9825.6never smoked1
119Female77.000YesPrivateUrban105.2231.0never smoked1
38Male58.000NoPrivateRural92.6232.0Unknown1
....................................
2377Female28.000YesPrivateRural97.0623.2Unknown0
82Female79.000NoPrivateRural88.9222.9never smoked1
1572Male12.000NochildrenUrban64.0818.2Unknown0
4112Female36.000YesPrivateUrban72.1623.2never smoked0
152Female80.000YesSelf-employedUrban76.5734.1never smoked1
\n", 730 | "

9722 rows × 11 columns

\n", 731 | "
" 732 | ], 733 | "text/plain": [ 734 | " gender age hypertension heart_disease ever_married work_type \\\n", 735 | "3520 Male 18.0 0 0 No Self-employed \n", 736 | "4494 Male 54.0 0 0 No Private \n", 737 | "154 Female 55.0 0 0 Yes Self-employed \n", 738 | "119 Female 77.0 0 0 Yes Private \n", 739 | "38 Male 58.0 0 0 No Private \n", 740 | "... ... ... ... ... ... ... \n", 741 | "2377 Female 28.0 0 0 Yes Private \n", 742 | "82 Female 79.0 0 0 No Private \n", 743 | "1572 Male 12.0 0 0 No children \n", 744 | "4112 Female 36.0 0 0 Yes Private \n", 745 | "152 Female 80.0 0 0 Yes Self-employed \n", 746 | "\n", 747 | " Residence_type avg_glucose_level bmi smoking_status stroke \n", 748 | "3520 Urban 74.00 23.7 Unknown 0 \n", 749 | "4494 Rural 106.52 27.4 formerly smoked 0 \n", 750 | "154 Rural 92.98 25.6 never smoked 1 \n", 751 | "119 Urban 105.22 31.0 never smoked 1 \n", 752 | "38 Rural 92.62 32.0 Unknown 1 \n", 753 | "... ... ... ... ... ... \n", 754 | "2377 Rural 97.06 23.2 Unknown 0 \n", 755 | "82 Rural 88.92 22.9 never smoked 1 \n", 756 | "1572 Urban 64.08 18.2 Unknown 0 \n", 757 | "4112 Urban 72.16 23.2 never smoked 0 \n", 758 | "152 Urban 76.57 34.1 never smoked 1 \n", 759 | "\n", 760 | "[9722 rows x 11 columns]" 761 | ] 762 | }, 763 | "execution_count": 11, 764 | "metadata": {}, 765 | "output_type": "execute_result" 766 | } 767 | ], 768 | "source": [ 769 | "df" 770 | ] 771 | }, 772 | { 773 | "cell_type": "markdown", 774 | "id": "f85a1efe-de47-4534-b21c-ed6f698b7e03", 775 | "metadata": {}, 776 | "source": [ 777 | "## Divide Data into Independent and Dependent Features" 778 | ] 779 | }, 780 | { 781 | "cell_type": "code", 782 | "execution_count": 12, 783 | "id": "ed205e84-54e7-4b11-b4bc-8092fef3c8b9", 784 | "metadata": {}, 785 | "outputs": [], 786 | "source": [ 787 | "x=df.drop(\"stroke\",axis=1)" 788 | ] 789 | }, 790 | { 791 | "cell_type": "code", 792 | "execution_count": 13, 793 | "id": "1e023a9c-dbea-4636-9b2f-6dffbe1da557", 794 | "metadata": {}, 795 | "outputs": [], 796 | "source": [ 797 | "y=df[\"stroke\"]" 798 | ] 799 | }, 800 | { 801 | "cell_type": "code", 802 | "execution_count": 14, 803 | "id": "e226c6e3-47fb-42c9-87aa-03ae8d27d8a9", 804 | "metadata": {}, 805 | "outputs": [ 806 | { 807 | "data": { 808 | "text/html": [ 809 | "
\n", 810 | "\n", 823 | "\n", 824 | " \n", 825 | " \n", 826 | " \n", 827 | " \n", 828 | " \n", 829 | " \n", 830 | " \n", 831 | " \n", 832 | " \n", 833 | " \n", 834 | " \n", 835 | " \n", 836 | " \n", 837 | " \n", 838 | " \n", 839 | " \n", 840 | " \n", 841 | " \n", 842 | " \n", 843 | " \n", 844 | " \n", 845 | " \n", 846 | " \n", 847 | " \n", 848 | " \n", 849 | " \n", 850 | " \n", 851 | " \n", 852 | " \n", 853 | " \n", 854 | " \n", 855 | " \n", 856 | " \n", 857 | " \n", 858 | " \n", 859 | " \n", 860 | " \n", 861 | " \n", 862 | " \n", 863 | " \n", 864 | " \n", 865 | " \n", 866 | " \n", 867 | " \n", 868 | " \n", 869 | " \n", 870 | " \n", 871 | " \n", 872 | " \n", 873 | " \n", 874 | " \n", 875 | " \n", 876 | " \n", 877 | " \n", 878 | " \n", 879 | " \n", 880 | " \n", 881 | " \n", 882 | " \n", 883 | " \n", 884 | " \n", 885 | " \n", 886 | " \n", 887 | " \n", 888 | " \n", 889 | " \n", 890 | " \n", 891 | " \n", 892 | " \n", 893 | " \n", 894 | " \n", 895 | " \n", 896 | " \n", 897 | " \n", 898 | " \n", 899 | " \n", 900 | " \n", 901 | " \n", 902 | " \n", 903 | " \n", 904 | " \n", 905 | " \n", 906 | " \n", 907 | " \n", 908 | " \n", 909 | " \n", 910 | " \n", 911 | " \n", 912 | " \n", 913 | " \n", 914 | " \n", 915 | " \n", 916 | " \n", 917 | " \n", 918 | " \n", 919 | " \n", 920 | " \n", 921 | " \n", 922 | " \n", 923 | " \n", 924 | " \n", 925 | " \n", 926 | " \n", 927 | " \n", 928 | " \n", 929 | " \n", 930 | " \n", 931 | " \n", 932 | " \n", 933 | " \n", 934 | " \n", 935 | " \n", 936 | " \n", 937 | " \n", 938 | " \n", 939 | " \n", 940 | " \n", 941 | " \n", 942 | " \n", 943 | " \n", 944 | " \n", 945 | " \n", 946 | " \n", 947 | " \n", 948 | " \n", 949 | " \n", 950 | " \n", 951 | " \n", 952 | " \n", 953 | " \n", 954 | " \n", 955 | " \n", 956 | " \n", 957 | " \n", 958 | " \n", 959 | " \n", 960 | " \n", 961 | " \n", 962 | " \n", 963 | " \n", 964 | " \n", 965 | " \n", 966 | " \n", 967 | " \n", 968 | " \n", 969 | " \n", 970 | " \n", 971 | " \n", 972 | " \n", 973 | " \n", 974 | " \n", 975 | " \n", 976 | " \n", 977 | " \n", 978 | " \n", 979 | " \n", 980 | " \n", 981 | " \n", 982 | " \n", 983 | " \n", 984 | "
genderagehypertensionheart_diseaseever_marriedwork_typeResidence_typeavg_glucose_levelbmismoking_status
3520Male18.000NoSelf-employedUrban74.0023.7Unknown
4494Male54.000NoPrivateRural106.5227.4formerly smoked
154Female55.000YesSelf-employedRural92.9825.6never smoked
119Female77.000YesPrivateUrban105.2231.0never smoked
38Male58.000NoPrivateRural92.6232.0Unknown
.................................
2377Female28.000YesPrivateRural97.0623.2Unknown
82Female79.000NoPrivateRural88.9222.9never smoked
1572Male12.000NochildrenUrban64.0818.2Unknown
4112Female36.000YesPrivateUrban72.1623.2never smoked
152Female80.000YesSelf-employedUrban76.5734.1never smoked
\n", 985 | "

9722 rows × 10 columns

\n", 986 | "
" 987 | ], 988 | "text/plain": [ 989 | " gender age hypertension heart_disease ever_married work_type \\\n", 990 | "3520 Male 18.0 0 0 No Self-employed \n", 991 | "4494 Male 54.0 0 0 No Private \n", 992 | "154 Female 55.0 0 0 Yes Self-employed \n", 993 | "119 Female 77.0 0 0 Yes Private \n", 994 | "38 Male 58.0 0 0 No Private \n", 995 | "... ... ... ... ... ... ... \n", 996 | "2377 Female 28.0 0 0 Yes Private \n", 997 | "82 Female 79.0 0 0 No Private \n", 998 | "1572 Male 12.0 0 0 No children \n", 999 | "4112 Female 36.0 0 0 Yes Private \n", 1000 | "152 Female 80.0 0 0 Yes Self-employed \n", 1001 | "\n", 1002 | " Residence_type avg_glucose_level bmi smoking_status \n", 1003 | "3520 Urban 74.00 23.7 Unknown \n", 1004 | "4494 Rural 106.52 27.4 formerly smoked \n", 1005 | "154 Rural 92.98 25.6 never smoked \n", 1006 | "119 Urban 105.22 31.0 never smoked \n", 1007 | "38 Rural 92.62 32.0 Unknown \n", 1008 | "... ... ... ... ... \n", 1009 | "2377 Rural 97.06 23.2 Unknown \n", 1010 | "82 Rural 88.92 22.9 never smoked \n", 1011 | "1572 Urban 64.08 18.2 Unknown \n", 1012 | "4112 Urban 72.16 23.2 never smoked \n", 1013 | "152 Urban 76.57 34.1 never smoked \n", 1014 | "\n", 1015 | "[9722 rows x 10 columns]" 1016 | ] 1017 | }, 1018 | "execution_count": 14, 1019 | "metadata": {}, 1020 | "output_type": "execute_result" 1021 | } 1022 | ], 1023 | "source": [ 1024 | "x" 1025 | ] 1026 | }, 1027 | { 1028 | "cell_type": "markdown", 1029 | "id": "c888f717-54cf-4d29-aa8c-c768fc3fcadc", 1030 | "metadata": {}, 1031 | "source": [ 1032 | "## Divide data into Training and Testing" 1033 | ] 1034 | }, 1035 | { 1036 | "cell_type": "code", 1037 | "execution_count": 15, 1038 | "id": "6581c805-a8bc-4e74-852c-5789f0a7d3f3", 1039 | "metadata": {}, 1040 | "outputs": [], 1041 | "source": [ 1042 | "from sklearn.model_selection import train_test_split" 1043 | ] 1044 | }, 1045 | { 1046 | "cell_type": "code", 1047 | "execution_count": 16, 1048 | "id": "c68b836d-d702-4fe5-bec8-f3f9db8936ed", 1049 | "metadata": {}, 1050 | "outputs": [], 1051 | "source": [ 1052 | "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25)" 1053 | ] 1054 | }, 1055 | { 1056 | "cell_type": "markdown", 1057 | "id": "8394785f-fe82-4060-b522-04d9356dd62d", 1058 | "metadata": {}, 1059 | "source": [ 1060 | "## Automate the Preprocessing" 1061 | ] 1062 | }, 1063 | { 1064 | "cell_type": "markdown", 1065 | "id": "4b22b38f-9b97-468e-a4cf-532eb3bb1656", 1066 | "metadata": {}, 1067 | "source": [ 1068 | "### Import Required Libraries" 1069 | ] 1070 | }, 1071 | { 1072 | "cell_type": "code", 1073 | "execution_count": 17, 1074 | "id": "1019584e-ee16-4841-8090-0fe2ece71605", 1075 | "metadata": {}, 1076 | "outputs": [], 1077 | "source": [ 1078 | "from sklearn.impute import SimpleImputer\n", 1079 | "from sklearn.preprocessing import MinMaxScaler\n", 1080 | "from sklearn.preprocessing import OneHotEncoder\n", 1081 | "from sklearn.pipeline import Pipeline\n", 1082 | "from sklearn.compose import ColumnTransformer" 1083 | ] 1084 | }, 1085 | { 1086 | "cell_type": "markdown", 1087 | "id": "7315ec3a-785b-4eec-849f-c062b78848c7", 1088 | "metadata": {}, 1089 | "source": [ 1090 | "### Seperate categorical and non categorical features" 1091 | ] 1092 | }, 1093 | { 1094 | "cell_type": "code", 1095 | "execution_count": 18, 1096 | "id": "47297e30-db12-4219-850e-1adb133c80f2", 1097 | "metadata": {}, 1098 | "outputs": [], 1099 | "source": [ 1100 | "cat_fea=[\"gender\",\"ever_married\",\"work_type\",\"Residence_type\",\"smoking_status\"]\n", 1101 | "num_fea=[\"age\",\"hypertension\",\"heart_disease\",\"avg_glucose_level\",\"bmi\"]" 1102 | ] 1103 | }, 1104 | { 1105 | "cell_type": "code", 1106 | "execution_count": 19, 1107 | "id": "6d5976a6-def9-4aa9-987e-53b2a9b9772c", 1108 | "metadata": {}, 1109 | "outputs": [], 1110 | "source": [ 1111 | "cat_pipe=Pipeline(\n", 1112 | " \n", 1113 | " steps=[\n", 1114 | " (\"impute\",SimpleImputer(strategy=\"most_frequent\")),\n", 1115 | " (\"encode\",OneHotEncoder())\n", 1116 | " \n", 1117 | " ]\n", 1118 | "\n", 1119 | " \n", 1120 | ")" 1121 | ] 1122 | }, 1123 | { 1124 | "cell_type": "code", 1125 | "execution_count": 20, 1126 | "id": "89259e55-a1a0-4284-a492-80d182bb72f0", 1127 | "metadata": {}, 1128 | "outputs": [], 1129 | "source": [ 1130 | "num_pipe=Pipeline(\n", 1131 | " \n", 1132 | " steps=[\n", 1133 | " (\"impute\",SimpleImputer(strategy=\"median\")),\n", 1134 | " (\"scaler\",MinMaxScaler())\n", 1135 | " \n", 1136 | " ]\n", 1137 | "\n", 1138 | " \n", 1139 | ")" 1140 | ] 1141 | }, 1142 | { 1143 | "cell_type": "code", 1144 | "execution_count": 21, 1145 | "id": "53b1b10f-49d9-4267-bdee-d9f20a0189d8", 1146 | "metadata": {}, 1147 | "outputs": [], 1148 | "source": [ 1149 | "fe=ColumnTransformer([\n", 1150 | " (\"cat_pipe\",cat_pipe,cat_fea),\n", 1151 | " (\"num_pipe\",num_pipe,num_fea)\n", 1152 | "])" 1153 | ] 1154 | }, 1155 | { 1156 | "cell_type": "markdown", 1157 | "id": "c5e1ea91-276b-4f1f-ab35-563febd4c194", 1158 | "metadata": {}, 1159 | "source": [ 1160 | "### Transform X" 1161 | ] 1162 | }, 1163 | { 1164 | "cell_type": "code", 1165 | "execution_count": 22, 1166 | "id": "0698d618-dd85-4f76-b881-562bed2a5b24", 1167 | "metadata": {}, 1168 | "outputs": [], 1169 | "source": [ 1170 | "x=pd.DataFrame(fe.fit_transform(x))" 1171 | ] 1172 | }, 1173 | { 1174 | "cell_type": "code", 1175 | "execution_count": 23, 1176 | "id": "e28a0dbf-f320-4e21-98f4-0114473c60bc", 1177 | "metadata": {}, 1178 | "outputs": [], 1179 | "source": [ 1180 | "import pickle\n", 1181 | "pickle.dump(fe,open(\"automate.pkl\",\"wb\"))" 1182 | ] 1183 | }, 1184 | { 1185 | "cell_type": "markdown", 1186 | "id": "57f671a2-eea9-463e-9fdd-87469af7d9ff", 1187 | "metadata": {}, 1188 | "source": [ 1189 | "## Divide data into Training and Testing" 1190 | ] 1191 | }, 1192 | { 1193 | "cell_type": "code", 1194 | "execution_count": 24, 1195 | "id": "c328b151-edea-4e60-aa2c-cbe7f1782fb0", 1196 | "metadata": {}, 1197 | "outputs": [], 1198 | "source": [ 1199 | "from sklearn.model_selection import train_test_split" 1200 | ] 1201 | }, 1202 | { 1203 | "cell_type": "code", 1204 | "execution_count": 25, 1205 | "id": "8e5e081a-afe0-4aa5-b86a-d40b84c9223d", 1206 | "metadata": {}, 1207 | "outputs": [], 1208 | "source": [ 1209 | "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25,random_state=42)" 1210 | ] 1211 | }, 1212 | { 1213 | "cell_type": "markdown", 1214 | "id": "6581a066-6eeb-40f3-92da-f2ffe172f55a", 1215 | "metadata": {}, 1216 | "source": [ 1217 | "## Import the Models" 1218 | ] 1219 | }, 1220 | { 1221 | "cell_type": "code", 1222 | "execution_count": 26, 1223 | "id": "2d3ac614-3c5c-4488-986c-02b374e7c4b0", 1224 | "metadata": {}, 1225 | "outputs": [], 1226 | "source": [ 1227 | "from sklearn.linear_model import LogisticRegression\n", 1228 | "from sklearn.tree import DecisionTreeClassifier\n", 1229 | "from sklearn.svm import SVC\n", 1230 | "from sklearn.ensemble import RandomForestClassifier\n", 1231 | "from sklearn.metrics import accuracy_score" 1232 | ] 1233 | }, 1234 | { 1235 | "cell_type": "code", 1236 | "execution_count": 27, 1237 | "id": "a74830be-eb46-4c5a-a8c1-ad6d3c3731ed", 1238 | "metadata": {}, 1239 | "outputs": [], 1240 | "source": [ 1241 | "models=[LogisticRegression,DecisionTreeClassifier,SVC,RandomForestClassifier]" 1242 | ] 1243 | }, 1244 | { 1245 | "cell_type": "code", 1246 | "execution_count": 28, 1247 | "id": "46a2c4d3-fb54-488c-902f-906da7ffe90b", 1248 | "metadata": {}, 1249 | "outputs": [], 1250 | "source": [ 1251 | "d={}\n", 1252 | "for i in models:\n", 1253 | " model=i()\n", 1254 | " model.fit(x_train,y_train)\n", 1255 | " y_pred=model.predict(x_test)\n", 1256 | " d[i]=round(accuracy_score(y_test,y_pred),2)" 1257 | ] 1258 | }, 1259 | { 1260 | "cell_type": "code", 1261 | "execution_count": 29, 1262 | "id": "ded8eaef-1532-4293-9b7d-ad67e020cc79", 1263 | "metadata": {}, 1264 | "outputs": [ 1265 | { 1266 | "data": { 1267 | "text/plain": [ 1268 | "{sklearn.linear_model._logistic.LogisticRegression: 0.78,\n", 1269 | " sklearn.tree._classes.DecisionTreeClassifier: 0.97,\n", 1270 | " sklearn.svm._classes.SVC: 0.81,\n", 1271 | " sklearn.ensemble._forest.RandomForestClassifier: 0.99}" 1272 | ] 1273 | }, 1274 | "execution_count": 29, 1275 | "metadata": {}, 1276 | "output_type": "execute_result" 1277 | } 1278 | ], 1279 | "source": [ 1280 | "d" 1281 | ] 1282 | }, 1283 | { 1284 | "cell_type": "code", 1285 | "execution_count": 30, 1286 | "id": "a8baf868-76ba-450c-834a-978ef3cb0f99", 1287 | "metadata": {}, 1288 | "outputs": [], 1289 | "source": [ 1290 | "model=RandomForestClassifier()" 1291 | ] 1292 | }, 1293 | { 1294 | "cell_type": "code", 1295 | "execution_count": 31, 1296 | "id": "2f05f6a8-e2c6-4cb6-a064-5d721d72ee7c", 1297 | "metadata": {}, 1298 | "outputs": [ 1299 | { 1300 | "data": { 1301 | "text/html": [ 1302 | "
RandomForestClassifier()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" 1303 | ], 1304 | "text/plain": [ 1305 | "RandomForestClassifier()" 1306 | ] 1307 | }, 1308 | "execution_count": 31, 1309 | "metadata": {}, 1310 | "output_type": "execute_result" 1311 | } 1312 | ], 1313 | "source": [ 1314 | "model.fit(x_train,y_train)" 1315 | ] 1316 | }, 1317 | { 1318 | "cell_type": "code", 1319 | "execution_count": 32, 1320 | "id": "8331fd4b-43e3-4a49-b5c9-87ac0bbe1282", 1321 | "metadata": {}, 1322 | "outputs": [], 1323 | "source": [ 1324 | "y_pred=model.predict(x_test)" 1325 | ] 1326 | }, 1327 | { 1328 | "cell_type": "code", 1329 | "execution_count": 33, 1330 | "id": "3121fc2f-64c3-4316-bf74-7df858e14cb4", 1331 | "metadata": {}, 1332 | "outputs": [ 1333 | { 1334 | "data": { 1335 | "text/plain": [ 1336 | "0.9921842863019333" 1337 | ] 1338 | }, 1339 | "execution_count": 33, 1340 | "metadata": {}, 1341 | "output_type": "execute_result" 1342 | } 1343 | ], 1344 | "source": [ 1345 | "accuracy_score(y_test,y_pred)" 1346 | ] 1347 | }, 1348 | { 1349 | "cell_type": "code", 1350 | "execution_count": 34, 1351 | "id": "a670e387-402f-4b3d-9137-7d0260cf19de", 1352 | "metadata": {}, 1353 | "outputs": [], 1354 | "source": [ 1355 | "from sklearn.metrics import confusion_matrix" 1356 | ] 1357 | }, 1358 | { 1359 | "cell_type": "code", 1360 | "execution_count": 35, 1361 | "id": "747246ae-663e-4d3e-9478-939c20458b91", 1362 | "metadata": {}, 1363 | "outputs": [ 1364 | { 1365 | "data": { 1366 | "text/plain": [ 1367 | "Text(50.722222222222214, 0.5, 'Predicted')" 1368 | ] 1369 | }, 1370 | "execution_count": 35, 1371 | "metadata": {}, 1372 | "output_type": "execute_result" 1373 | }, 1374 | { 1375 | "data": { 1376 | "image/png": "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\n", 1377 | "text/plain": [ 1378 | "
" 1379 | ] 1380 | }, 1381 | "metadata": {}, 1382 | "output_type": "display_data" 1383 | } 1384 | ], 1385 | "source": [ 1386 | "sns.heatmap(confusion_matrix(y_test,y_pred),annot=True)\n", 1387 | "plt.xlabel(\"Actual\")\n", 1388 | "plt.ylabel(\"Predicted\")" 1389 | ] 1390 | }, 1391 | { 1392 | "cell_type": "code", 1393 | "execution_count": 36, 1394 | "id": "d45e14ce-723f-418b-be2b-b107b76460d6", 1395 | "metadata": {}, 1396 | "outputs": [], 1397 | "source": [ 1398 | "import pickle\n", 1399 | "pickle.dump(model,open(\"rand.pkl\",\"wb\"))" 1400 | ] 1401 | } 1402 | ], 1403 | "metadata": { 1404 | "kernelspec": { 1405 | "display_name": "Python 3 (ipykernel)", 1406 | "language": "python", 1407 | "name": "python3" 1408 | }, 1409 | "language_info": { 1410 | "codemirror_mode": { 1411 | "name": "ipython", 1412 | "version": 3 1413 | }, 1414 | "file_extension": ".py", 1415 | "mimetype": "text/x-python", 1416 | "name": "python", 1417 | "nbconvert_exporter": "python", 1418 | "pygments_lexer": "ipython3", 1419 | "version": "3.10.8" 1420 | } 1421 | }, 1422 | "nbformat": 4, 1423 | "nbformat_minor": 5 1424 | } 1425 | -------------------------------------------------------------------------------- /ML]]Preprocessing Automation/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Multi Linear Regression: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Multi Linear Regressions/50_Startups.csv: -------------------------------------------------------------------------------- 1 | R&D Spend,Administration,Marketing Spend,State,Profit 2 | 165349.2,136897.8,471784.1,New York,192261.83 3 | 162597.7,151377.59,443898.53,California,191792.06 4 | 153441.51,101145.55,407934.54,Florida,191050.39 5 | 144372.41,118671.85,383199.62,New York,182901.99 6 | 142107.34,91391.77,366168.42,Florida,166187.94 7 | 131876.9,99814.71,362861.36,New York,156991.12 8 | 134615.46,147198.87,127716.82,California,156122.51 9 | 130298.13,145530.06,323876.68,Florida,155752.6 10 | 120542.52,148718.95,311613.29,New York,152211.77 11 | 123334.88,108679.17,304981.62,California,149759.96 12 | 101913.08,110594.11,229160.95,Florida,146121.95 13 | 100671.96,91790.61,249744.55,California,144259.4 14 | 93863.75,127320.38,249839.44,Florida,141585.52 15 | 91992.39,135495.07,252664.93,California,134307.35 16 | 119943.24,156547.42,256512.92,Florida,132602.65 17 | 114523.61,122616.84,261776.23,New York,129917.04 18 | 78013.11,121597.55,264346.06,California,126992.93 19 | 94657.16,145077.58,282574.31,New York,125370.37 20 | 91749.16,114175.79,294919.57,Florida,124266.9 21 | 86419.7,153514.11,0,New York,122776.86 22 | 76253.86,113867.3,298664.47,California,118474.03 23 | 78389.47,153773.43,299737.29,New York,111313.02 24 | 73994.56,122782.75,303319.26,Florida,110352.25 25 | 67532.53,105751.03,304768.73,Florida,108733.99 26 | 77044.01,99281.34,140574.81,New York,108552.04 27 | 64664.71,139553.16,137962.62,California,107404.34 28 | 75328.87,144135.98,134050.07,Florida,105733.54 29 | 72107.6,127864.55,353183.81,New York,105008.31 30 | 66051.52,182645.56,118148.2,Florida,103282.38 31 | 65605.48,153032.06,107138.38,New York,101004.64 32 | 61994.48,115641.28,91131.24,Florida,99937.59 33 | 61136.38,152701.92,88218.23,New York,97483.56 34 | 63408.86,129219.61,46085.25,California,97427.84 35 | 55493.95,103057.49,214634.81,Florida,96778.92 36 | 46426.07,157693.92,210797.67,California,96712.8 37 | 46014.02,85047.44,205517.64,New York,96479.51 38 | 28663.76,127056.21,201126.82,Florida,90708.19 39 | 44069.95,51283.14,197029.42,California,89949.14 40 | 20229.59,65947.93,185265.1,New York,81229.06 41 | 38558.51,82982.09,174999.3,California,81005.76 42 | 28754.33,118546.05,172795.67,California,78239.91 43 | 27892.92,84710.77,164470.71,Florida,77798.83 44 | 23640.93,96189.63,148001.11,California,71498.49 45 | 15505.73,127382.3,35534.17,New York,69758.98 46 | 22177.74,154806.14,28334.72,California,65200.33 47 | 1000.23,124153.04,1903.93,New York,64926.08 48 | 1315.46,115816.21,297114.46,Florida,49490.75 49 | 0,135426.92,0,California,42559.73 50 | 542.05,51743.15,0,New York,35673.41 51 | 0,116983.8,45173.06,California,14681.4 -------------------------------------------------------------------------------- /Multi Linear Regressions/index.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /PCA/PCA.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "80e0bd59-6f0d-4870-a6f4-042b031e1c4e", 6 | "metadata": {}, 7 | "source": [ 8 | "# Principal component analysis on Planets Dataset" 9 | ] 10 | }, 11 | { 12 | "cell_type": "markdown", 13 | "id": "ba7191be-0c96-4a18-b0db-308b8dd20a96", 14 | "metadata": {}, 15 | "source": [ 16 | "# Load Libraries" 17 | ] 18 | }, 19 | { 20 | "cell_type": "code", 21 | "execution_count": 1, 22 | "id": "ec214f65-24aa-4343-ab38-0143440b1eb6", 23 | "metadata": {}, 24 | "outputs": [], 25 | "source": [ 26 | "import pandas as pd\n", 27 | "import seaborn as sns" 28 | ] 29 | }, 30 | { 31 | "cell_type": "markdown", 32 | "id": "539785ce-c248-4383-a31c-f3fcee42c2d2", 33 | "metadata": {}, 34 | "source": [ 35 | "## Import the Dataset" 36 | ] 37 | }, 38 | { 39 | "cell_type": "code", 40 | "execution_count": 2, 41 | "id": "643abf37-8c5c-4e90-baf8-0018d844122a", 42 | "metadata": {}, 43 | "outputs": [], 44 | "source": [ 45 | "df=sns.load_dataset(\"planets\")" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 3, 51 | "id": "5c43a122-3730-4d70-96ce-500975156d8a", 52 | "metadata": {}, 53 | "outputs": [ 54 | { 55 | "data": { 56 | "text/html": [ 57 | "
\n", 58 | "\n", 71 | "\n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | " \n", 115 | " \n", 116 | " \n", 117 | " \n", 118 | " \n", 119 | " \n", 120 | " \n", 121 | " \n", 122 | " \n", 123 | " \n", 124 | " \n", 125 | " \n", 126 | " \n", 127 | " \n", 128 | " \n", 129 | " \n", 130 | " \n", 131 | " \n", 132 | " \n", 133 | " \n", 134 | " \n", 135 | " \n", 136 | " \n", 137 | " \n", 138 | " \n", 139 | " \n", 140 | " \n", 141 | " \n", 142 | " \n", 143 | " \n", 144 | " \n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | "
methodnumberorbital_periodmassdistanceyear
0Radial Velocity1269.3000007.1077.402006
1Radial Velocity1874.7740002.2156.952008
2Radial Velocity1763.0000002.6019.842011
3Radial Velocity1326.03000019.40110.622007
4Radial Velocity1516.22000010.50119.472009
.....................
1030Transit13.941507NaN172.002006
1031Transit12.615864NaN148.002007
1032Transit13.191524NaN174.002007
1033Transit14.125083NaN293.002008
1034Transit14.187757NaN260.002008
\n", 185 | "

1035 rows × 6 columns

\n", 186 | "
" 187 | ], 188 | "text/plain": [ 189 | " method number orbital_period mass distance year\n", 190 | "0 Radial Velocity 1 269.300000 7.10 77.40 2006\n", 191 | "1 Radial Velocity 1 874.774000 2.21 56.95 2008\n", 192 | "2 Radial Velocity 1 763.000000 2.60 19.84 2011\n", 193 | "3 Radial Velocity 1 326.030000 19.40 110.62 2007\n", 194 | "4 Radial Velocity 1 516.220000 10.50 119.47 2009\n", 195 | "... ... ... ... ... ... ...\n", 196 | "1030 Transit 1 3.941507 NaN 172.00 2006\n", 197 | "1031 Transit 1 2.615864 NaN 148.00 2007\n", 198 | "1032 Transit 1 3.191524 NaN 174.00 2007\n", 199 | "1033 Transit 1 4.125083 NaN 293.00 2008\n", 200 | "1034 Transit 1 4.187757 NaN 260.00 2008\n", 201 | "\n", 202 | "[1035 rows x 6 columns]" 203 | ] 204 | }, 205 | "execution_count": 3, 206 | "metadata": {}, 207 | "output_type": "execute_result" 208 | } 209 | ], 210 | "source": [ 211 | "df" 212 | ] 213 | }, 214 | { 215 | "cell_type": "code", 216 | "execution_count": 4, 217 | "id": "f86ec631-f780-4371-b3fd-56b7e6e5f8ef", 218 | "metadata": {}, 219 | "outputs": [], 220 | "source": [ 221 | "df=df.drop(\"method\",axis=1)" 222 | ] 223 | }, 224 | { 225 | "cell_type": "code", 226 | "execution_count": 5, 227 | "id": "40c055d5-4d5f-4c70-9ce5-f267957fa67c", 228 | "metadata": {}, 229 | "outputs": [], 230 | "source": [ 231 | "df=df.dropna()" 232 | ] 233 | }, 234 | { 235 | "cell_type": "code", 236 | "execution_count": 6, 237 | "id": "d06e1717-b22e-40c5-9479-e963f9300ce4", 238 | "metadata": {}, 239 | "outputs": [ 240 | { 241 | "data": { 242 | "text/html": [ 243 | "
\n", 244 | "\n", 257 | "\n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | " \n", 321 | " \n", 322 | " \n", 323 | " \n", 324 | " \n", 325 | " \n", 326 | " \n", 327 | " \n", 328 | " \n", 329 | " \n", 330 | " \n", 331 | " \n", 332 | " \n", 333 | " \n", 334 | " \n", 335 | " \n", 336 | " \n", 337 | " \n", 338 | " \n", 339 | " \n", 340 | " \n", 341 | " \n", 342 | " \n", 343 | " \n", 344 | " \n", 345 | " \n", 346 | " \n", 347 | " \n", 348 | " \n", 349 | " \n", 350 | " \n", 351 | " \n", 352 | " \n", 353 | " \n", 354 | " \n", 355 | " \n", 356 | " \n", 357 | " \n", 358 | "
numberorbital_periodmassdistanceyear
01269.300007.10077.402006
11874.774002.21056.952008
21763.000002.60019.842011
31326.0300019.400110.622007
41516.2200010.500119.472009
..................
6401111.700002.10014.902009
64115.050501.06844.462013
6421311.288001.94017.241999
64912.703391.470178.002013
7843580.000000.947135.002012
\n", 359 | "

498 rows × 5 columns

\n", 360 | "
" 361 | ], 362 | "text/plain": [ 363 | " number orbital_period mass distance year\n", 364 | "0 1 269.30000 7.100 77.40 2006\n", 365 | "1 1 874.77400 2.210 56.95 2008\n", 366 | "2 1 763.00000 2.600 19.84 2011\n", 367 | "3 1 326.03000 19.400 110.62 2007\n", 368 | "4 1 516.22000 10.500 119.47 2009\n", 369 | ".. ... ... ... ... ...\n", 370 | "640 1 111.70000 2.100 14.90 2009\n", 371 | "641 1 5.05050 1.068 44.46 2013\n", 372 | "642 1 311.28800 1.940 17.24 1999\n", 373 | "649 1 2.70339 1.470 178.00 2013\n", 374 | "784 3 580.00000 0.947 135.00 2012\n", 375 | "\n", 376 | "[498 rows x 5 columns]" 377 | ] 378 | }, 379 | "execution_count": 6, 380 | "metadata": {}, 381 | "output_type": "execute_result" 382 | } 383 | ], 384 | "source": [ 385 | "df" 386 | ] 387 | }, 388 | { 389 | "cell_type": "markdown", 390 | "id": "cfa67cde-d943-47e0-aa52-50caa7b8f06b", 391 | "metadata": {}, 392 | "source": [ 393 | "# Principal component analysis" 394 | ] 395 | }, 396 | { 397 | "cell_type": "code", 398 | "execution_count": 7, 399 | "id": "4dbf4702-781b-4c08-87db-1f2e54be4557", 400 | "metadata": {}, 401 | "outputs": [], 402 | "source": [ 403 | "from sklearn.decomposition import PCA" 404 | ] 405 | }, 406 | { 407 | "cell_type": "markdown", 408 | "id": "0fbb2031-86b6-45e5-a82a-f8827081a7f4", 409 | "metadata": {}, 410 | "source": [ 411 | "### Reduce features to 3 from 5" 412 | ] 413 | }, 414 | { 415 | "cell_type": "code", 416 | "execution_count": 8, 417 | "id": "a954dcce-d7c0-4a05-b610-a3abd3930361", 418 | "metadata": {}, 419 | "outputs": [], 420 | "source": [ 421 | "pca=PCA(n_components=3)" 422 | ] 423 | }, 424 | { 425 | "cell_type": "code", 426 | "execution_count": 9, 427 | "id": "a14890d7-28cc-4240-a039-3bad62555f10", 428 | "metadata": {}, 429 | "outputs": [], 430 | "source": [ 431 | "df1=pca.fit_transform(df)" 432 | ] 433 | }, 434 | { 435 | "cell_type": "code", 436 | "execution_count": 10, 437 | "id": "2aabdba4-b6a1-4cca-b37c-59386b4019fb", 438 | "metadata": {}, 439 | "outputs": [ 440 | { 441 | "data": { 442 | "text/plain": [ 443 | "array([[-5.66504590e+02, 2.47806690e+01, 3.44946665e+00],\n", 444 | " [ 3.89898869e+01, 4.93234005e+00, -6.16922066e-01],\n", 445 | " [-7.27419368e+01, -3.22233374e+01, -3.34307005e+00],\n", 446 | " ...,\n", 447 | " [-5.24453396e+02, -3.55444185e+01, 7.11772887e+00],\n", 448 | " [-8.33214190e+02, 1.25044259e+02, -4.72103389e+00],\n", 449 | " [-2.55870669e+02, 8.26531475e+01, -4.43273009e+00]])" 450 | ] 451 | }, 452 | "execution_count": 10, 453 | "metadata": {}, 454 | "output_type": "execute_result" 455 | } 456 | ], 457 | "source": [ 458 | "df1" 459 | ] 460 | }, 461 | { 462 | "cell_type": "code", 463 | "execution_count": 11, 464 | "id": "2fbbad04-4f9f-46a4-ab6a-cfafd17e4cf3", 465 | "metadata": {}, 466 | "outputs": [], 467 | "source": [ 468 | "df2=pd.DataFrame(df1,columns=[\"F1\",\"F2\",\"F3\"])" 469 | ] 470 | }, 471 | { 472 | "cell_type": "code", 473 | "execution_count": 12, 474 | "id": "16c77051-b85d-414b-b437-01953d46324c", 475 | "metadata": {}, 476 | "outputs": [ 477 | { 478 | "data": { 479 | "text/html": [ 480 | "
\n", 481 | "\n", 494 | "\n", 495 | " \n", 496 | " \n", 497 | " \n", 498 | " \n", 499 | " \n", 500 | " \n", 501 | " \n", 502 | " \n", 503 | " \n", 504 | " \n", 505 | " \n", 506 | " \n", 507 | " \n", 508 | " \n", 509 | " \n", 510 | " \n", 511 | " \n", 512 | " \n", 513 | " \n", 514 | " \n", 515 | " \n", 516 | " \n", 517 | " \n", 518 | " \n", 519 | " \n", 520 | " \n", 521 | " \n", 522 | " \n", 523 | " \n", 524 | " \n", 525 | " \n", 526 | " \n", 527 | " \n", 528 | " \n", 529 | " \n", 530 | " \n", 531 | " \n", 532 | " \n", 533 | " \n", 534 | " \n", 535 | " \n", 536 | " \n", 537 | " \n", 538 | " \n", 539 | " \n", 540 | " \n", 541 | " \n", 542 | " \n", 543 | " \n", 544 | " \n", 545 | " \n", 546 | " \n", 547 | " \n", 548 | " \n", 549 | " \n", 550 | " \n", 551 | " \n", 552 | " \n", 553 | " \n", 554 | " \n", 555 | " \n", 556 | " \n", 557 | " \n", 558 | " \n", 559 | " \n", 560 | " \n", 561 | " \n", 562 | " \n", 563 | " \n", 564 | " \n", 565 | " \n", 566 | " \n", 567 | " \n", 568 | " \n", 569 | " \n", 570 | " \n", 571 | "
F1F2F3
0-566.50459024.7806693.449467
138.9898874.932340-0.616922
2-72.741937-32.223337-3.343070
3-509.80579158.3372158.138673
4-319.62946167.2317952.486263
............
493-724.036578-37.923212-1.785338
494-830.718586-8.445276-5.654267
495-524.453396-35.5444187.117729
496-833.214190125.044259-4.721034
497-255.87066982.653148-4.432730
\n", 572 | "

498 rows × 3 columns

\n", 573 | "
" 574 | ], 575 | "text/plain": [ 576 | " F1 F2 F3\n", 577 | "0 -566.504590 24.780669 3.449467\n", 578 | "1 38.989887 4.932340 -0.616922\n", 579 | "2 -72.741937 -32.223337 -3.343070\n", 580 | "3 -509.805791 58.337215 8.138673\n", 581 | "4 -319.629461 67.231795 2.486263\n", 582 | ".. ... ... ...\n", 583 | "493 -724.036578 -37.923212 -1.785338\n", 584 | "494 -830.718586 -8.445276 -5.654267\n", 585 | "495 -524.453396 -35.544418 7.117729\n", 586 | "496 -833.214190 125.044259 -4.721034\n", 587 | "497 -255.870669 82.653148 -4.432730\n", 588 | "\n", 589 | "[498 rows x 3 columns]" 590 | ] 591 | }, 592 | "execution_count": 12, 593 | "metadata": {}, 594 | "output_type": "execute_result" 595 | } 596 | ], 597 | "source": [ 598 | "df2" 599 | ] 600 | }, 601 | { 602 | "cell_type": "markdown", 603 | "id": "98e7c8e1-1213-4586-b2cc-742ebfdeb984", 604 | "metadata": {}, 605 | "source": [ 606 | "# Check Eigen vectors of PCA" 607 | ] 608 | }, 609 | { 610 | "cell_type": "code", 611 | "execution_count": 13, 612 | "id": "5abda563-eece-4d07-8a1b-71a3acc8c6a7", 613 | "metadata": {}, 614 | "outputs": [ 615 | { 616 | "data": { 617 | "text/plain": [ 618 | "array([[-4.75569031e-05, 9.99999255e-01, 4.57643358e-04,\n", 619 | " -1.11337300e-03, 1.99069706e-04],\n", 620 | " [-7.35009201e-03, 1.09897469e-03, 2.20090392e-02,\n", 621 | " 9.99575157e-01, 1.76033081e-02],\n", 622 | " [-6.19319719e-02, -1.90509624e-05, 4.38895746e-01,\n", 623 | " 5.66685873e-03, -8.96383200e-01]])" 624 | ] 625 | }, 626 | "execution_count": 13, 627 | "metadata": {}, 628 | "output_type": "execute_result" 629 | } 630 | ], 631 | "source": [ 632 | "pca.components_" 633 | ] 634 | }, 635 | { 636 | "cell_type": "markdown", 637 | "id": "fca4e80e-bd55-420d-8c8c-2580ce66ea4f", 638 | "metadata": {}, 639 | "source": [ 640 | "# Check Variances of pca" 641 | ] 642 | }, 643 | { 644 | "cell_type": "code", 645 | "execution_count": 14, 646 | "id": "18a28a16-17af-4d10-bef5-d05b43df5818", 647 | "metadata": {}, 648 | "outputs": [ 649 | { 650 | "data": { 651 | "text/plain": [ 652 | "array([9.98981761e-01, 1.00454044e-03, 8.42345589e-06])" 653 | ] 654 | }, 655 | "execution_count": 14, 656 | "metadata": {}, 657 | "output_type": "execute_result" 658 | } 659 | ], 660 | "source": [ 661 | "pca.explained_variance_ratio_" 662 | ] 663 | } 664 | ], 665 | "metadata": { 666 | "kernelspec": { 667 | "display_name": "Python 3 (ipykernel)", 668 | "language": "python", 669 | "name": "python3" 670 | }, 671 | "language_info": { 672 | "codemirror_mode": { 673 | "name": "ipython", 674 | "version": 3 675 | }, 676 | "file_extension": ".py", 677 | "mimetype": "text/x-python", 678 | "name": "python", 679 | "nbconvert_exporter": "python", 680 | "pygments_lexer": "ipython3", 681 | "version": "3.10.8" 682 | } 683 | }, 684 | "nbformat": 4, 685 | "nbformat_minor": 5 686 | } 687 | -------------------------------------------------------------------------------- /PCA/index.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /SVC/SVC - Jupyter Notebook.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harshithvarmapothuri/ML-Algorithms/cc69de9f9340833d9f3cbad8f8d82dbfcc48fabb/SVC/SVC - Jupyter Notebook.pdf -------------------------------------------------------------------------------- /SVC/Social_Network_Ads.csv: -------------------------------------------------------------------------------- 1 | User ID,Gender,Age,EstimatedSalary,Purchased 2 | 15624510,Male,19,19000,0 3 | 15810944,Male,35,20000,0 4 | 15668575,Female,26,43000,0 5 | 15603246,Female,27,57000,0 6 | 15804002,Male,19,76000,0 7 | 15728773,Male,27,58000,0 8 | 15598044,Female,27,84000,0 9 | 15694829,Female,32,150000,1 10 | 15600575,Male,25,33000,0 11 | 15727311,Female,35,65000,0 12 | 15570769,Female,26,80000,0 13 | 15606274,Female,26,52000,0 14 | 15746139,Male,20,86000,0 15 | 15704987,Male,32,18000,0 16 | 15628972,Male,18,82000,0 17 | 15697686,Male,29,80000,0 18 | 15733883,Male,47,25000,1 19 | 15617482,Male,45,26000,1 20 | 15704583,Male,46,28000,1 21 | 15621083,Female,48,29000,1 22 | 15649487,Male,45,22000,1 23 | 15736760,Female,47,49000,1 24 | 15714658,Male,48,41000,1 25 | 15599081,Female,45,22000,1 26 | 15705113,Male,46,23000,1 27 | 15631159,Male,47,20000,1 28 | 15792818,Male,49,28000,1 29 | 15633531,Female,47,30000,1 30 | 15744529,Male,29,43000,0 31 | 15669656,Male,31,18000,0 32 | 15581198,Male,31,74000,0 33 | 15729054,Female,27,137000,1 34 | 15573452,Female,21,16000,0 35 | 15776733,Female,28,44000,0 36 | 15724858,Male,27,90000,0 37 | 15713144,Male,35,27000,0 38 | 15690188,Female,33,28000,0 39 | 15689425,Male,30,49000,0 40 | 15671766,Female,26,72000,0 41 | 15782806,Female,27,31000,0 42 | 15764419,Female,27,17000,0 43 | 15591915,Female,33,51000,0 44 | 15772798,Male,35,108000,0 45 | 15792008,Male,30,15000,0 46 | 15715541,Female,28,84000,0 47 | 15639277,Male,23,20000,0 48 | 15798850,Male,25,79000,0 49 | 15776348,Female,27,54000,0 50 | 15727696,Male,30,135000,1 51 | 15793813,Female,31,89000,0 52 | 15694395,Female,24,32000,0 53 | 15764195,Female,18,44000,0 54 | 15744919,Female,29,83000,0 55 | 15671655,Female,35,23000,0 56 | 15654901,Female,27,58000,0 57 | 15649136,Female,24,55000,0 58 | 15775562,Female,23,48000,0 59 | 15807481,Male,28,79000,0 60 | 15642885,Male,22,18000,0 61 | 15789109,Female,32,117000,0 62 | 15814004,Male,27,20000,0 63 | 15673619,Male,25,87000,0 64 | 15595135,Female,23,66000,0 65 | 15583681,Male,32,120000,1 66 | 15605000,Female,59,83000,0 67 | 15718071,Male,24,58000,0 68 | 15679760,Male,24,19000,0 69 | 15654574,Female,23,82000,0 70 | 15577178,Female,22,63000,0 71 | 15595324,Female,31,68000,0 72 | 15756932,Male,25,80000,0 73 | 15726358,Female,24,27000,0 74 | 15595228,Female,20,23000,0 75 | 15782530,Female,33,113000,0 76 | 15592877,Male,32,18000,0 77 | 15651983,Male,34,112000,1 78 | 15746737,Male,18,52000,0 79 | 15774179,Female,22,27000,0 80 | 15667265,Female,28,87000,0 81 | 15655123,Female,26,17000,0 82 | 15595917,Male,30,80000,0 83 | 15668385,Male,39,42000,0 84 | 15709476,Male,20,49000,0 85 | 15711218,Male,35,88000,0 86 | 15798659,Female,30,62000,0 87 | 15663939,Female,31,118000,1 88 | 15694946,Male,24,55000,0 89 | 15631912,Female,28,85000,0 90 | 15768816,Male,26,81000,0 91 | 15682268,Male,35,50000,0 92 | 15684801,Male,22,81000,0 93 | 15636428,Female,30,116000,0 94 | 15809823,Male,26,15000,0 95 | 15699284,Female,29,28000,0 96 | 15786993,Female,29,83000,0 97 | 15709441,Female,35,44000,0 98 | 15710257,Female,35,25000,0 99 | 15582492,Male,28,123000,1 100 | 15575694,Male,35,73000,0 101 | 15756820,Female,28,37000,0 102 | 15766289,Male,27,88000,0 103 | 15593014,Male,28,59000,0 104 | 15584545,Female,32,86000,0 105 | 15675949,Female,33,149000,1 106 | 15672091,Female,19,21000,0 107 | 15801658,Male,21,72000,0 108 | 15706185,Female,26,35000,0 109 | 15789863,Male,27,89000,0 110 | 15720943,Male,26,86000,0 111 | 15697997,Female,38,80000,0 112 | 15665416,Female,39,71000,0 113 | 15660200,Female,37,71000,0 114 | 15619653,Male,38,61000,0 115 | 15773447,Male,37,55000,0 116 | 15739160,Male,42,80000,0 117 | 15689237,Male,40,57000,0 118 | 15679297,Male,35,75000,0 119 | 15591433,Male,36,52000,0 120 | 15642725,Male,40,59000,0 121 | 15701962,Male,41,59000,0 122 | 15811613,Female,36,75000,0 123 | 15741049,Male,37,72000,0 124 | 15724423,Female,40,75000,0 125 | 15574305,Male,35,53000,0 126 | 15678168,Female,41,51000,0 127 | 15697020,Female,39,61000,0 128 | 15610801,Male,42,65000,0 129 | 15745232,Male,26,32000,0 130 | 15722758,Male,30,17000,0 131 | 15792102,Female,26,84000,0 132 | 15675185,Male,31,58000,0 133 | 15801247,Male,33,31000,0 134 | 15725660,Male,30,87000,0 135 | 15638963,Female,21,68000,0 136 | 15800061,Female,28,55000,0 137 | 15578006,Male,23,63000,0 138 | 15668504,Female,20,82000,0 139 | 15687491,Male,30,107000,1 140 | 15610403,Female,28,59000,0 141 | 15741094,Male,19,25000,0 142 | 15807909,Male,19,85000,0 143 | 15666141,Female,18,68000,0 144 | 15617134,Male,35,59000,0 145 | 15783029,Male,30,89000,0 146 | 15622833,Female,34,25000,0 147 | 15746422,Female,24,89000,0 148 | 15750839,Female,27,96000,1 149 | 15749130,Female,41,30000,0 150 | 15779862,Male,29,61000,0 151 | 15767871,Male,20,74000,0 152 | 15679651,Female,26,15000,0 153 | 15576219,Male,41,45000,0 154 | 15699247,Male,31,76000,0 155 | 15619087,Female,36,50000,0 156 | 15605327,Male,40,47000,0 157 | 15610140,Female,31,15000,0 158 | 15791174,Male,46,59000,0 159 | 15602373,Male,29,75000,0 160 | 15762605,Male,26,30000,0 161 | 15598840,Female,32,135000,1 162 | 15744279,Male,32,100000,1 163 | 15670619,Male,25,90000,0 164 | 15599533,Female,37,33000,0 165 | 15757837,Male,35,38000,0 166 | 15697574,Female,33,69000,0 167 | 15578738,Female,18,86000,0 168 | 15762228,Female,22,55000,0 169 | 15614827,Female,35,71000,0 170 | 15789815,Male,29,148000,1 171 | 15579781,Female,29,47000,0 172 | 15587013,Male,21,88000,0 173 | 15570932,Male,34,115000,0 174 | 15794661,Female,26,118000,0 175 | 15581654,Female,34,43000,0 176 | 15644296,Female,34,72000,0 177 | 15614420,Female,23,28000,0 178 | 15609653,Female,35,47000,0 179 | 15594577,Male,25,22000,0 180 | 15584114,Male,24,23000,0 181 | 15673367,Female,31,34000,0 182 | 15685576,Male,26,16000,0 183 | 15774727,Female,31,71000,0 184 | 15694288,Female,32,117000,1 185 | 15603319,Male,33,43000,0 186 | 15759066,Female,33,60000,0 187 | 15814816,Male,31,66000,0 188 | 15724402,Female,20,82000,0 189 | 15571059,Female,33,41000,0 190 | 15674206,Male,35,72000,0 191 | 15715160,Male,28,32000,0 192 | 15730448,Male,24,84000,0 193 | 15662067,Female,19,26000,0 194 | 15779581,Male,29,43000,0 195 | 15662901,Male,19,70000,0 196 | 15689751,Male,28,89000,0 197 | 15667742,Male,34,43000,0 198 | 15738448,Female,30,79000,0 199 | 15680243,Female,20,36000,0 200 | 15745083,Male,26,80000,0 201 | 15708228,Male,35,22000,0 202 | 15628523,Male,35,39000,0 203 | 15708196,Male,49,74000,0 204 | 15735549,Female,39,134000,1 205 | 15809347,Female,41,71000,0 206 | 15660866,Female,58,101000,1 207 | 15766609,Female,47,47000,0 208 | 15654230,Female,55,130000,1 209 | 15794566,Female,52,114000,0 210 | 15800890,Female,40,142000,1 211 | 15697424,Female,46,22000,0 212 | 15724536,Female,48,96000,1 213 | 15735878,Male,52,150000,1 214 | 15707596,Female,59,42000,0 215 | 15657163,Male,35,58000,0 216 | 15622478,Male,47,43000,0 217 | 15779529,Female,60,108000,1 218 | 15636023,Male,49,65000,0 219 | 15582066,Male,40,78000,0 220 | 15666675,Female,46,96000,0 221 | 15732987,Male,59,143000,1 222 | 15789432,Female,41,80000,0 223 | 15663161,Male,35,91000,1 224 | 15694879,Male,37,144000,1 225 | 15593715,Male,60,102000,1 226 | 15575002,Female,35,60000,0 227 | 15622171,Male,37,53000,0 228 | 15795224,Female,36,126000,1 229 | 15685346,Male,56,133000,1 230 | 15691808,Female,40,72000,0 231 | 15721007,Female,42,80000,1 232 | 15794253,Female,35,147000,1 233 | 15694453,Male,39,42000,0 234 | 15813113,Male,40,107000,1 235 | 15614187,Male,49,86000,1 236 | 15619407,Female,38,112000,0 237 | 15646227,Male,46,79000,1 238 | 15660541,Male,40,57000,0 239 | 15753874,Female,37,80000,0 240 | 15617877,Female,46,82000,0 241 | 15772073,Female,53,143000,1 242 | 15701537,Male,42,149000,1 243 | 15736228,Male,38,59000,0 244 | 15780572,Female,50,88000,1 245 | 15769596,Female,56,104000,1 246 | 15586996,Female,41,72000,0 247 | 15722061,Female,51,146000,1 248 | 15638003,Female,35,50000,0 249 | 15775590,Female,57,122000,1 250 | 15730688,Male,41,52000,0 251 | 15753102,Female,35,97000,1 252 | 15810075,Female,44,39000,0 253 | 15723373,Male,37,52000,0 254 | 15795298,Female,48,134000,1 255 | 15584320,Female,37,146000,1 256 | 15724161,Female,50,44000,0 257 | 15750056,Female,52,90000,1 258 | 15609637,Female,41,72000,0 259 | 15794493,Male,40,57000,0 260 | 15569641,Female,58,95000,1 261 | 15815236,Female,45,131000,1 262 | 15811177,Female,35,77000,0 263 | 15680587,Male,36,144000,1 264 | 15672821,Female,55,125000,1 265 | 15767681,Female,35,72000,0 266 | 15600379,Male,48,90000,1 267 | 15801336,Female,42,108000,1 268 | 15721592,Male,40,75000,0 269 | 15581282,Male,37,74000,0 270 | 15746203,Female,47,144000,1 271 | 15583137,Male,40,61000,0 272 | 15680752,Female,43,133000,0 273 | 15688172,Female,59,76000,1 274 | 15791373,Male,60,42000,1 275 | 15589449,Male,39,106000,1 276 | 15692819,Female,57,26000,1 277 | 15727467,Male,57,74000,1 278 | 15734312,Male,38,71000,0 279 | 15764604,Male,49,88000,1 280 | 15613014,Female,52,38000,1 281 | 15759684,Female,50,36000,1 282 | 15609669,Female,59,88000,1 283 | 15685536,Male,35,61000,0 284 | 15750447,Male,37,70000,1 285 | 15663249,Female,52,21000,1 286 | 15638646,Male,48,141000,0 287 | 15734161,Female,37,93000,1 288 | 15631070,Female,37,62000,0 289 | 15761950,Female,48,138000,1 290 | 15649668,Male,41,79000,0 291 | 15713912,Female,37,78000,1 292 | 15586757,Male,39,134000,1 293 | 15596522,Male,49,89000,1 294 | 15625395,Male,55,39000,1 295 | 15760570,Male,37,77000,0 296 | 15566689,Female,35,57000,0 297 | 15725794,Female,36,63000,0 298 | 15673539,Male,42,73000,1 299 | 15705298,Female,43,112000,1 300 | 15675791,Male,45,79000,0 301 | 15747043,Male,46,117000,1 302 | 15736397,Female,58,38000,1 303 | 15678201,Male,48,74000,1 304 | 15720745,Female,37,137000,1 305 | 15637593,Male,37,79000,1 306 | 15598070,Female,40,60000,0 307 | 15787550,Male,42,54000,0 308 | 15603942,Female,51,134000,0 309 | 15733973,Female,47,113000,1 310 | 15596761,Male,36,125000,1 311 | 15652400,Female,38,50000,0 312 | 15717893,Female,42,70000,0 313 | 15622585,Male,39,96000,1 314 | 15733964,Female,38,50000,0 315 | 15753861,Female,49,141000,1 316 | 15747097,Female,39,79000,0 317 | 15594762,Female,39,75000,1 318 | 15667417,Female,54,104000,1 319 | 15684861,Male,35,55000,0 320 | 15742204,Male,45,32000,1 321 | 15623502,Male,36,60000,0 322 | 15774872,Female,52,138000,1 323 | 15611191,Female,53,82000,1 324 | 15674331,Male,41,52000,0 325 | 15619465,Female,48,30000,1 326 | 15575247,Female,48,131000,1 327 | 15695679,Female,41,60000,0 328 | 15713463,Male,41,72000,0 329 | 15785170,Female,42,75000,0 330 | 15796351,Male,36,118000,1 331 | 15639576,Female,47,107000,1 332 | 15693264,Male,38,51000,0 333 | 15589715,Female,48,119000,1 334 | 15769902,Male,42,65000,0 335 | 15587177,Male,40,65000,0 336 | 15814553,Male,57,60000,1 337 | 15601550,Female,36,54000,0 338 | 15664907,Male,58,144000,1 339 | 15612465,Male,35,79000,0 340 | 15810800,Female,38,55000,0 341 | 15665760,Male,39,122000,1 342 | 15588080,Female,53,104000,1 343 | 15776844,Male,35,75000,0 344 | 15717560,Female,38,65000,0 345 | 15629739,Female,47,51000,1 346 | 15729908,Male,47,105000,1 347 | 15716781,Female,41,63000,0 348 | 15646936,Male,53,72000,1 349 | 15768151,Female,54,108000,1 350 | 15579212,Male,39,77000,0 351 | 15721835,Male,38,61000,0 352 | 15800515,Female,38,113000,1 353 | 15591279,Male,37,75000,0 354 | 15587419,Female,42,90000,1 355 | 15750335,Female,37,57000,0 356 | 15699619,Male,36,99000,1 357 | 15606472,Male,60,34000,1 358 | 15778368,Male,54,70000,1 359 | 15671387,Female,41,72000,0 360 | 15573926,Male,40,71000,1 361 | 15709183,Male,42,54000,0 362 | 15577514,Male,43,129000,1 363 | 15778830,Female,53,34000,1 364 | 15768072,Female,47,50000,1 365 | 15768293,Female,42,79000,0 366 | 15654456,Male,42,104000,1 367 | 15807525,Female,59,29000,1 368 | 15574372,Female,58,47000,1 369 | 15671249,Male,46,88000,1 370 | 15779744,Male,38,71000,0 371 | 15624755,Female,54,26000,1 372 | 15611430,Female,60,46000,1 373 | 15774744,Male,60,83000,1 374 | 15629885,Female,39,73000,0 375 | 15708791,Male,59,130000,1 376 | 15793890,Female,37,80000,0 377 | 15646091,Female,46,32000,1 378 | 15596984,Female,46,74000,0 379 | 15800215,Female,42,53000,0 380 | 15577806,Male,41,87000,1 381 | 15749381,Female,58,23000,1 382 | 15683758,Male,42,64000,0 383 | 15670615,Male,48,33000,1 384 | 15715622,Female,44,139000,1 385 | 15707634,Male,49,28000,1 386 | 15806901,Female,57,33000,1 387 | 15775335,Male,56,60000,1 388 | 15724150,Female,49,39000,1 389 | 15627220,Male,39,71000,0 390 | 15672330,Male,47,34000,1 391 | 15668521,Female,48,35000,1 392 | 15807837,Male,48,33000,1 393 | 15592570,Male,47,23000,1 394 | 15748589,Female,45,45000,1 395 | 15635893,Male,60,42000,1 396 | 15757632,Female,39,59000,0 397 | 15691863,Female,46,41000,1 398 | 15706071,Male,51,23000,1 399 | 15654296,Female,50,20000,1 400 | 15755018,Male,36,33000,0 401 | 15594041,Female,49,36000,1 -------------------------------------------------------------------------------- /SVC/index.php: -------------------------------------------------------------------------------- 1 | 2 | --------------------------------------------------------------------------------