Analysis of similarities - patterns significance - Simi_BLOSUM.ipynb 123 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Similarity sequences analysis\n",
    "--------------------------------------------------------------------------------\n",
    "\n",
    "\n",
    "Author: Belén Otero Carrasco\n",
    "\n",
    "Last updated 24 April 2024\n",
    "\n",
    "--------------------------------------------------------------------------------"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Usuario\\anaconda3\\lib\\site-packages\\pandas\\core\\computation\\expressions.py:20: UserWarning: Pandas requires version '2.7.3' or newer of 'numexpr' (version '2.7.1' currently installed).\n",
      "  from pandas.core.computation.check import NUMEXPR_INSTALLED\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import seaborn as sns\n",
    "import matplotlib.pyplot as plt\n",
    "from pandas import DataFrame\n",
    "from scipy import stats\n",
    "from sklearn.metrics import jaccard_score\n",
    "from sklearn.metrics import pairwise_distances\n",
    "from statsmodels.stats.diagnostic import lilliefors\n",
    "from scipy.stats import mannwhitneyu, levene\n",
    "import mysql.connector\n",
    "import re"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Similarity by datasets"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_treatvscan = pd.read_csv((\"AllProteins_SimilitudTreatmentvsCancers.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_treat = pd.read_csv((\"AllProteins_SimilitudLungCancerTreatment.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_full = pd.read_csv((\"AllProteins_SimilitudLungCancerFullConMismaProt.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_dise_lung = pd.read_csv((\"AllProteins_SimilitudLungCancerDisease.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_immune= pd.read_csv((\"AllProteins_%SimilitudAutoimmuneDisease.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "simi_rare = pd.read_csv((\"AllProteins_%SimilitudRareDisease.csv\"),sep= \",\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Describe data "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>302224.000000</td>\n",
       "      <td>302224.000000</td>\n",
       "      <td>302224.000000</td>\n",
       "      <td>302224.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>28.813926</td>\n",
       "      <td>50.549192</td>\n",
       "      <td>36.305730</td>\n",
       "      <td>58.704623</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>8.601007</td>\n",
       "      <td>20.289527</td>\n",
       "      <td>11.544729</td>\n",
       "      <td>4.926356</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.454953</td>\n",
       "      <td>0.454953</td>\n",
       "      <td>0.454953</td>\n",
       "      <td>42.046609</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>23.052097</td>\n",
       "      <td>34.778182</td>\n",
       "      <td>28.503788</td>\n",
       "      <td>55.509709</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>30.639809</td>\n",
       "      <td>52.897196</td>\n",
       "      <td>38.699690</td>\n",
       "      <td>59.215168</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>36.097852</td>\n",
       "      <td>68.613861</td>\n",
       "      <td>46.052632</td>\n",
       "      <td>62.269854</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>99.667406</td>\n",
       "      <td>100.000000</td>\n",
       "      <td>99.833703</td>\n",
       "      <td>99.761791</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  302224.000000  302224.000000    302224.000000      302224.000000\n",
       "mean       28.813926      50.549192        36.305730          58.704623\n",
       "std         8.601007      20.289527        11.544729           4.926356\n",
       "min         0.454953       0.454953         0.454953          42.046609\n",
       "25%        23.052097      34.778182        28.503788          55.509709\n",
       "50%        30.639809      52.897196        38.699690          59.215168\n",
       "75%        36.097852      68.613861        46.052632          62.269854\n",
       "max        99.667406     100.000000        99.833703          99.761791"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simi_treatvscan.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>2652.000000</td>\n",
       "      <td>2652.000000</td>\n",
       "      <td>2652.000000</td>\n",
       "      <td>2652.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>31.351628</td>\n",
       "      <td>55.800203</td>\n",
       "      <td>39.529462</td>\n",
       "      <td>60.427545</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>9.018264</td>\n",
       "      <td>19.702628</td>\n",
       "      <td>11.532015</td>\n",
       "      <td>5.487288</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>2.589251</td>\n",
       "      <td>2.589251</td>\n",
       "      <td>2.589251</td>\n",
       "      <td>45.132024</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>26.906158</td>\n",
       "      <td>43.053245</td>\n",
       "      <td>33.692053</td>\n",
       "      <td>57.680352</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>32.746333</td>\n",
       "      <td>58.359436</td>\n",
       "      <td>41.711608</td>\n",
       "      <td>60.456817</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>37.541391</td>\n",
       "      <td>73.142415</td>\n",
       "      <td>48.134328</td>\n",
       "      <td>63.578275</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>90.371457</td>\n",
       "      <td>97.182377</td>\n",
       "      <td>93.698770</td>\n",
       "      <td>96.598599</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  2652.000000    2652.000000      2652.000000        2652.000000\n",
       "mean     31.351628      55.800203        39.529462          60.427545\n",
       "std       9.018264      19.702628        11.532015           5.487288\n",
       "min       2.589251       2.589251         2.589251          45.132024\n",
       "25%      26.906158      43.053245        33.692053          57.680352\n",
       "50%      32.746333      58.359436        41.711608          60.456817\n",
       "75%      37.541391      73.142415        48.134328          63.578275\n",
       "max      90.371457      97.182377        93.698770          96.598599"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simi_treat.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "df_full = simi_full[simi_full['Proteina1'] != simi_full['Proteina2']]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>909162.000000</td>\n",
       "      <td>909162.000000</td>\n",
       "      <td>909162.000000</td>\n",
       "      <td>909162.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>27.710122</td>\n",
       "      <td>47.830370</td>\n",
       "      <td>34.739893</td>\n",
       "      <td>57.857934</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>9.014903</td>\n",
       "      <td>20.667222</td>\n",
       "      <td>11.953857</td>\n",
       "      <td>4.856046</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.937175</td>\n",
       "      <td>0.937175</td>\n",
       "      <td>0.937175</td>\n",
       "      <td>42.213826</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>21.208791</td>\n",
       "      <td>30.987395</td>\n",
       "      <td>26.030928</td>\n",
       "      <td>54.467975</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>28.995902</td>\n",
       "      <td>48.697183</td>\n",
       "      <td>36.462729</td>\n",
       "      <td>58.269577</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>35.392321</td>\n",
       "      <td>66.270431</td>\n",
       "      <td>44.975288</td>\n",
       "      <td>61.653818</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>99.589041</td>\n",
       "      <td>99.794521</td>\n",
       "      <td>99.589041</td>\n",
       "      <td>99.707003</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  909162.000000  909162.000000    909162.000000      909162.000000\n",
       "mean       27.710122      47.830370        34.739893          57.857934\n",
       "std         9.014903      20.667222        11.953857           4.856046\n",
       "min         0.937175       0.937175         0.937175          42.213826\n",
       "25%        21.208791      30.987395        26.030928          54.467975\n",
       "50%        28.995902      48.697183        36.462729          58.269577\n",
       "75%        35.392321      66.270431        44.975288          61.653818\n",
       "max        99.589041      99.794521        99.589041          99.707003"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_full.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>812702.000000</td>\n",
       "      <td>812702.000000</td>\n",
       "      <td>812702.000000</td>\n",
       "      <td>812702.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>27.552708</td>\n",
       "      <td>47.459438</td>\n",
       "      <td>34.520934</td>\n",
       "      <td>57.740908</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>9.069390</td>\n",
       "      <td>20.715443</td>\n",
       "      <td>12.010812</td>\n",
       "      <td>4.835662</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.937175</td>\n",
       "      <td>0.937175</td>\n",
       "      <td>0.937175</td>\n",
       "      <td>42.213826</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>20.961887</td>\n",
       "      <td>30.469925</td>\n",
       "      <td>25.684394</td>\n",
       "      <td>54.330444</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>28.792453</td>\n",
       "      <td>48.206522</td>\n",
       "      <td>36.183287</td>\n",
       "      <td>58.146147</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>35.275623</td>\n",
       "      <td>65.932642</td>\n",
       "      <td>44.801980</td>\n",
       "      <td>61.558045</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>99.589041</td>\n",
       "      <td>99.794521</td>\n",
       "      <td>99.589041</td>\n",
       "      <td>99.707003</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  812702.000000  812702.000000    812702.000000      812702.000000\n",
       "mean       27.552708      47.459438        34.520934          57.740908\n",
       "std         9.069390      20.715443        12.010812           4.835662\n",
       "min         0.937175       0.937175         0.937175          42.213826\n",
       "25%        20.961887      30.469925        25.684394          54.330444\n",
       "50%        28.792453      48.206522        36.183287          58.146147\n",
       "75%        35.275623      65.932642        44.801980          61.558045\n",
       "max        99.589041      99.794521        99.589041          99.707003"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simi_dise_lung.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>140244.000000</td>\n",
       "      <td>140244.000000</td>\n",
       "      <td>140244.000000</td>\n",
       "      <td>140244.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>29.471423</td>\n",
       "      <td>52.058989</td>\n",
       "      <td>37.194339</td>\n",
       "      <td>59.039481</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>8.173877</td>\n",
       "      <td>19.557676</td>\n",
       "      <td>10.991107</td>\n",
       "      <td>4.755932</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.318681</td>\n",
       "      <td>1.318681</td>\n",
       "      <td>1.318681</td>\n",
       "      <td>42.192479</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>24.029024</td>\n",
       "      <td>37.007624</td>\n",
       "      <td>29.826863</td>\n",
       "      <td>56.054807</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>31.414474</td>\n",
       "      <td>54.886299</td>\n",
       "      <td>39.692408</td>\n",
       "      <td>59.588976</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>36.308204</td>\n",
       "      <td>69.353070</td>\n",
       "      <td>46.320157</td>\n",
       "      <td>62.390552</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>98.202247</td>\n",
       "      <td>99.438202</td>\n",
       "      <td>98.932584</td>\n",
       "      <td>99.176556</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  140244.000000  140244.000000    140244.000000      140244.000000\n",
       "mean       29.471423      52.058989        37.194339          59.039481\n",
       "std         8.173877      19.557676        10.991107           4.755932\n",
       "min         1.318681       1.318681         1.318681          42.192479\n",
       "25%        24.029024      37.007624        29.826863          56.054807\n",
       "50%        31.414474      54.886299        39.692408          59.588976\n",
       "75%        36.308204      69.353070        46.320157          62.390552\n",
       "max        98.202247      99.438202        98.932584          99.176556"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simi_immune.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Similaridad</th>\n",
       "      <th>SimilaridadAA</th>\n",
       "      <th>similaridadAA_2</th>\n",
       "      <th>similaridadBlosum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>1352.000000</td>\n",
       "      <td>1352.000000</td>\n",
       "      <td>1352.000000</td>\n",
       "      <td>1352.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>25.918008</td>\n",
       "      <td>45.042138</td>\n",
       "      <td>32.624567</td>\n",
       "      <td>57.261413</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>11.008288</td>\n",
       "      <td>23.660605</td>\n",
       "      <td>14.598808</td>\n",
       "      <td>5.929105</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>0.201422</td>\n",
       "      <td>0.201422</td>\n",
       "      <td>0.201422</td>\n",
       "      <td>43.513301</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>19.384968</td>\n",
       "      <td>26.946498</td>\n",
       "      <td>23.630079</td>\n",
       "      <td>53.830268</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>29.109537</td>\n",
       "      <td>48.787263</td>\n",
       "      <td>36.887019</td>\n",
       "      <td>58.286203</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>34.752498</td>\n",
       "      <td>65.594774</td>\n",
       "      <td>44.378321</td>\n",
       "      <td>61.608040</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>41.616162</td>\n",
       "      <td>83.823529</td>\n",
       "      <td>53.482587</td>\n",
       "      <td>83.784318</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       Similaridad  SimilaridadAA  similaridadAA_2  similaridadBlosum\n",
       "count  1352.000000    1352.000000      1352.000000        1352.000000\n",
       "mean     25.918008      45.042138        32.624567          57.261413\n",
       "std      11.008288      23.660605        14.598808           5.929105\n",
       "min       0.201422       0.201422         0.201422          43.513301\n",
       "25%      19.384968      26.946498        23.630079          53.830268\n",
       "50%      29.109537      48.787263        36.887019          58.286203\n",
       "75%      34.752498      65.594774        44.378321          61.608040\n",
       "max      41.616162      83.823529        53.482587          83.784318"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simi_rare.describe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot similarity"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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77//ftW8OXPmsGbNGkpLS5k5cybl5eXs2LGDadOmsWLFCl555RU2btxYbX0zZsxgwIABnH766fTt25cBAwZUm3/48GG+/vWvM2/ePNavX09FRQW//vWvKS8vZ+HChWzYsIE//vGPTJkypc5juW7dOu655x42bdrEo48+yttvv83q1au57rrr+OUvf1nn8iIioLisuCwiUaO4rLgskiwlMFIsPz+fRYsW8eMf/5jly5fTsWPHavPbtGlTFaTz8/P5whe+QOvWrcnPz2fbtm21rrusrIwvfelL5Ofn85//+Z9s2LChat5VV11Fu3btjltm2bJlfO1rXwPgiiuuqJYBnjlzJueffz5Dhgxh+/btbNmyhVdffZXCwkK6du1KmzZtGD9+fLX1ff/732ft2rX85S9/4dChQzzxxBPV5r/11lv06tWLvn37AnDNNdewbNkyOnbsSNu2bbn22mtZsGAB7du3r+NIwoUXXsjpp59OTk4OZ511FiNGjKg6bnUdKxGRSorLissiEi2Ky4rLIslSAiPF+vbty+uvv05+fj5Tpkzh1ltvrTa/devWmBkALVq0ICcnp+p1RUVFreuePHkykyZNYv369dx7770cPny4at5JJ51Ur3ouWbKExYsXs3LlStatW8fAgQOrra8urVu3ZuTIkSxbtiyp8q1atWL16tWMHTuW5557rupLqVWrVhw7dgyAY8eOceTIkaplKo8N1P9YiYhUUlxOTHFZRNJFcTkxxWWR4ymBkWJ//vOfad++PV/72te46aabeP311xtt3fv376d79+4APPzww0ktc8kll/D4448D8MILL7B3796qdXXq1In27duzefNmVq1aBcDgwYNZunQp5eXlHD16lCeffDLhet2dFStWcNZZZ1Wbfs4557Bt2za2bt0KwKOPPsoXvvAFDh48yP79+/nyl7/MjBkzWLduHRCM8rxmzRoASkpKOHr0aH0OiYhInRSXFZdFJFoUlxWXRZKV0qeQmNlI4C6C0e7vd/fb4+bnAI8AFwDlwHh33xbOOw+4FzgFOAZc6O7JpzgTaOhjnE7E+vXruemmm2jRogWtW7fm17/+ddUAPCequLiYcePG0alTJ4YNG8a7775b5zLTpk1jwoQJ5OXl8bnPfY6ePXsCMHLkSO655x769evHOeecw5AhQwA4/fTTKS4u5qKLLuLUU089rs/ejBkzeOyxxzh69CjnnXceN9xwQ7X5bdu25cEHH2TcuHFUVFRw4YUX8u1vf5s9e/YwevRoDh8+jLtz5513AvDNb36T0aNHc/755zNy5Mh6Z8bTobEfNyaSTRSXFZdFJFoUlxWXRaLMYkfVbdQVm7UE3gYuA8qA14AJ7r4xpswNwHnu/m0zKwKudvfxZtYKeB2Y6O7rzKwzsM/dP65pewUFBV45UnGlTZs20a9fv0bfN2k+muIaSHUCIx03EpJaZrbG3VPzrLYIUVyWRKJ8DdQVz2uLx7UtqzgefYrL0fxMStOIwjWg+2mJV1NcTmUXkkHAVnd/x92PAE8Ao+PKjAYq23I9BXzRgg5uI4A/uvs6AHcvry15ISIiIiIiIiKZLZVdSLoD22PelwGDayrj7hVmth/oDPQF3MxeAroCT7j7HXHLYmbXA9cDVU27RERERFJBXQYlFaLW5VpEJMqiOohnK2Ao8NXw36vN7Ivxhdx9trsXuHtB165dE64oVV1kJPp07kWiSZ/N7KVzL1Jd2OX6buByoD8wwcz6xxW7Ftjr7n2AGcAvwmVbAY8B33b3PKAQaNBojvpsZi+de2luUtkC4wPgjJj3PcJpicqUhUG4I0FmuQxY5u67AczseeCzwO/rU4G2bdtSXl5O586dqx69JNnB3SkvL6dt27bprsoJO5E+2SJRo7icvTIpLos0oqou1wBmVtnlemNMmdFAcfj6KWBWTV2uG1IBxeXs1ZRxWS3YpLGkMoHxGnC2mfUiSFQUAV+JK1MCXAOsBMYCf3D3yq4jPzKz9sAR4AsEGed66dGjB2VlZezatesEdkOaq7Zt29KjR490V0NEYiguZzfFZZHjpL3LteJydlNcluYmZQmMMMBOAl4i6NM3x903mNmtQKm7lwAPAI+a2VZgD0GSA3ffa2Z3EiRBHHje3X9X3zq0bt2aXr16NdIeiYjIiVJcFhFpNJVdri8E/gr8Phy1v1qLZXefDcyG4Ckk8StRXBaR5iSVLTBw9+eB5+OmTY15fRgYV8OyjxH06xMRERERyURp73ItItKcRHUQTxERERGRTFfV5drM2hC0Ri6JK1PZ5RpiulwTtHLON7P2YWLjC1QfO0NEJOOktAWGiIiIiIgkFoUu1yIizYkSGCIiIiIiaaIu1yIiyVMXEhERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchLaQLDzEaa2VtmttXMbk4wP8fM5oXzXzWz3HB6rpn9zczWhn/3pLKeIiIiIiIiIhJtrVK1YjNrCdwNXAaUAa+ZWYm7b4wpdi2w1937mFkR8AtgfDjvT+4+IFX1ExEREREREZHmI5UtMAYBW939HXc/AjwBjI4rMxp4OHz9FPBFM7MU1klEREREJDLUYllEJHmpTGB0B7bHvC8LpyUs4+4VwH6gczivl5m9YWZLzezziTZgZtebWamZle7atatxay8iIiIikkIxLZYvB/oDE8ysf1yxqhbLwAyCFsuV/uTuA8K/bzdJpUVE0iiqg3juAHq6+0DgRuBxMzslvpC7z3b3Ancv6Nq1a5NXUkRERETkBKjFsohIPaQygfEBcEbM+x7htIRlzKwV0BEod/e/u3s5gLuvAf4E9E1hXUVEREREmppaLIuI1EMqExivAWebWS8zawMUASVxZUqAa8LXY4E/uLubWdewSR1m1hs4G3gnhXUVEREREWlO1GJZRLJOyp5C4u4VZjYJeAloCcxx9w1mditQ6u4lwAPAo2a2FdhDkOQAuAS41cyOAseAb7v7nlTVVUREREQkDerTYrksrsWyA3+HoMWymVW2WC5Nea1FRNIkZQkMAHd/Hng+btrUmNeHgXEJlnsaeDqVdRMRERERSbOqFssEiYoi4CtxZSpbLK8krsUysMfdP1aLZRHJFlEdxFNERFKgoY/rC+edZ2YrzWyDma03s7ZNWnkRkQwTjmlR2WJ5EzC/ssWymV0VFnsA6By2WL4RqIzdlwB/NLO1BIN7qsWyiGS8lLbAEBGR6Ih5XN9lBAPFvWZmJe6+MaZY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tIRlwkGM9gOdCZIZh4AdBCMs/5e774nfgJldb2alZla6a9euxt8DEREREREREYmEqD6FZBDwMdAN6AX8wMx6xxdy99nuXuDuBZXPXBYRERERERGRzJPKBMYHwBkx73uE0xKWCbuLdCQYzPMrwIvuftTd/wKsADJ+YCURERERERERSSyVCYzXgLPNrJeZtQGKgJK4MiXANeHrscAfPHgsyvvAMAAzOwkYAmxOYV1FREREREREJMJapWrF7l5hZpOAlwgeozrH3TeY2a1AqbuXAA8Aj5rZVmAPQZIDgqeXPGhmGwADHnT3P55wpV6u9Ums9XfpLUkVu+2223j88cdp2bIlLVq04N577+W+++7jxhtvpH//+AezJFZaWsojjzzCzJkzeeihhygtLWXWrNof81bT8vFyc3MpLS2lS5cuSa0r0fYHDBjAZz7zGZ544onjyo8ZM4YPP/yQVatWJV1fEckSisuKyyISLYrLissiEZayBAaAuz8PPB83bWrM68MEj0yNX+5gounN0cqVK3nuued4/fXXycnJYffu3Rw5coT777+/XuspKCigoKBhvWgqKipOaPm6bNq0iY8//pjly5dz6NAhTjrppKp5+/btY82aNXTo0IF33nmH3r2PG8pERKRJKS4rLotItCguKy6LJCuqg3hmjB07dtClSxdycnIA6NKlC926daOwsJDS0lIAOnTowE033UReXh7Dhw9n9erVFBYW0rt3b0pKgl43S5YsYdSoUcet/9lnn2Xw4MEMHDiQ4cOHs3PnTgCKi4uZOHEiF198MRMnTqy2fHl5OSNGjCAvL4/rrruOoNdOYMyYMVxwwQXk5eUxe/bsqukPPvggffv2ZdCgQaxYsaJaHebOncvEiRMZMWIEzzzzTLV5CxYs4Morr6SoqChhtllEpKkpLisui0i0KC4rLoskSwmMFBsxYgTbt2+nb9++3HDDDSxduvS4MocOHWLYsGFs2LCBk08+mSlTprBo0SIWLlzI1KlTE6z1E0OHDmXVqlW88cYbFBUVcccdd1TN27hxI4sXL2bu3LnVlpk+fTpDhw5lw4YNXH311bz//vtV8+bMmcOaNWsoLS1l5syZlJeXs2PHDqZNm8aKFSt45ZVX2LhxY7X1zZs3j6KiIiZMmHDctubOncuECRMSzhMRSQfFZcVlEYkWxWXFZZFkpbQLiQTZ4jVr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XR/4//1JQhKi5dI04w8JaYIQKhiuh4sVxRsYqyW6Ck1scbBF83NR7KijNnYYjKzpVNsZUgWiZgSKsQoYLz3aWIabggyXhJCAAcEIqQQZjSGEgsYQ+cwf+zlx53Au+1yevZ+99/u1Vlaey/fZ5/Ps5+Sz9/rke3kthx56KL29tWXAv/Od7/DWt771Ba/9zW9+k5NPPpnjjjuON77xjfz0pz8FYOnSpbzzne/kVa96Fe985zv3un7btm2cccYZHHXUUbz73e+mWEYcgLe97W2ccMIJHHXUUaxYsWLP8auuuoq5c+dy0kkncfvttw94n7t27WLnzp0ceOCBLzh30003cdxxxzFv3jz+/M//nF/96lcALFmyhCOPPJKjjz6aD33oQwC8613vYtWqVXuuffGLX7znPTjttNNYsGABhx56KEuWLOGf/umfOOmkk5g3bx4/+tGPGnwikrqdedm8LKlazMvmZalRZRYw1gCHR8SciJhMrRjR269NL3BusX0WcHMWGSIiJgB/TJvPf/Gv//qvvPSlL2XDhg18//vfZ/78+Xudf/bZZ3n961/Pxo0b+a3f+i0uvPBCbrjhBr7+9a9z0UUXDfKqNaeeeip33nkn9957L4sWLeLv/u7v9px74IEHuPHGG/nyl/eu/3z84x/n1FNPZePGjbz97W/nxz/+8Z5zV155Jffccw9r167l05/+NNu2beOJJ57gYx/7GLfffjvf+973eOCBB/Z6vWXLlnHsscdy0EEHMXfuXI499ti9zu/cuZN3vetdXHvttdx///3s3r2bz3zmM2zbto2vf/3rbNy4kfvuu48LL7xw2Pdyw4YNfPazn+XBBx9k5cqVPPzww9x99928+93v5tJLLx32ekkC87J5WVLVmJfNy1KjSitgZOZu4ALgeuBB4LrM3BgRF0fEmUWzK4DpEbEJ+CBQv9Tqa4DHMvORsmJshnnz5nHDDTfwV3/1V9x2223sv//+e52fPHnyniQ9b948TjvtNPbZZx/mzZvH5s2bh3ztLVu28KY3vYl58+bx93//92zcuHHPuTPPPJN99933BdfceuutnHPOOQC85S1v2asC/OlPf5pjjjmGU045hccee4wf/vCH3HXXXbz2ta9lxowZTJ48mYULF+71eh/4wAdYv349P/vZz3j22We55pq9600PPfQQc+bMYe7cuQCce+653Hrrrey///5MnTqV8847j6997WtMmzZtmHcSTjzxRA466CCmTJnCy172Ms4444w979tw75Uk9TEvm5clVYt52bwsNarMHhhk5urMnJuZL8vMvymOXZSZvcX2zsw8OzMPy8yT6osVmfmdzDylzPiaYe7cuaxbt4558+Zx4YUXcvHFF+91fp999qFv4ZUJEyYwZcqUPdu7d+8e8rXf9773ccEFF3D//ffzuc99jp07d+4596IXvWhEcX7nO9/hxhtv5I477mDDhg0cd9xxe73ecPbZZx/mz5/Prbfe2lD7SZMmcffdd3PWWWfxrW99a8+H0qRJk3j++ecBeP7559m1a9eea/reGxj5eyVJfczLAzMvS2oV8/LAzMvSC5VawBD85Cc/Ydq0aZxzzjl8+MMfZt26deP22jt27ODggw8G4Oqrrx6mdc1rXvMavvSlLwHw7W9/m+3bt+95rQMPPJBp06bxgx/8gDvvvBOAk08+me9+97ts27aN5557jq985SsDvm5mcvvtt/Oyl71sr+NHHHEEmzdvZtOmTQCsXLmS0047jWeeeYYdO3bwB3/wByxbtowNGzYAtVme77nnHgB6e3t57rnnRvKWSNKwzMvmZUnVYl42L0uNqvQqJOOtFUvZ3H///Xz4wx9mwoQJ7LPPPnzmM5/ZMwHPWC1dupSzzz6bAw88kNe//vU8+uijw17zsY99jHe84x0cddRR/P7v//6e5Wfnz5/PZz/7WV7+8pdzxBFHcMoptc4vBx10EEuXLuWVr3wlBxxwwAvG7C1btowvfvGLPPfccxx99NGcf/75e52fOnUqV111FWeffTa7d+/mxBNP5L3vfS9PPvkkCxYsYOfOnWQml1xyCQDvec97WLBgAccccwzz588fcWVcUnsxL5uXJVWLedm8LFVZ1M+q2856enqyb6biPg8++CAvf/nLWxSRqqAKvwPjvZ56f64x3X4i4p7MLGettgoxL2sg7fA7MJa8bU5uT+blav+bVLn8HfiN8fze7ufB2AyWlx1CIkmSJEmSKs8ChiRJkiRJqryOL2B0yhAZjZzPXqom/212L5+9VE3+2+xePnu1m46exHPq1Kls27aN6dOn71l6Sd0hM9m2bRtTp05tdSiS6piXu1eV8nLZcxNJ7cS83L2qlJelRnV0AWPmzJls2bKFrVu3tjoUtcDUqVOZOXNmq8OQVMe8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\n",
      "text/plain": [
       "<Figure size 1080x720 with 6 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "datasets = [simi_dise_lung,simi_treat ,df_full, simi_treatvscan, simi_immune, simi_rare]\n",
    "datasets = [\n",
    "    ('Disease Lung Cancer', simi_dise_lung),\n",
    "    ('Treatment Lung Cancer', simi_treat),\n",
    "    ('Full protein Lung Cancer', df_full),\n",
    "    ('Cancers', simi_treatvscan),\n",
    "    ('Autoimmune diseases', simi_immune),\n",
    "    ('Rare diseases', simi_rare)\n",
    "]\n",
    "\n",
    "\n",
    "column_names = ['Similaridad', 'SimilaridadAA', 'similaridadAA_2', 'similaridadBlosum']\n",
    "\n",
    "\n",
    "fig, axs = plt.subplots(2, 3, figsize=(15, 10))\n",
    "\n",
    "\n",
    "for i, (dataset_name, dataset) in enumerate(datasets):\n",
    "    row = i // 3\n",
    "    col = i % 3\n",
    "    ax = axs[row, col]\n",
    "    ax.set_title(f'Histogram Dataset {dataset_name}')\n",
    "    ax.set_xlabel('Value')\n",
    "    ax.set_ylabel('Frequency')\n",
    "    for column_name in column_names:\n",
    "        ax.hist(dataset[column_name], bins=20, alpha=0.5, label=column_name, density=True)\n",
    "    ax.legend()\n",
    "\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.savefig(\"Histogram_six_datasets.svg\")\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Statistics "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "df_combined_simi = pd.concat([df_full['similaridadBlosum'], simi_dise_lung['similaridadBlosum'], simi_treat['similaridadBlosum'], simi_treatvscan['similaridadBlosum'], simi_immune['similaridadBlosum'],simi_rare['similaridadBlosum']], axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "df_combined_simi.columns = [\"full\",\"disease\",\"treatment\",\"cancers\",\"immune\",\"rare\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>full</th>\n",
       "      <th>disease</th>\n",
       "      <th>treatment</th>\n",
       "      <th>cancers</th>\n",
       "      <th>immune</th>\n",
       "      <th>rare</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>58.781190</td>\n",
       "      <td>50.940499</td>\n",
       "      <td>56.581872</td>\n",
       "      <td>61.152509</td>\n",
       "      <td>54.872553</td>\n",
       "      <td>55.216095</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>50.940499</td>\n",
       "      <td>58.003839</td>\n",
       "      <td>63.669680</td>\n",
       "      <td>60.837347</td>\n",
       "      <td>50.018471</td>\n",
       "      <td>63.394919</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>58.003839</td>\n",
       "      <td>51.530710</td>\n",
       "      <td>58.187207</td>\n",
       "      <td>60.857709</td>\n",
       "      <td>54.961212</td>\n",
       "      <td>54.982647</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>51.530710</td>\n",
       "      <td>52.552783</td>\n",
       "      <td>63.003211</td>\n",
       "      <td>62.615784</td>\n",
       "      <td>50.927226</td>\n",
       "      <td>61.976471</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>52.552783</td>\n",
       "      <td>52.557582</td>\n",
       "      <td>62.040010</td>\n",
       "      <td>60.790685</td>\n",
       "      <td>54.096786</td>\n",
       "      <td>54.833469</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>807930</th>\n",
       "      <td>NaN</td>\n",
       "      <td>47.210434</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>808885</th>\n",
       "      <td>NaN</td>\n",
       "      <td>57.621815</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>809840</th>\n",
       "      <td>NaN</td>\n",
       "      <td>43.743288</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>810795</th>\n",
       "      <td>NaN</td>\n",
       "      <td>51.850366</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>811750</th>\n",
       "      <td>NaN</td>\n",
       "      <td>60.630778</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>910013 rows × 6 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "             full    disease  treatment    cancers     immune       rare\n",
       "1       58.781190  50.940499  56.581872  61.152509  54.872553  55.216095\n",
       "2       50.940499  58.003839  63.669680  60.837347  50.018471  63.394919\n",
       "3       58.003839  51.530710  58.187207  60.857709  54.961212  54.982647\n",
       "4       51.530710  52.552783  63.003211  62.615784  50.927226  61.976471\n",
       "5       52.552783  52.557582  62.040010  60.790685  54.096786  54.833469\n",
       "...           ...        ...        ...        ...        ...        ...\n",
       "807930        NaN  47.210434        NaN        NaN        NaN        NaN\n",
       "808885        NaN  57.621815        NaN        NaN        NaN        NaN\n",
       "809840        NaN  43.743288        NaN        NaN        NaN        NaN\n",
       "810795        NaN  51.850366        NaN        NaN        NaN        NaN\n",
       "811750        NaN  60.630778        NaN        NaN        NaN        NaN\n",
       "\n",
       "[910013 rows x 6 columns]"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_combined_simi"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "### check normality"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.04358466255516724, 0.0009999999999998899)"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(df_full['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.044939723699011, 0.0009999999999998899)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(simi_dise_lung['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.10401064154835604, 0.0009999999999998899)"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(simi_treat['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.056822915505338245, 0.0009999999999998899)"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(simi_treatvscan['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.05993186348710766, 0.0009999999999998899)"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(simi_immune['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.07683039139167602, 0.0009999999999998899)"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    " lilliefors(simi_rare['similaridadBlosum'], dist ='norm')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "### MannWhitney-U Test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=877172606.0, pvalue=2.5554263882299786e-130)"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(simi_treat['similaridadBlosum'], df_full['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=771370402.0, pvalue=1.2755655838889031e-141)"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(simi_treat['similaridadBlosum'], simi_dise_lung['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=326875561.0, pvalue=1.5498273283260648e-60)"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(simi_treat['similaridadBlosum'], simi_treatvscan['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=157643678.0, pvalue=1.404347195949371e-41)"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(simi_treat['similaridadBlosum'], simi_immune['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=1273511.0, pvalue=3.153836083432638e-51)"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(simi_treat['similaridadBlosum'], simi_rare['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "### full vs cancers, immune, rare "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=124457232284.0, pvalue=0.0)"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(df_full['similaridadBlosum'], simi_treatvscan['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=55301122487.0, pvalue=0.0)"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(df_full['similaridadBlosum'], simi_immune['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "MannwhitneyuResult(statistic=592073766.0, pvalue=0.009854156880560513)"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mannwhitneyu(df_full['similaridadBlosum'], simi_rare['similaridadBlosum'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### BOXPLOT"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "treat = simi_treat['similaridadBlosum']\n",
    "treat = pd.DataFrame(treat)\n",
    "disease = simi_dise_lung['similaridadBlosum']\n",
    "disease = pd.DataFrame(disease)\n",
    "full = df_full['similaridadBlosum']\n",
    "full = pd.DataFrame(full)\n",
    "treatvscan = simi_treatvscan['similaridadBlosum']\n",
    "treatvscan = pd.DataFrame(treatvscan)\n",
    "immune = simi_immune[\"similaridadBlosum\"]\n",
    "immune = pd.DataFrame(immune)\n",
    "rare = simi_rare[\"similaridadBlosum\"]\n",
    "rare = pd.DataFrame(rare)\n",
    "\n",
    "treat[\"Group\"] = \"Treatment_lung\"\n",
    "disease[\"Group\"] = \"Disease_lung\"\n",
    "full[\"Group\"] = \"Full_protein_lung\"\n",
    "treatvscan[\"Group\"] = \"Cancers\"\n",
    "immune[\"Group\"] = \"Immune_diseases\"\n",
    "rare[\"Group\"] = \"Rare_diseases\"\n",
    "\n",
    "groups = pd.concat([treat,disease,full,treatvscan,immune,rare])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>similaridadBlosum</th>\n",
       "      <th>Group</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>64.645225</td>\n",
       "      <td>Treatment_lung</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>56.581872</td>\n",
       "      <td>Treatment_lung</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>63.669680</td>\n",
       "      <td>Treatment_lung</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>58.187207</td>\n",
       "      <td>Treatment_lung</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>63.003211</td>\n",
       "      <td>Treatment_lung</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1347</th>\n",
       "      <td>64.311116</td>\n",
       "      <td>Rare_diseases</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1348</th>\n",
       "      <td>58.025651</td>\n",
       "      <td>Rare_diseases</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1349</th>\n",
       "      <td>64.231118</td>\n",
       "      <td>Rare_diseases</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1350</th>\n",
       "      <td>58.194067</td>\n",
       "      <td>Rare_diseases</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1351</th>\n",
       "      <td>59.398886</td>\n",
       "      <td>Rare_diseases</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>2168336 rows × 2 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "      similaridadBlosum           Group\n",
       "0             64.645225  Treatment_lung\n",
       "1             56.581872  Treatment_lung\n",
       "2             63.669680  Treatment_lung\n",
       "3             58.187207  Treatment_lung\n",
       "4             63.003211  Treatment_lung\n",
       "...                 ...             ...\n",
       "1347          64.311116   Rare_diseases\n",
       "1348          58.025651   Rare_diseases\n",
       "1349          64.231118   Rare_diseases\n",
       "1350          58.194067   Rare_diseases\n",
       "1351          59.398886   Rare_diseases\n",
       "\n",
       "[2168336 rows x 2 columns]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "groups"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import seaborn as sns\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Definir una paleta de colores derivados del azul\n",
    "my_colors = [\"#880d1e\", \"#a4161a\", \"#ba181b\", \"#da5552\", \"#df7373\", \"#e4b1ab\"]\n",
    "\n",
    "# Configurar la paleta de colores\n",
    "sns.set_palette(my_colors)\n",
    "\n",
    "# Crear la figura\n",
    "fig = plt.figure(figsize=(12, 6))\n",
    "\n",
    "# Graficar el boxenplot\n",
    "sns.boxenplot(x=\"similaridadBlosum\", y=\"Group\", data=groups, \n",
    "              width=0.7, order=[\"Treatment_lung\", \"Disease_lung\", \"Full_protein_lung\", \"Cancers\",\"Immune_diseases\",\"Rare_diseases\"],\n",
    "              showfliers=True)\n",
    "\n",
    "# Personalizar ejes y eliminar despine\n",
    "plt.xlabel(\"\")\n",
    "plt.ylabel(\"Value Similarity_blosum\")\n",
    "sns.despine()\n",
    "\n",
    "# Guardar el gráfico como SVG\n",
    "plt.savefig(\"plot_Test_6groups_blosum_name.svg\")\n",
    "\n",
    "# Mostrar el gráfico\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}