From ccba7188c05e12fd853449ec529baa6cef31f42e Mon Sep 17 00:00:00 2001 From: Niko Papadopoulos <nikolaos.papadopoulos@embl.de> Date: Mon, 27 Mar 2023 07:43:46 +0200 Subject: [PATCH] updated to now save morpholog tables --- analysis/revision-remote_species.ipynb | 63 +++++++++++++++++--------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/analysis/revision-remote_species.ipynb b/analysis/revision-remote_species.ipynb index c47af5e..228e48a 100644 --- a/analysis/revision-remote_species.ipynb +++ b/analysis/revision-remote_species.ipynb @@ -5,6 +5,8 @@ "id": "56159bf4-7e59-4416-a5ed-8054179cd39d", "metadata": {}, "source": [ + "# Remote orthologs (?)\n", + "\n", "How good is protein structure at finding conserved function? To find out, we tried to compare enzyme function between distantly related species, to see how often function was correctly annotated by structural similarity. In particular, we were interested in cases where orthology via sequence similarity was no longer detectable but the annotated protein function was still similar. Enzymes are an interesting test case, since they have an easily accessible function description (EC number).\n", "\n", "The detailed strategy I am going to pursue here:\n", @@ -17,6 +19,9 @@ "6. calculate how many digits of the EC overlap\n", "7. plot the results\n", "\n", + "\n", + "### 1.-2. build proteome, align against all proteomes\n", + "\n", "```\n", "# download Alphafold proteomes:\n", "\n", @@ -99,6 +104,16 @@ " return max_agreement" ] }, + { + "cell_type": "markdown", + "id": "0417dc0c-af62-4de8-9696-d733713cfa7b", + "metadata": {}, + "source": [ + "### 3.-7. keep human hits, remove homologs, subset only enzymes, calculate EC overlap, plot\n", + "\n", + "this is terrible design; all these tasks should be accomplished by different functions. At this point the revision had already dragged on long enough though, and I was going to use this function exactly twice. " + ] + }, { "cell_type": "code", "execution_count": 4, @@ -111,7 +126,7 @@ "\n", " best = query_foldseek[in_target].sort_values(\"e value\").drop_duplicates(\"query\")\n", "\n", - " informative_columns = [\"eggNOG_OGs\", \"Preferred_name\", \"GOs\", \"EC\"]\n", + " informative_columns = [\"eggNOG_OGs\", \"Preferred_name\", \"EC\"]\n", "\n", " best[\"corrected bit score\"] = best[\"bit score\"] / best[\"alignment length\"]\n", "\n", @@ -157,7 +172,7 @@ " ax.text(i-0.1, 4., str(c), fontsize='x-large')\n", " ax.set_ylim(0, 5);\n", " \n", - " return b" + " return b, best" ] }, { @@ -171,7 +186,7 @@ "yeast_annot[\"max_annot_lvl\"].unique()\n", "yeast_annot[\"id\"] = yeast_annot[\"#query\"].str.split(\"|\").str[1]\n", "\n", - "yeast_foldseek = pd.read_csv(\"/Users/npapadop/Documents/data/foldseek/yeast.m8\", sep=\"\\t\", header=None)\n", + "yeast_foldseek = pd.read_csv(\"../data/revision/yeast.m8\", sep=\"\\t\", header=None)\n", "yeast_foldseek.columns = [\"query\", \"target\", \"seq. id.\", \"alignment length\", \"no. mismatches\",\n", " \"no. gap open\", \"query start\", \"query end\", \"target start\", \"target end\",\n", " \"e value\", \"bit score\"]\n", @@ -240,12 +255,14 @@ { "cell_type": "code", "execution_count": 9, - "id": "f7f4835c-03b8-4117-b494-387c570e5c12", - "metadata": {}, + "id": "b5f31271-9aab-4045-829e-cf030216ba3c", + "metadata": { + "tags": [] + }, "outputs": [ { "data": { - "image/png": "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kZKkSy+9NERpQ89ljl+BZpNDhw6pQ4cOmjFjhiZNmqSzzz5b06dPL9Fzc3JyFB8fr+zsbMXFxYU26Cl655139M4770g6dstZenq6mjRpoq5du0qSatasqX/961+FnpOTk6O6desqLy9PP//8M9enBInVY/HOO+/o6quvlsfjUf/+/ZWQkKB3331Xmzdv1tVXX63XX3+dCzhLiWPhHBMmTNDUqVPVs2dPJSYmKjY2Vj/88IPef/99eb1eXXLJJVqwYIGioqICz1m6dKn69OmjvLw8paSkqFGjRlq5cqWWLFmiWrVqaenSpSyhXwpWj0VKSooWL16s7t27q2HDhoqJiVFWVpY++ugjHThwQF26dFF6enqxb4NgF0t/v0O5RG5JDBo0yIwaNcoYY0z37t3NyJEjT7qt1+s12dnZgY+srKxys4T++PHjjaSTfhS3VPKMGTOMJNO/f/+yD1yBleZYLF261PTr189Uq1bNeDwe07p1a/PYY4+Z/Pz8sn8BFQjHwjkWL15s+vfvb1q0aGHi4+NNZGSkqVmzprnwwgvNiy++aAoKCop93oYNG8w111xjatWqZSpXrmzq169vhg4darKyssr4FVQcVo/F+++/b6677jrTrFkzExcXZyIjI02tWrVM7969zaxZs0xeXp5Nr+TkrCyhb+uMyvz58zV58mStXLlSHo9HPXr0+NMZlQkTJmjixIlFxsvDjAoAADjGyoyKbdeoZGVlaeTIkXrppZeK3Np2MmPHjlV2dnbgIysrK8QpAQCAnWybUXnnnXd0xRVXFFpe2e/3y+VyqVKlSvL5fP9z6eXydI0KAAA4xsrfb9vuV+rdu7fWr19faGzIkCE688wzNXr0aN4fAgAA2FdUYmNj1bp160JjVapUUY0aNYqMAwCA8OSIdVQAAACK46il6srzEr8AACD4mFEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOFWl3AAAAKipjjLxeb1D35/P5JElut1sulyso+/V4PEHbV7BRVAAACBGv16u+ffvaHeN/Sk9PV3R0tN0xisWpHwAA4FjMqAAAECIej0fp6elB25/X61VycrIkKS0tTR6PJyj7DdZ+QoGiAgBAiLhcrpCdUvF4PI49XRNMnPoBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOVaqism3bNt13330aMGCAfvvtN0nSwoULtWHDhqCGAwAA4c1yUcnIyFCbNm20YsUKvf322zp06JAk6ZtvvtH48eODHhAAAIQvy0VlzJgxmjRpkhYtWqSoqKjAeM+ePfXVV18FNRwAAAhvlovK+vXrdcUVVxQZr1Wrlvbt2xeUUAAAAFIpikq1atW0a9euIuNr165VvXr1ghIKAABAKkVRue666zR69Gjt3r1bLpdLBQUF+vLLL3X33Xdr0KBBocgIAADClOWiMnnyZDVs2FD16tXToUOH1KpVK3Xr1k1dunTRfffdF4qMAAAgTEVa2dgYo19++UXPPvusHnroIa1Zs0YFBQVq3769mjVrFqqMAAAgTFkuKs2aNdOGDRvUrFkzNWnSJFS5AAAArJ36qVSpkpo1a8bdPQAAoExYvkbln//8p/7xj3/o22+/DUUeAACAAEunfiTp+uuv15EjR9SuXTtFRUUpOjq60Nf3798ftHAAACC8WS4q06dPD0EMAACAoiwXlcGDB4ciBwAAQBGWi4ok+f1+vfPOO9q4caNcLpdatWqlyy+/XBEREcHOBwAAwpjlorJ161Zdcskl+vnnn9WiRQsZY/T999+rQYMG+uCDD3TGGWeEIicAAAhDlu/6ufPOO3XGGWcoKytLa9as0dq1a7Vjxw4lJibqzjvvDEVGAAAQpizPqGRkZGj58uVKSEgIjNWoUUNTp07V+eefH9RwAAAgvFmeUXG73Tp48GCR8UOHDikqKioooQAAAKRSFJW//OUvGjp0qFasWCFjjIwxWr58uW677TZdfvnlocgIAADClOWi8uSTT+qMM85QUlKSPB6PPB6Pzj//fDVt2lRPPPFEKDICAIAwZfkalWrVqiktLU1bt27Vxo0bZYxRq1at1LRp01DkAwAAYaxU66hIUtOmTSknAAAgpCyf+rn66qs1derUIuOPPPKI/vrXv1ra18yZM9W2bVvFxcUpLi5OSUlJ+uijj6xGAgAAFZTlopKRkaFLL720yPjFF1+s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6/UGxo4ePaqJEycqKSkpqOEAAEB4s3zq54knntDFF1+s+vXrq127dnK5XMrMzJTH41F6enooMp4SY0yhUuU0J2Zzck6Px+O4t04I9rE1xgTWUHC73UF9vU78+QFAeWC5qLRu3VpbtmzRSy+9pE2bNskYo/79+2vgwIGKjo4ORcZT4vV61bdvX7tjlEhycrLdEU4qPT3dcce3PB1bJ/78AKA8KNU6KtHR0brllluCnQVAGSm0vDVv22XdCT+zYC4VDqAoy0VlypQpqlOnjm666aZC488//7z27Nmj0aNHBy1csB3uMFCqVOo17kLDGKng/3/rVYqUnHR6oCBfVda8bHeKkwr26Uav1xuY1UpLS5PH4wnavoO5r2A4cZnwiPcibExS/gVzqXAARVn+qz1r1iy98sorRcbPOuss9e/f39FFRZUiJUeuMsiCQqXhcrlCdjrF4/FwqgYAHMByUdm9e7dOP/30IuO1atXSrl27ghIKQGiduLy1/zL/KbyZRpjK/30mKphLhQMoyvKvpwYNGujLL79UYmJiofEvv/xSdevWDVowVDzcgRU8p3oXUaHnRoqicgq4mwsILcu/nm6++WaNGjVKeXl56tWrlyTp008/1T333MMS+vhT5ekuHSffgSVxFxGA8GG5qNxzzz3av3+/hg0bptzcXEnH/nU3evRojR07NugBAQBA+LJcVFwul6ZNm6b7779fGzduVHR0tJo1a8Z5Wljy724H5I5w1m2dxki5x94QXFGVnHUDliT5/C4NX1LN7hgAUKZKfWa6atWq6ty5czCzIIy4I4w8Drwr1tknU5xV7ACgLFh+rx8AAICyQlEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOVeHf4cOYE9ae8OfZF6Q8OuHnVejnCABAGanwRcXn8wU+r7L2FRuTlG8+n08xMTF2xwAAhBlO/QAAAMeq8DMqJ74H0eH210kRlW1MU8748wKzULyXEwDADhW+qLhOfGe5iMoUlVJyOe0d+gAAYYFTPwAAwLEoKgAAwLEoKgAAwLEq/DUqcI4T12Lx+W0MUk6d+DNjXRsA4YKigjJz4po2w5dUtzFJ+ce6NgDCBUUFAGx24gxZ7rERu6KUO7knfM5MY8VEUUGZOXEtln93+6/cETaGKYd8/t9noljXpmI5cbZxmo05yjtmGismigrKzIlrsbgjJA9FpdRY1wZAuKCoAIDNTpwhGy0pyr4o5U6ufp+FYqaxYqKoAIDNTpwhi5IUJWbMSu7361KYaayYWEcFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4FkUFAAA4Fm9KCABAMfIL8uyOUIQxRv6CfElSRKVIR70RY6h+XhQVINzl2x2gGEaS//8/j5Ac92bCTvyZIejezZxhdwSIogKEvYj3IuyOAAAnRVEBAOD/eTwepaen2x3jpLxer5KTkyVJaWlp8ng8NicqXjBzUVSAMMQv4+BxcjZY53K5FB0dbXeMEvF4POUm66mgqMAWPr9Lxy5EcA5jpNyCY59HVZIcdI2apOM/s+DglzGA8sLWorJkyRI98sgjWr16tXbt2qUFCxYoJSXFzkgoI8OXVLM7AgCgHLB1HZXDhw+rXbt2evrpp+2MAQAAHMrWGZV+/fqpX79+dkZAGeK6iOBxcjYACKZydY2Kz+eTz+cLPM7JybExDaziuggAgFXlagn9KVOmKD4+PvDRoEEDuyMBAIAQKlczKmPHjlVqamrgcU5ODmUljBlj5PV6g7a/E/cVzP1Kx2ZonLTUNZwrV5KT7ogzko4vjF5ZzlskONfuAAi5clVU3G633G633THgEF6vV3379g3Jvo9fqxIs6enpnEpCiUyzOwDgMOWqqJyyAge+QYcxv+eqFOmsxTuc+PMCAIQVW4vKoUOHtHXr1sDj7du3KzMzUwkJCWrYsGHQv1+VNS8HfZ+wT7DvIjLGBC7WdrvdQT1Vw106+DNOviOOu+FgN1uLyqpVq9SzZ8/A4+PXnwwePFgvvPCCTalQXoTiLqKYmJig7g8oifJyRxx3w8EOthaVHj16yJjQXjTm5H+pSOXnXytOzQUAqNgq/DUq5eVfKhL/WgEA4I/K1ToqAAAgvFBUAACAY1FUAACAY1X4a1QAhB6rBAMIFYoKgFPGKsEAQoVTPwAAwLGYUQFwylglGECoUFQAnDJWCQYQKhQVi7hoEACAskNRsYiLBgEAKDtcTAsAAByLGRWLuGgQAICyQ1GxiIsGAQAoO5z6AQAAjkVRAQAAjsWpHwCoYIK5jAJLKMBuFBUAqGBCtYwCSyjADhQVAABCpLwsEurk2S2XMcbYHaK0cnJyFB8fr+zsbMXFxdkdBwAcIZh/HEO9hIJT/zgGy9GjR0O2SGgwlfXslpW/38yoAEAFE+xlFFhCAXaiqAAAECLlZZFQJy8QSlEBACBEWCT01LGOCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCyKCgAAcCzbi8qMGTOUmJgoj8ejjh076osvvrA7EgAAcAhbi8prr72mUaNG6d5779XatWvVtWtX9evXTzt27LAzFgAAcAiXMcbY9c3PPfdcdejQQTNnzgyMtWzZUikpKZoyZcr/fH5OTo7i4+OVnZ2tuLi4UEYFAABBYuXvd2QZZSoiNzdXq1ev1pgxYwqN9+nTR8uWLSv2OT6fTz6fL/A4Oztb0rEXDAAAyofjf7dLMldiW1HZu3ev/H6/6tSpU2i8Tp062r17d7HPmTJliiZOnFhkvEGDBiHJCAAAQufgwYOKj4//021sKyrHuVyuQo+NMUXGjhs7dqxSU1MDjwsKCrR//37VqFHjpM8pD3JyctSgQQNlZWVxCstmHAvn4Fg4B8fCWSrC8TDG6ODBg6pbt+7/3Na2olKzZk1FREQUmT357bffisyyHOd2u+V2uwuNVatWLVQRy1xcXFy5/Y+uouFYOAfHwjk4Fs5S3o/H/5pJOc62u36ioqLUsWNHLVq0qND4okWL1KVLF5tSAQAAJ7H11E9qaqpuuOEGderUSUlJSZo9e7Z27Nih2267zc5YAADAIWwtKtdee6327dunBx98ULt27VLr1q314YcfqlGjRnbGKnNut1vjx48vcloLZY9j4RwcC+fgWDhLuB0PW9dRAQAA+DO2L6EPAABwMhQVAADgWBQVAADgWBQVAADgWBQVm82YMUOJiYnyeDzq2LGjvvjiC7sjhaUlS5bosssuU926deVyufTOO+/YHSlsTZkyRZ07d1ZsbKxq166tlJQUbd682e5YYWnmzJlq27ZtYGGxpKQkffTRR3bHgo79f+JyuTRq1Ci7o4QcRcVGr732mkaNGqV7771Xa9euVdeuXdWvXz/t2LHD7mhh5/Dhw2rXrp2efvppu6OEvYyMDA0fPlzLly/XokWLlJ+frz59+ujw4cN2Rws79evX19SpU7Vq1SqtWrVKvXr1UnJysjZs2GB3tLC2cuVKzZ49W23btrU7Spng9mQbnXvuuerQoYNmzpwZGGvZsqVSUlI0ZcoUG5OFN5fLpQULFiglJcXuKJC0Z88e1a5dWxkZGerWrZvdccJeQkKCHnnkEf3tb3+zO0pYOnTokDp06KAZM2Zo0qRJOvvsszV9+nS7Y4UUMyo2yc3N1erVq9WnT59C43369NGyZctsSgU4T3Z2tqRjfyBhH7/fr/nz5+vw4cNKSkqyO07YGj58uC699FJdeOGFdkcpM7a/e3K42rt3r/x+f5E3YKxTp06RN2oEwpUxRqmpqbrgggvUunVru+OEpfXr1yspKUler1dVq1bVggUL1KpVK7tjhaX58+drzZo1Wrlypd1RyhRFxWYul6vQY2NMkTEgXI0YMULffPONli5daneUsNWiRQtlZmbqwIEDeuuttzR48GBlZGRQVspYVlaWRo4cqY8//lgej8fuOGWKomKTmjVrKiIiosjsyW+//VZklgUIR3fccYfeffddLVmyRPXr17c7TtiKiopS06ZNJUmdOnXSypUr9cQTT2jWrFk2Jwsvq1ev1m+//aaOHTsGxvx+v5YsWaKnn35aPp9PERERNiYMHa5RsUlUVJQ6duyoRYsWFRpftGiRunTpYlMqwH7GGI0YMUJvv/22PvvsMyUmJtodCScwxsjn89kdI+z07t1b69evV2ZmZuCjU6dOGjhwoDIzMytsSZGYUbFVamqqbrjhBnXq1ElJSUmaPXu2duzYodtuu83uaGHn0KFD2rp1a+Dx9u3blZmZqYSEBDVs2NDGZOFn+PDheuWVV5SWlqbY2NjArGN8fLyio6NtThdexo0bp379+qlBgwY6ePCg5s+fr8WLF2vhwoV2Rws7sbGxRa7TqlKlimrUqFHhr9+iqNjo2muv1b59+/Tggw9q165dat26tT788EM1atTI7mhhZ9WqVerZs2fgcWpqqiRp8ODBeuGFF2xKFZ6O367fo0ePQuNz5szRjTfeWPaBwtivv/6qG264Qbt27VJ8fLzatm2rhQsX6qKLLrI7GsII66gAAADH4hoVAADgWBQVAADgWBQVAADgWBQVAADgWBQVAADgWBQVAADgWBQVAADgWBQVABXW4sWL5XK5dODAAbujACgligoAAHAsigqACikvL8/uCACCgKICoBBjjP75z3+qSZMmio6OVrt27fTmm28W2mbDhg269NJLFRcXp9jYWHXt2lXbtm076T4zMjJ0zjnnyO126/TTT9eYMWOUn58vSZo1a5bq1aungoKCQs+5/PLLNXjw4MDj9957Tx07dpTH41GTJk00ceLEwD4kyeVy6ZlnnlFycrKqVKmiSZMmFcmxb98+DRgwQPXr11dMTIzatGmjV199tdA2PXr00IgRIzRixAhVq1ZNNWrU0H333SfebQSwiQGAE4wbN86ceeaZZuHChWbbtm1mzpw5xu12m8WLFxtjjNm5c6dJSEgwV155pVm5cqXZvHmzef75582mTZuK3d/OnTtNTEyMGTZsmNm4caNZsGCBqVmzphk/frwxxph9+/aZqKgo88knnwSes3//fhMVFWXS09ONMcYsXLjQxMXFmRdeeMFs27bNfPzxx6Zx48ZmwoQJgedIMrVr1zb/+c9/zLZt28yPP/5oPv/8cyPJ/Pe//w1keeSRR8zatWvNtm3bzJNPPmkiIiLM8uXLA/vp3r27qVq1qhk5cqTZtGmTeemll0xMTIyZPXt2MH/MAEqIogIg4NChQ8bj8Zhly5YVGv/b3/5mBgwYYIwxZuzYsSYxMdHk5uaWaJ/jxo0zLVq0MAUFBYGxf//736Zq1arG7/cbY4y5/PLLzU033RT4+qxZs8xpp51m8vPzjTHGdO3a1Tz88MOF9jtv3jxz+umnBx5LMqNGjSq0zR+LSnEuueQSc9dddwUed+/e3bRs2bJQ3tGjR5uWLVuW6PUCCK5Ie+dzADjJd999J6/Xq4suuqjQeG5urtq3by9JyszMVNeuXVW5cuUS7XPjxo1KSkqSy+UKjJ1//vk6dOiQdu7cqYYNG2rgwIEaOnSoZsyYIbfbrZdffln9+/dXRESEJGn16tVauXKlJk+eHNiH3++X1+vVkSNHFBMTI0nq1KnTn2bx+/2aOnWqXnvtNf3888/y+Xzy+XyqUqVKoe3OO++8QnmTkpL06KOPyu/3BzIBKBsUFQABx68T+eCDD1SvXr1CX3O73ZKk6OhoS/s0xhT6o398TFJg/LLLLlNBQYE++OADde7cWV988YUee+yxQrkmTpyoK6+8ssj+PR5P4PM/Fo4/evTRR/X4449r+vTpatOmjapUqaJRo0YpNzfX0msCUHYoKgACWrVqJbfbrR07dqh79+7FbtO2bVu9+OKLysvLK9GsSqtWrfTWW28VKizLli1TbGxsoAxFR0fryiuv1Msvv6ytW7eqefPm6tixY2AfHTp00ObNm9W0adNTen1ffPGFkpOTdf3110s6VoC2bNmili1bFtpu+fLlRR43a9aM2RTABtz1AyAgNjZWd999t/7+97/rxRdf1LZt27R27Vr9+9//1osvvihJGjFihHJyctS/f3+tWrVKW7Zs0bx587R58+Zi9zls2DBlZWXpjjvu0KZNm5SWlqbx48crNTVVlSr9/ito4MCB+uCDD/T8888HisRxDzzwgObOnasJEyZow4YN2rhxo1577TXdd999ll5f06ZNtWjRIi1btkwbN27Urbfeqt27dxfZLisrS6mpqdq8ebNeffVVPfXUUxo5cqSl7wUgSGy+RgaAwxQUFJgnnnjCtGjRwlSuXNnUqlXL9O3b12RkZAS2WbdunenTp4+JiYkxsbGxpmvXrmbbtm0n3efixYtN586dTVRUlDnttNPM6NGjTV5eXqFt8vPzzemnn24kFbuvhQsXmi5dupjo6GgTFxdnzjnnnEJ34kgyCxYsKPScP15Mu2/fPpOcnGyqVq1qateube677z4zaNAgk5ycHHhO9+7dzbBhw8xtt91m4uLiTPXq1c2YMWMKXVwLoOy4jGFxAAA4rkePHjr77LM1ffp0u6MAEKd+AACAg1FUAACAY3HqBwAAOBYzKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLEoKgAAwLH+D4y6slk1gC4qAAAAAElFTkSuQmCC\n", + "image/png": "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kZKkSy+9NERpQ89ljl+BZpNDhw6pQ4cOmjFjhiZNmqSzzz5b06dPL9Fzc3JyFB8fr+zsbMXFxYU26Cl655139M4770g6dstZenq6mjRpoq5du0qSatasqX/961+FnpOTk6O6desqLy9PP//8M9enBInVY/HOO+/o6quvlsfjUf/+/ZWQkKB3331Xmzdv1tVXX63XX3+dCzhLiWPhHBMmTNDUqVPVs2dPJSYmKjY2Vj/88IPef/99eb1eXXLJJVqwYIGioqICz1m6dKn69OmjvLw8paSkqFGjRlq5cqWWLFmiWrVqaenSpSyhXwpWj0VKSooWL16s7t27q2HDhoqJiVFWVpY++ugjHThwQF26dFF6enqxb4NgF0t/v0O5RG5JDBo0yIwaNcoYY0z37t3NyJEjT7qt1+s12dnZgY+srKxys4T++PHjjaSTfhS3VPKMGTOMJNO/f/+yD1yBleZYLF261PTr189Uq1bNeDwe07p1a/PYY4+Z/Pz8sn8BFQjHwjkWL15s+vfvb1q0aGHi4+NNZGSkqVmzprnwwgvNiy++aAoKCop93oYNG8w111xjatWqZSpXrmzq169vhg4darKyssr4FVQcVo/F+++/b6677jrTrFkzExcXZyIjI02tWrVM7969zaxZs0xeXp5Nr+TkrCyhb+uMyvz58zV58mStXLlSHo9HPXr0+NMZlQkTJmjixIlFxsvDjAoAADjGyoyKbdeoZGVlaeTIkXrppZeK3Np2MmPHjlV2dnbgIysrK8QpAQCAnWybUXnnnXd0xRVXFFpe2e/3y+VyqVKlSvL5fP9z6eXydI0KAAA4xsrfb9vuV+rdu7fWr19faGzIkCE688wzNXr0aN4fAgAA2FdUYmNj1bp160JjVapUUY0aNYqMAwCA8OSIdVQAAACK46il6srzEr8AACD4mFEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOFWl3AAAAKipjjLxeb1D35/P5JElut1sulyso+/V4PEHbV7BRVAAACBGv16u+ffvaHeN/Sk9PV3R0tN0xisWpHwAA4FjMqAAAECIej0fp6elB25/X61VycrIkKS0tTR6PJyj7DdZ+QoGiAgBAiLhcrpCdUvF4PI49XRNMnPoBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOVaqism3bNt13330aMGCAfvvtN0nSwoULtWHDhqCGAwAA4c1yUcnIyFCbNm20YsUKvf322zp06JAk6ZtvvtH48eODHhAAAIQvy0VlzJgxmjRpkhYtWqSoqKjAeM+ePfXVV18FNRwAAAhvlovK+vXrdcUVVxQZr1Wrlvbt2xeUUAAAAFIpikq1atW0a9euIuNr165VvXr1ghIKAABAKkVRue666zR69Gjt3r1bLpdLBQUF+vLLL3X33Xdr0KBBocgIAADClOWiMnnyZDVs2FD16tXToUOH1KpVK3Xr1k1dunTRfffdF4qMAAAgTEVa2dgYo19++UXPPvusHnroIa1Zs0YFBQVq3769mjVrFqqMAAAgTFkuKs2aNdOGDRvUrFkzNWnSJFS5AAAArJ36qVSpkpo1a8bdPQAAoExYvkbln//8p/7xj3/o22+/DUUeAACAAEunfiTp+uuv15EjR9SuXTtFRUUpOjq60Nf3798ftHAAACC8WS4q06dPD0EMAACAoiwXlcGDB4ciBwAAQBGWi4ok+f1+vfPOO9q4caNcLpdatWqlyy+/XBEREcHOBwAAwpjlorJ161Zdcskl+vnnn9WiRQsZY/T999+rQYMG+uCDD3TGGWeEIicAAAhDlu/6ufPOO3XGGWcoKytLa9as0dq1a7Vjxw4lJibqzjvvDEVGAAAQpizPqGRkZGj58uVKSEgIjNWoUUNTp07V+eefH9RwAAAgvFmeUXG73Tp48GCR8UOHDikqKioooQAAAKRSFJW//OUvGjp0qFasWCFjjIwxWr58uW677TZdfvnlocgIAADClOWi8uSTT+qMM85QUlKSPB6PPB6Pzj//fDVt2lRPPPFEKDICAIAwZfkalWrVqiktLU1bt27Vxo0bZYxRq1at1LRp01DkAwAAYaxU66hIUtOmTSknAAAgpCyf+rn66qs1derUIuOPPPKI/vrXv1ra18yZM9W2bVvFxcUpLi5OSUlJ+uijj6xGAgAAFZTlopKRkaFLL720yPjFF1+s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6/UGxo4ePaqJEycqKSkpqOEAAEB4s3zq54knntDFF1+s+vXrq127dnK5XMrMzJTH41F6enooMp4SY0yhUuU0J2Zzck6Px+O4t04I9rE1xgTWUHC73UF9vU78+QFAeWC5qLRu3VpbtmzRSy+9pE2bNskYo/79+2vgwIGKjo4ORcZT4vV61bdvX7tjlEhycrLdEU4qPT3dcce3PB1bJ/78AKA8KNU6KtHR0brllluCnQVAGSm0vDVv22XdCT+zYC4VDqAoy0VlypQpqlOnjm666aZC488//7z27Nmj0aNHBy1csB3uMFCqVOo17kLDGKng/3/rVYqUnHR6oCBfVda8bHeKkwr26Uav1xuY1UpLS5PH4wnavoO5r2A4cZnwiPcibExS/gVzqXAARVn+qz1r1iy98sorRcbPOuss9e/f39FFRZUiJUeuMsiCQqXhcrlCdjrF4/FwqgYAHMByUdm9e7dOP/30IuO1atXSrl27ghIKQGiduLy1/zL/KbyZRpjK/30mKphLhQMoyvKvpwYNGujLL79UYmJiofEvv/xSdevWDVowVDzcgRU8p3oXUaHnRoqicgq4mwsILcu/nm6++WaNGjVKeXl56tWrlyTp008/1T333MMS+vhT5ekuHSffgSVxFxGA8GG5qNxzzz3av3+/hg0bptzcXEnH/nU3evRojR07NugBAQBA+LJcVFwul6ZNm6b7779fGzduVHR0tJo1a8Z5Wljy724H5I5w1m2dxki5x94QXFGVnHUDliT5/C4NX1LN7hgAUKZKfWa6atWq6ty5czCzIIy4I4w8Drwr1tknU5xV7ACgLFh+rx8AAICyQlEBAACORVEBAACORVEBAACORVEBAACORVEBAACORVEBAACOVeHf4cOYE9ae8OfZF6Q8OuHnVejnCABAGanwRcXn8wU+r7L2FRuTlG8+n08xMTF2xwAAhBlO/QAAAMeq8DMqJ74H0eH210kRlW1MU8748wKzULyXEwDADhW+qLhOfGe5iMoUlVJyOe0d+gAAYYFTPwAAwLEoKgAAwLEoKgAAwLEq/DUqcI4T12Lx+W0MUk6d+DNjXRsA4YKigjJz4po2w5dUtzFJ+ce6NgDCBUUFAGx24gxZ7rERu6KUO7knfM5MY8VEUUGZOXEtln93+6/cETaGKYd8/t9noljXpmI5cbZxmo05yjtmGismigrK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", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -255,8 +272,17 @@ } ], "source": [ - "same_structure_same_EC(yeast_annot, yeast_foldseek, human_annot)\n", - "plt.savefig(\"../data/yeast.svg\")" + "boxplot, table = same_structure_same_EC(yeast_annot, yeast_foldseek, human_annot)\n", + "plt.savefig(\"../data/yeast.svg\")\n", + "table.to_csv(\"../data/yeast.tsv\", sep=\"\\t\")" + ] + }, + { + "cell_type": "markdown", + "id": "3bd8cff8-b292-47b9-a4da-ba0894bed897", + "metadata": {}, + "source": [ + "now repeat for Arabidopsis:" ] }, { @@ -270,7 +296,7 @@ "arabidopsis_annot[\"max_annot_lvl\"].unique()\n", "arabidopsis_annot[\"id\"] = arabidopsis_annot[\"#query\"].str.split(\"|\").str[1]\n", "\n", - "arabidopsis_foldseek = pd.read_csv(\"/Users/npapadop/Documents/data/foldseek/arabidopsis.m8\", sep=\"\\t\", header=None)\n", + "arabidopsis_foldseek = pd.read_csv(\"../data/revision/arabidopsis.m8\", sep=\"\\t\", header=None)\n", "arabidopsis_foldseek.columns = [\"query\", \"target\", \"seq. id.\", \"alignment length\", \"no. mismatches\",\n", " \"no. gap open\", \"query start\", \"query end\", \"target start\", \"target end\",\n", " \"e value\", \"bit score\"]\n", @@ -308,7 +334,7 @@ "id": "21080634-fbcd-4e68-9dbf-e1589e3dfe41", "metadata": {}, "source": [ - "we don't want to get into quibbly territory, so we'll proceed with the IDs that are in both lists and will not wonder why they don't match to 100%." + "(same disclaimer about quibbly territory)" ] }, { @@ -333,7 +359,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAG2CAYAAABRfK0WAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA3sElEQVR4nO3deXxU1f3/8fcQyEwCCTso+76EfZMGZZNNyleCO4oKuKAFBH6ByqZFqBAo9StYhYJWrIhCVSBYlRRFWWSRLYoYEBAhWBaBkpDATLbz+4MvY9IEZOJM7k3m9Xw88jBz7p0zn8l1kjf3nHuuwxhjBAAAYEOlrC4AAADgaggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtiwNKs8995wcDkeerxtuuMHKkgAAgI2UtrqAFi1a6JNPPvE+DgkJsbAaAABgJ5YHldKlS3MWBQAAFMjyoHLw4EHVqFFDTqdTnTt31qxZs9SgQYMC9/V4PPJ4PN7HOTk5OnfunCpXriyHw1FUJQMAgF/BGKMLFy6oRo0aKlXq2rNQHMYYU0R15fPxxx/r4sWLatKkiU6dOqXnn39e+/fv1759+1S5cuV8+z/33HOaPn26BZUCAAB/S05OVq1ata65j6VB5b+lp6erYcOGevrppxUbG5tv+3+fUUlJSVGdOnWUnJysyMjIoiwVAAAUUmpqqmrXrq3z58+rfPny19zX8qGf3MqWLatWrVrp4MGDBW53Op1yOp352iMjIwkqAAAUM9czbcNW66h4PB4lJSXpxhtvtLoUAABgA5YGlQkTJmjDhg06cuSItm/frrvvvlupqakaOnSolWUBAACbsHTo5/jx47r//vt15swZVa1aVb/5zW+0bds21a1b18qyAACATVgaVJYvX27lywMAAJuz1RwVAACA3AgqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtkpbXQAAACWVMUZut9uv/Xk8HkmS0+mUw+HwS78ul8tvffkbQQUAgABxu93q16+f1WX8ooSEBIWFhVldRoEY+gEAALbFGRUAAALE5XIpISHBb/253W7FxMRIkuLj4+VyufzSr7/6CQSCCgAAAeJwOAI2pOJyuWw7XONPDP0AAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbYmVaAChh/HnH3kDdrVey9x17YR8EFQAoYbhjL0oShn4AAIBtcUYFAEoYf96xN1B365Xsfcde2AdBBQBKmEDdsTdY7tYLe2HoBwAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBpQitWbNGvXv3Vq1atRQWFqYGDRronnvu0datW/Ptm5aWpmeffVbNmzeXy+VShQoV1KtXL3300UcWVF7yLV26VA6HQw6HQ6+99lq+7ZcuXdJf/vIXderUSVWqVFG5cuXUvHlzjRkzRkePHrWg4pJj4sSJ6tWrl2rXrq2wsDBVqlRJ7dq10/Tp03X27Nl8+3MsAue9997TU089pa5duyoyMlIOh0OPPPLIVff39VgcP35cM2fO1D333KNGjRqpVKlScjgcOnToUCDfVrFU0LF48MEHC9x32LBh3t9fV/vq1atXgc9NS0vTH//4R7Vp00blypVTRESEWrRooREjRigzMzOQb/G6OYwxxuoiCis1NVXly5dXSkqKIiMjrS7nmiZMmKAXXnhBlStX1qBBg1SlShUdOnRIa9asUVZWlt544w09/PDDkqTz58+ra9eu+uabb9SiRQv16tVL6enpWrNmjX766SfNnz9fY8aMsfgdlRzJyclq1aqVsrOzlZaWpldffVWPPfaYd3tmZqa6deumbdu2qVmzZurdu7ecTqd27NihjRs3qnz58vriiy/UokULC99F8RUaGqr27dsrKipK1apVU3p6urZt26adO3eqRo0a2rp1q+rUqSOJYxFobdu21VdffaVy5cqpVq1a2r9/vwYPHqwff/xRUt578xTmWKxevVp33HGHHA6H6tevr3Pnzun8+fM6ePCgGjVqZMl7tquCjsWQIUP06quveu/jdOV4rF69WomJiQX2s3TpUn3//feaO3euJkyYkGfbDz/8oD59+ujQoUPq2rWrOnfuLGOMfvjhB61fv17Hjh1TuXLlAvL+fPr7bYqxlJQUI8mkpKRYXco1nThxwpQqVcpUr17dnDp1Ks+29evXG0mmXr163raxY8caSebOO+80mZmZ3vbTp0+bevXqmTJlypgDBw4UWf0lWU5OjunVq5dp0KCBmTBhgpFkXn311Tz7rFixwkgyvXr1MtnZ2Xm2/eEPfzCSzLBhw4qy7BLl0qVLBbZPmTLFSDJPPvmkt41jEVjr16833333ncnJyTGfffaZkWQGDx5sunbtarp27WouXrzo3bcwxyI5Odls3LjR+zu7e/fuRpI5ePBg4N9cMVPQsRgyZIi5ePFigcejIP/5z39MWFiYCQ0NNT/99FOebR6Px7Rt29aUKVPGxMfH53tuVlaWycnJ8et7ys2Xv98M/RSBo0ePKicnR507d1a1atXybOvZs6ciIiJ05swZb9vKlSslSTNmzFDp0j/f5aBq1aoaP368MjMztWjRoqIpvoR76aWXtH79ei1ZskRly5YtcJ8jR45IkgYMGKBSpfJ+ZK7cAyX38YNvrna/l3vvvVeSdPjwYW8bxyKwevbsqcaNG8vhcPzivoU5FrVq1fIOZeDafDkWV7N06VJdunRJd955p6pUqZJvW2JiosaOHauBAwfme25ISMivem1/IqgUgcaNG8vpdGr79u06ffp0nm2fffaZLly4oD59+njbTp48KUlq0KBBvr6utH3yyScBrDg4JCUladKkSRo7dqy6det21f1atmwpSfroo4+Uk5OTZ1t8fLwk5Tl+8I8PPvhAktS6dWtvG8fCPjgW9vfqq69KkkaMGJFv2zvvvCPp8vyWo0ePauHChYqLi9OyZcsKnBtmJW5KWAQqVaqkuXPnaty4cYqKitIdd9yRZ45K37599de//tW7f5UqVXTixAkdOXJEUVFRefr6/vvvJUkHDhwo0vdQ0mRlZemhhx5SnTp1NGvWrGvuO2DAAN1zzz1699131aJFC/Xp08c7Fr9161aNGTNGo0aNKqLKS64///nPSktLU0pKinbu3KnNmzerXbt2mjx5sncfjoV9cCzsbevWrdq7d6+aNGminj175tu+Y8cO7122J06cqKysLO+2smXL6qWXXrrmROoiFbABqCJQXOaoXBEfH28qVqxoJHm/GjVqZJYtW5Znv8cff9xIMvfcc4/Jysrytp85c8bUr1/f+9xfGp/E1T377LOmVKlSZsuWLd62adOmFThHxZjLc1mmT59u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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAG2CAYAAABRfK0WAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA3sElEQVR4nO3deXxU1f3/8fcQyEwCCTso+76EfZMGZZNNyleCO4oKuKAFBH6ByqZFqBAo9StYhYJWrIhCVSBYlRRFWWSRLYoYEBAhWBaBkpDATLbz+4MvY9IEZOJM7k3m9Xw88jBz7p0zn8l1kjf3nHuuwxhjBAAAYEOlrC4AAADgaggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtiwNKs8995wcDkeerxtuuMHKkgAAgI2UtrqAFi1a6JNPPvE+DgkJsbAaAABgJ5YHldKlS3MWBQAAFMjyoHLw4EHVqFFDTqdTnTt31qxZs9SgQYMC9/V4PPJ4PN7HOTk5OnfunCpXriyHw1FUJQMAgF/BGKMLFy6oRo0aKlXq2rNQHMYYU0R15fPxxx/r4sWLatKkiU6dOqXnn39e+/fv1759+1S5cuV8+z/33HOaPn26BZUCAAB/S05OVq1ata65j6VB5b+lp6erYcOGevrppxUbG5tv+3+fUUlJSVGdOnWUnJysyMjIoiwVAAAUUmpqqmrXrq3z58+rfPny19zX8qGf3MqWLatWrVrp4MGDBW53Op1yOp352iMjIwkqAAAUM9czbcNW66h4PB4lJSXpxhtvtLoUAABgA5YGlQkTJmjDhg06cuSItm/frrvvvlupqakaOnSolWUBAACbsHTo5/jx47r//vt15swZVa1aVb/5zW+0bds21a1b18qyAACATVgaVJYvX27lywMAAJuz1RwVAACA3AgqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtggqAADAtkpbXQAAACWVMUZut9uv/Xk8HkmS0+mUw+HwS78ul8tvffkbQQUAgABxu93q16+f1WX8ooSEBIWFhVldRoEY+gEAALbFGRUAAALE5XIpISHBb/253W7FxMRIkuLj4+VyufzSr7/6CQSCCgAAAeJwOAI2pOJyuWw7XONPDP0AAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbIqgAAADbYmVaAChh/HnH3kDdrVey9x17YR8EFQAoYbhjL0oShn4AAIBtcUYFAEoYf96xN1B365Xsfcde2AdBBQBKmEDdsTdY7tYLe2HoBwAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBBQAA2BZBpQitWbNGvXv3Vq1atRQWFqYGDRronnvu0datW/Ptm5aWpmeffVbNmzeXy+VShQoV1KtXL3300UcWVF7yLV26VA6HQw6HQ6+99lq+7ZcuXdJf/vIXderUSVWqVFG5cuXUvHlzjRkzRkePHrWg4pJj4sSJ6tWrl2rXrq2wsDBVqlRJ7dq10/Tp03X27Nl8+3MsAue9997TU089pa5duyoyMlIOh0OPPPLIVff39VgcP35cM2fO1D333KNGjRqpVKlScjgcOnToUCDfVrFU0LF48MEHC9x32LBh3t9fV/vq1atXgc9NS0vTH//4R7Vp00blypVTRESEWrRooREjRigzMzOQb/G6OYwxxuoiCis1NVXly5dXSkqKIiMjrS7nmiZMmKAXXnhBlStX1qBBg1SlShUdOnRIa9asUVZWlt544w09/PDDkqTz58+ra9eu+uabb9SiRQv16tVL6enpWrNmjX766SfNnz9fY8aMsfgdlRzJyclq1aqVsrOzlZaWpldffVWPPfaYd3tmZqa6deumbdu2qVmzZurdu7ecTqd27NihjRs3qnz58vriiy/UokULC99F8RUaGqr27dsrKipK1apVU3p6urZt26adO3eqRo0a2rp1q+rUqSOJYxFobdu21VdffaVy5cqpVq1a2r9/vwYPHqwff/xRUt578xTmWKxevVp33HGHHA6H6tevr3Pnzun8+fM6ePCgGjVqZMl7tquCjsWQIUP06quveu/jdOV4rF69WomJiQX2s3TpUn3//feaO3euJkyYkGfbDz/8oD59+ujQoUPq2rWrOnfuLGOMfvjhB61fv17Hjh1TuXLlAvL+fPr7bYqxlJQUI8mkpKRYXco1nThxwpQqVcpUr17dnDp1Ks+29evXG0mmXr163raxY8caSebOO+80mZmZ3vbTp0+bevXqmTJlypgDBw4UWf0lWU5OjunVq5dp0KCBmTBhgpFkXn311Tz7rFixwkgyvXr1MtnZ2Xm2/eEPfzCSzLBhw4qy7BLl0qVLBbZPmTLFSDJPPvmkt41jEVjr16833333ncnJyTGfffaZkWQGDx5sunbtarp27WouXrzo3bcwxyI5Odls3LjR+zu7e/fuRpI5ePBg4N9cMVPQsRgyZIi5ePFigcejIP/5z39MWFiYCQ0NNT/99FOebR6Px7Rt29aUKVPGxMfH53tuVlaWycnJ8et7ys2Xv98M/RSBo0ePKicnR507d1a1atXybOvZs6ciIiJ05swZb9vKlSslSTNmzFDp0j/f5aBq1aoaP368MjMztWjRoqIpvoR76aWXtH79ei1ZskRly5YtcJ8jR45IkgYMGKBSpfJ+ZK7cAyX38YNvrna/l3vvvVeSdPjwYW8bxyKwevbsqcaNG8vhcPzivoU5FrVq1fIOZeDafDkWV7N06VJdunRJd955p6pUqZJvW2JiosaOHauBAwfme25ISMivem1/IqgUgcaNG8vpdGr79u06ffp0nm2fffaZLly4oD59+njbTp48KUlq0KBBvr6utH3yyScBrDg4JCUladKkSRo7dqy6det21f1atmwpSfroo4+Uk5OTZ1t8fLwk5Tl+8I8PPvhAktS6dWtvG8fCPjgW9vfqq69KkkaMGJFv2zvvvCPp8vyWo0ePauHChYqLi9OyZcsKnBtmJW5KWAQqVaqkuXPnaty4cYqKitIdd9yRZ45K37599de//tW7f5UqVXTixAkdOXJEUVFRefr6/vvvJUkHDhwo0vdQ0mRlZemhhx5SnTp1NGvWrGvuO2DAAN1zzz1699131aJFC/Xp08c7Fr9161aNGTNGo0aNKqLKS64///nPSktLU0pKinbu3KnNmzerXbt2mjx5sncfjoV9cCzsbevWrdq7d6+aNGminj175tu+Y8cO7122J06cqKysLO+2smXL6qWXXrrmROoiFbABqCJQXOaoXBEfH28qVqxoJHm/GjVqZJYtW5Znv8cff9xIMvfcc4/Jysrytp85c8bUr1/f+9xfGp/E1T377LOmVKlSZsuWLd62adOmFThHxZjLc1mmT59u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", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -343,17 +369,10 @@ } ], "source": [ - "same_structure_same_EC(arabidopsis_annot, arabidopsis_foldseek, human_annot, lowest_relevant_OG=\"Eukaryota\")\n", - "plt.savefig(\"../data/arabidopsis.svg\")" + "boxplot, table = same_structure_same_EC(arabidopsis_annot, arabidopsis_foldseek, human_annot, lowest_relevant_OG=\"Eukaryota\")\n", + "plt.savefig(\"../data/arabidopsis.svg\")\n", + "table.to_csv(\"../data/arabidopsis.tsv\", sep=\"\\t\")" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "48d39bb0-ed6d-4aea-9235-374a37592fbb", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -372,7 +391,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.8" + "version": "3.10.9" } }, "nbformat": 4, -- GitLab