{ "cells": [ { "cell_type": "markdown", "id": "a9ec28bc", "metadata": {}, "source": [ "## Data Summary Notebook" ] }, { "cell_type": "markdown", "id": "6e37aa07", "metadata": {}, "source": [ "In this notebook we seek to extract data from the Platynereis Larva Dumerilii Connectome and categorize the data in a way that will allow us to easily plot meaningful statistics of the dataset" ] }, { "cell_type": "code", "execution_count": 1, "id": "851698a7", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import seaborn as sns\n", "import logging\n", "import collections\n", "from itertools import chain, combinations\n", "from pkg.platy import _get_folder, load_connectome_normal_lcc_annotations" ] }, { "cell_type": "markdown", "id": "c6ae7c18", "metadata": {}, "source": [ "We retrieve the table of annotations, where the indices are the skids and the columns are the types of annotations associated with these skids" ] }, { "cell_type": "code", "execution_count": 2, "id": "9b267929", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
skidssideclasssegmenttypegroup
02015233lshead100.0N/A
11548290lN/A1N/AN/A
21318919lshead88.015.0
32015241lshead100.0N/A
41646603rN/A3N/AN/A
.....................
26961302513lsheadN/AN/A
26971630186lN/A2N/AN/A
26981441779rN/AheadN/AN/A
26991671147rm1165.0N/A
27001048573li3N/AN/A
\n", "

2701 rows × 6 columns

\n", "
" ], "text/plain": [ " skids side class segment type group\n", "0 2015233 l s head 100.0 N/A\n", "1 1548290 l N/A 1 N/A N/A\n", "2 1318919 l s head 88.0 15.0\n", "3 2015241 l s head 100.0 N/A\n", "4 1646603 r N/A 3 N/A N/A\n", "... ... ... ... ... ... ...\n", "2696 1302513 l s head N/A N/A\n", "2697 1630186 l N/A 2 N/A N/A\n", "2698 1441779 r N/A head N/A N/A\n", "2699 1671147 r m 1 165.0 N/A\n", "2700 1048573 l i 3 N/A N/A\n", "\n", "[2701 rows x 6 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "folder = _get_folder()\n", "annotations = load_connectome_normal_lcc_annotations()\n", "annotations = annotations.fillna(\"N/A\")\n", "annotations" ] }, { "cell_type": "markdown", "id": "376fce4a", "metadata": {}, "source": [ "With this table of annotations, we can make barplots to plot the number of neurons for certain categories" ] }, { "cell_type": "code", "execution_count": 3, "id": "ec64fcf5", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkQAAAHHCAYAAABeLEexAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABANklEQVR4nO3deVwW5f7/8feNyKYCboDkxnHLBbUwFXeTxKXS0sykJOOolehRy9Rzck3Dfc0yOyeXjp5s05OWC0fLlVAx0tTMStNUQFNAMVlkvn/4Y37eYgkG3OC8no/H/Xgw13XNzGd0jHcz18xtMwzDEAAAgIU5OboAAAAARyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQUsMTFRvXv3VsWKFWWz2TRv3jxHl1TiPfvss6pZs6ajy/jTatasqYcfftjRZRQKm82miRMnFsq2v/zyS9lsNn300UeFsn1AIhDBQr755hvZbDYdPXpUkjR37txC+SU7YsQIbdq0SWPHjtV7772nLl26/O5Ym80mm82m2bNn5+pbtmyZbDab9u3bV+A1omSy2WyKjIy8ZR/nC/DnODu6AKCoxMbGqkKFCqpbt64kKSYmRi1btizw/WzdulU9evTQyy+/nOd1Zs6cqRdeeEEeHh4FXs/d4J133lF2drajy8Af+O233+TszK8UlFxcIYJl7NmzR82bN5fNZpN0PRC1aNGiwPeTlJQkb2/vPI9v2rSpEhMTtXjx4gKv5U4YhqHffvvN0WXYKV26tFxdXR1dBv6Am5tbiQ9EaWlpji4BDkQgwl3t4sWLOn/+vM6fP6/Y2Fg1atRI58+f16FDh/TLL7+oTp06On/+vC5fvnzbbf3000964oknVKFCBXl4eKhly5b67LPPzP6cWxaGYWjRokXm7bDbad26tR588EHNmDEjT0Hku+++U+/evVWhQgW5ubmpWbNm+vTTT+3GTJw48Zb7zqnxxIkTZlvOvJZNmzapWbNmcnd319tvv52nY5b+//yODz74QFOnTlXVqlXl5uamTp066YcffrAbe+zYMfXq1Ut+fn5yc3NT1apV1bdvX6WkpPzhMd88h+jEiROy2WyaNWuWlixZolq1asnV1VUPPPCA9u7de9s/Q0lKTk7W8OHDVa1aNbm6uqp27dqaPn16ritRs2bNUqtWrVSxYkW5u7srKCjod+ey/Pvf/1bz5s3l4eGh8uXLq127dtq8eXOucTt37lTz5s3l5uamv/zlL1qxYkWear4TeTlfcs6LnTt3atiwYapcubK8vb01ePBgZWRkKDk5Wf3791f58uVVvnx5vfLKKzIMw24bN88hunTpkoYPH66aNWvK1dVVPj4+euihh7R//35zTIcOHdSoUSPFxcWpVatWcnd3V0BAwO/+z0F2dvZtzzHp+tXgLl26yMvLSx4eHmrfvr127dplNybn38jhw4fVr18/lS9fXm3atDH7//3vfysoKEju7u6qUKGC+vbtq1OnTuX5zx0lT8mO88Bt3Hffffr555/N5W+//VazZs0ylx955BFJUnh4uJYtW/a720lMTFSrVq105coVDRs2TBUrVtTy5cv16KOP6qOPPtJjjz2mdu3a6b333tMzzzyjhx56SP37989znRMnTlS7du301ltvaeTIkb877tChQ2rdurXuuecejRkzRmXKlNEHH3ygnj176uOPP9Zjjz2W533e6OjRo3rqqac0ePBgDRw4UPXq1cvTMd9o2rRpcnJy0ssvv6yUlBTNmDFDYWFhio2NlSRlZGQoNDRU6enpGjp0qPz8/HT69GmtX79eycnJ8vLyynfdq1at0qVLlzR48GDZbDbNmDFDjz/+uH766SeVLl36d9e7cuWK2rdvr9OnT2vw4MGqXr26du/erbFjx+rs2bN2E+Hnz5+vRx99VGFhYcrIyND777+vJ554QuvXr1f37t3NcZMmTdLEiRPVqlUrTZ48WS4uLoqNjdXWrVvVuXNnc9wPP/yg3r17KyIiQuHh4Xr33Xf17LPPKigoSA0bNrztMV+9elXnz5/P1X6rUJ/f8yXn72XSpEn66quvtGTJEnl7e2v37t2qXr26Xn/9dX3++eeaOXOmGjVq9Ifn+PPPP6+PPvpIkZGRatCggX799Vft3LlTR44c0f3332+Ou3jxorp166Y+ffroqaee0gcffKAXXnhBLi4ueu655+y2ebtzTLp+y7pr164KCgrShAkT5OTkpKVLl+rBBx/Ujh071Lx5c7ttPvHEE6pTp45ef/11M+RNnTpV48aNU58+ffTXv/5V586d08KFC9WuXTt9/fXX+boCjBLEAO5iO3fuNKKjo41x48YZzs7OxoYNG4zo6Gija9euRrNmzYzo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LV++PM91FPQxp6amKisry64tMDBQTk5OdreiikKfPn0UExOjTZs25epLTk426yxVqpRsNpvdlbUTJ05o7dq1duv07NlTTk5Omjx5cq45KgV95Sev8nO+FLRr167lepWCj4+P/P39c/1dZ2Vlma95kK4/jfj222+rcuXKefq3eaOgoCDVqlVLs2bNuuVTd3k55scff1ylSpXSpEmTcv3dGYahX3/9NV81oeTgChHuert27VKrVq0kXX9k+euvv9bf//73fG1jzJgx+s9//qOuXbtq2LBhqlChgpYvX67jx4/r448/zjWR9s9o37692rdvb3e7L8eiRYvUpk0bBQYGauDAgfrLX/6ixMRExcTE6JdfftE333wjSercubOqV6+uiIgIjRo1SqVKldK7776rypUr6+TJkw455q1btyoyMlJPPPGE6tatq6ysLL333nsqVaqUevXqla9t/VmjRo3Sp59+qocffth85D0tLU0HDx7URx99pBMnTqhSpUrq3r275syZoy5duqhfv35KSkrSokWLVLt2bR04cMDcXu3atfWPf/xDr732mtq2bavHH39crq6u2rt3r/z9/RUVFVWkx5cjr+dLQbt06ZKqVq2q3r17q0mTJipbtqz+97//ae/evbm+psbf31/Tp0/XiRMnVLduXa1evVrx8fFasmRJvufrODk56Z///Ke6du2qhg0basCAAbrnnnt0+vRpffHFF/L09NS6dev+cBu1atXSlClTNHbsWJ04cUI9e/ZUuXLldPz4ca1Zs0aDBg3K11voUXIQiHBXu3btmmJjY/Xss89KkuLi4pSRkaHg4OB8bcfX11e7d+/W6NGjtXDhQl29elWNGzfWunXr7N5FU1AmTpyojh075mpv0KCB9u3bp0mTJmnZsmX69ddf5ePjo/vuu8/uFlvp0qW1Zs0avfjiixo3bpz8/Pw0fPhwlS9fXgMGDMhTDQV9zE2aNFFoaKjWrVun06dPy8PDQ02aNNGGDRsK5StU/oiHh4e2bdum119/XR9++KFWrFghT09P1a1bV5MmTTInEz/44IP617/+pWnTpmn48OEKCAgwf3nfGIgkafLkyQoICNDChQv1j3/8Qx4eHmrcuLGeeeaZIj22G+X1fCloHh4eevHFF7V582bzqa3atWvrzTff1AsvvGA3tnz58lq+fLmGDh2qd955R76+vnrj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2dlZ27Zt04IFC+Ts7CxfX19lZGQoOTnZbr3ExET5+flJkvz8/HI9dZaznDPmZq6urvL09LT7AACAu1exDkSdOnXSwYMHFR8fb36aNWumsLAw8+fSpUtry5Yt5jpHjx7VyZMnFRwcLEkKDg7WwYMHlZSUZI6Jjo6Wp6enGjRoUOTHBAAAip9iPYeoXLlyatSokV1bmTJlVLFiRbM9IiJCI0eOVIUKFeTp6amhQ4cqODhYLVu2lCR17txZDRo00DPPPKMZM2YoISFBr776qoYMGSJXV9ciPyYAAFD8FOtAlBdz586Vk5OTevXqpfT0dIWGhurNN980+0uVKqX169frhRdeUHBwsMqUKaPw8HBNnjzZgVUDAIDipMQFoi+//NJu2c3NTYsWLdKiRYt+d50aNWro888/L+TKAABASVWs5xABAAAUBQIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwvGIdiKKiovTAAw+oXLly8vHxUc+ePXX06FG7MVevXtWQIUNUsWJFlS1bVr169VJiYqLdmJMnT6p79+7y8PCQj4+PRo0apaysrKI8FAAAUIwV60C0bds2DRkyRF999ZWio6OVmZmpzp07Ky0tzRwzYsQIrVu3Th9++KG2bdumM2fO6PHHHzf7r127pu7duysjI0O7d+/W8uXLtWzZMo0fP94RhwQAAIohm2EYhqOLyKtz587Jx8dH27ZtU7t27ZSSkqLKlStr1apV6t27tyTpu+++U/369RUTE6OWLVtqw4YNevjhh3XmzBn5+vpKkhYvXqzRo0fr3LlzcnFxue1+U1NT5eXlpZSUFHl6et5x/UGjVtzxurj7xM3s7+gSdHJyoKNLQDFTffxBR5cAFJj8/P4u1leIbpaSkiJJqlChgiQpLi5OmZmZCgkJMcfce++9ql69umJi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0sz+mjVrasqUKerfv7/Kli2rGjVq6NNPP9W5c+fUo0cPlS1bVo0bN9a+ffvMdW6+ZfbNN9+oY8eOKleunDw9PRUUFGSOzxm7du1a1alTR25ubgoNDdWpU6dy1free++pZs2a8vLyUt++fXXp0iWzLzs7W1FRUQoICJC7u7uaNGmijz76yOzPuTK2YcMGBQUFydXVVTt37rztegAKD4EIQLHw448/qkuXLurVq5cOHDig1atXa+fOnYqMjLQbN3fuXLVu3Vpff/21unfvrmeeeUb9+/fX008/rf3796tWrVrq37+/fu9rGsPCwlS1alXt3btXcXFxGjNmjEqXLm32X7lyRVOnTtWKFSu0a9cuJScnq2/fvrlqXbt2rdavX6/169dr27ZtmjZtmtkfFRWlFStWaPHixTp06JBGjBihp59+Wtu2bbPbzpgxYzRt2jQdOXJEjRs3zvN6AAqBAQCFLDw83ChVqpRRpkwZu4+bm5shybh48aIRERFhDBo0yG69HTt2GE5OTsZvv/1mGIZh1KhRw3j66afN/rNnzxqSjHHjxpltMTExhiTj7NmzhmEYxtKlSw0vLy+zv1y5csayZctuWefSpUsNScZXX31lth05csSQZMTGxhqGYRgTJkwwPDw8jNTUVHPMqFGjjBYtWhiGYRhXr141PDw8jN27d9ttOyIiwnjqqacMwzCML774wpBkrF271uzPy3oACg83rAEUiY4dO+qtt96ya4uNjdXTTz8t6fqtrAMHDmjlypVmv2EYys7O1vHjx1W/fn1JUuPGjc1+X19fSVJgYGCutqSkJPn5+eWqY+TIkfrrX/+q9957TyEhIXriiSdUq1Yts9/Z2VkPPPCAuXzvvffK29tbR44cUfPmzSVdv3VXrlw5c0yVKlWUlJQkSfrhhx905coVPfTQQ3b7zcjI0H333WfX1qxZM/Pn/KwHoOARiAAUiTJlyqh27dp2bb/88ov58+XLlzV48GANGzYs17rVq1c3f77x9pbNZvvdtuzs7FvWMXHiRPXr10+fffaZNmzYoAkTJuj999/XY489ludjuXF/OfvM2d/ly5clSZ999pnuueceu3Gurq52y2XKlDF/zs96AAoegQhAsXD//ffr8OHDuUJTYahbt67q1q2rESNG6KmnntLSpUvNQJSVlaV9+/aZV4OOHj2q5ORk8wrV7TRo0ECurq46efKk2rdvn+ea7nQ9AAWDQASgWBg9erRatmypyMhI/fWvf1WZMmV0+PBhRUdH64033iiQffz2228aNWqUevfurYCAAP3yyy/au3evevXqZY4pXbq0hg4dqgULFsjZ2VmRkZFq2bKlGZBup1y5cnr55Zc1YsQIZWdnq02bNkpJSdGuXbvk6emp8PDwAl0PQMEgEAEoFho3bqxt27bpH//4h9q2bSvDMFSrVi09+eSTBbaPUqVK6ddff1X//v2VmJioSpUq6fHHH9ekSZPMMR4eHho9erT69eun06dPq23btvrXv/6Vr/289tprqly5sqKiovTTTz/J29tb999/v/7+978XynoA/jybYfzOs6kAYDHLli3T8OHDC/XN2QCKJ95DBAAALI9ABAAALI9bZgAAwPK4QgQAACyPQAQAACyPQAQAACyPQAQAACyPQAQAACyPQAQAACyPQAQAACyPQAQAACyPQAQAACzv/wD8oiMsIr4FFAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of neurons in each hemisphere\n", "hemis = {}\n", "hemi_list = list(annotations[\"side\"])\n", "for i in range(len(hemi_list)):\n", " if hemi_list[i] == \"N/A\":\n", " continue\n", " \n", " if hemi_list[i] not in hemis:\n", " hemis[hemi_list[i]] = 1\n", " \n", " else:\n", " hemis[hemi_list[i]] += 1\n", "sns.barplot(x=list(hemis.keys()), y=list(hemis.values())) \n", "plt.title(\"# of Neurons in each Hemisphere\")\n", "plt.xlabel(\"Hemisphere\")\n", "plt.ylabel(\"# of Neurons\")\n", "plt.savefig(folder / \"neuron_count_hems\")\n", " " ] }, { "cell_type": "code", "execution_count": 4, "id": "1c22b534", "metadata": {}, "outputs": [ { "data": { "image/png": "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zK+3LpQfXDJDuRMeHq7IyEjl5eWpefPm5vyh1NRUc+5QZGSkwsPDr7uunj17ateuXUpISDDbzp8/r0WLFql+/frXnYPkiMK5RFc/jTkwMNAcPTp9+nSRz115u3TDhg0lyW7eyfnz5x3636yz9zkrK0t5eXl2bWFhYXJzcyv2k5+vFBkZKQ8PD82dO9duROOdd95RZmamevXq5fA6i2PFihV6++23FRERoW7dujltvQ8++KASEhK0adOmIssyMjKKHLurOXJ+OMLb27vIYwx+T0REhLp37663335bH3/8cZHlubm5f/gwysIRqyt/npmZmYqLi7Prd/bs2SKjWC1btpQk81z67bff7Ja7ubmZdycW9inuMS/OulB+MEKEcmvHjh1q3769pMtfKbB3716Hn0EzceJEffDBB+rRo4eefPJJVa1aVcuWLdOxY8f00Ucf2U3q/bM6d+6szp07213uKzRv3jx17NhRYWFhGjZsmG655RalpqYqISFBP//8s7755htJUlRUlOrWrauhQ4dqwoQJqlChgpYsWaIaNWroxIkTLtnnLVu2aNSoUXrggQd02223KS8vT8uXL1eFChWu+cya66lRo4ZiY2M1bdo0de/eXX/961+VnJys+fPn64477tAjjzzi8Dqvtnr1avn4+Cg3N9d8UvWOHTt0++2368MPP/zT67/ShAkTtHbtWvXu3VuDBg1SeHi4zp8/r/3792v16tU6fvy43UMir6W454cjwsPDtWDBAr3wwgtq1KiRAgMD1bVr19/t/+677yoqKkr33Xef+vTpo27dusnb21tHjhzRypUrdfr06d99FlFUVJQ5EvP4448rOztbixcvVmBgoF3IW7ZsmebPn697771XDRs21Llz57R48WL5+fmpZ8+ekqTHHntM6enp6tq1q2rXrq2ffvpJb7zxhlq2bGnOgyvuMS/OulCOuPAON6DE5OXlGT4+Psby5csNw7h8G76kIrcrF8fRo0eN+++/3wgICDC8vLyMNm3aGOvXry/STzd42/2VCm9l1zVuLT569KgxYMAAIzg42KhYsaJRq1Yto3fv3sbq1avt+iUlJRlt27Y1PDw8jLp16xqvvvrq7952f61bw4u7z4W1Xn07feHt4XFxcYZhGMaPP/5oDBkyxGjYsKHh5eVlVK1a1bjrrruMzz///LrH6Y9ug3/zzTeNJk2aGBUrVjSCgoKMESNGFLntu3PnzkazZs2uu52rt1f48vLyMmrXrm307t3bWLJkid1t7YX+7G33hnH5sQaxsbFGo0aNDA8PD6N69epG+/btjVdeecXIzc01DOP/juvLL798zdqLc35c65EOhvF/P8utW7eabSkpKUavXr0MX19fQ1KxbsG/cOGC8corrxh33HGH4ePjY3h4eBi33nqrMXr0aOOHH34w+13rtvu1a9caLVq0MLy8vIz69esbM2fONJYsWWJ33u7Zs8d46KGHjLp16xqenp5GYGCg0bt3b+Prr78217N69WojKirKCAwMNP8OPP7448bp06cdPubFXRfKB5th3OAsOgAAgHKCOUQAAMDyCEQAAMDyCEQAAMDyCEQAAMDyCEQAAMDyCEQAAMDyeDBjMRQUFOiXX36Rr6+vQ4+zBwAArmMYhs6dO6eQkJDrPlSWQFQMv/zyi+rUqePqMgAAwA04efLkdb9ImkBUDL6+vpIuH1A/Pz8XVwMAAIojKytLderUMX+P/xECUTEUXibz8/MjEAEAcJMpznQXJlUDAADLIxABAADLc2kg2r59u/r06aOQkBDZbDZ9/PHHdssNw9DkyZNVs2ZNVapUSZGRkTpy5Ihdn/T0dMXExMjPz08BAQEaOnSosrOz7fp8++23uvPOO+Xl5aU6depo1qxZJb1rAADgJuLSQHT+/Hndfvvtmjdv3jWXz5o1S3PnztXChQuVmJgob29vRUdH6+LFi2afmJgYHThwQPHx8Vq/fr22b9+u4cOHm8uzsrIUFRWlevXqKSkpSS+//LKmTp2qRYsWlfj+AQCAm4RRRkgy1qxZY74vKCgwgoODjZdfftlsy8jIMDw9PY0PPvjAMAzDOHjwoCHJ2L17t9lnw4YNhs1mM06dOmUYhmHMnz/fqFKlipGTk2P2eeaZZ4zGjRsXu7bMzExDkpGZmXmjuwcAAEqZI7+/y+wcomPHjiklJUWRkZFmm7+/v9q2bauEhARJUkJCggICAtS6dWuzT2RkpNzc3JSYmGj26dSpkzw8PMw+0dHRSk5O1tmzZ6+57ZycHGVlZdm9AABA+VVmA1FKSookKSgoyK49KCjIXJaSkqLAwEC75e7u7qpatapdn2ut48ptXG369Ony9/c3XzyUEQCA8q3MBiJXio2NVWZmpvk6efKkq0sCAAAlqMwGouDgYElSamqqXXtqaqq5LDg4WGlpaXbL8/LylJ6ebtfnWuu4chtX8/T0NB/CyMMYAQAo/8psIGrQoIGCg4O1efNmsy0rK0uJiYmKiIiQJEVERCgjI0NJSUlmny1btqigoEBt27Y1+2zfvl2XLl0y+8THx6tx48aqUqVKKe0NAAAoy1waiLKzs7Vv3z7t27dP0uWJ1Pv27dOJEydks9k0ZswYvfDCC1q7dq3279+vAQMGKCQkRH379pUkNW3aVN27d9ewYcO0a9cu7dixQ6NGjVL//v0VEhIiSXr44Yfl4eGhoUOH6sCBA1q1apVef/11jRs3zkV7DQAAypxSuOvtd23dutWQVOQ1cOBAwzAu33o/adIkIygoyPD09DS6detmJCcn263jt99+Mx566CHDx8fH8PPzMwYPHmycO3fOrs8333xjdOzY0fD09DRq1aplzJgxw6E6ue0eAICbjyO/v22GYRguzGM3haysLPn7+yszM5P5RAAA3CQc+f1dZucQAQAAlBYCEQAAsDx3VxcAwHVOPBfm6hJQxtSdvN/VJQAuwQgRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwPAIRAACwvDIdiPLz8zVp0iQ1aNBAlSpVUsOGDfX888/LMAyzj2EYmjx5smrWrKlKlSopMjJSR44csVtPenq6YmJi5Ofnp4CAAA0dOlTZ2dmlvTsAAKCMKtOBaObMmVqwYIHefPNNHTp0SDNnztSsWbP0xhtvmH1mzZqluXPnauHChUpMTJS3t7eio6N18eJFs09M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HnpIQ4YM0aFDh/TFF1/ovvvuEwOUACAtW7ZM1atX165duzR69GiNGDFCDzzwgNq3b689e/YoKipKjz76qC5cuODqUsstLpmhVOzZs0fh4eE6fvy46tWr5+pyADtdunRRy5YtNWfOHFeXAgvq0qWL8vPz9d///leSlJ+fL39/f91333169913JUkpKSmqWbOmEhIS1K5dO1eWW24xQoRScfvtt6tbt24KCwvTAw88oMWLF+vs2bOuLgsAyoQWLVqYf65QoYKqVaumsLAws63wezfT0tJKvTarIBChVFSoUEHx8fHasGGDQkND9cYbb6hx48Y6duyYq0sDAJerWLGi3XubzWbXZrPZJEkFBQWlWpeVEIhQamw2mzp06KBp06Zp79698vDw0Jo1a1xdFgAA1vq2e7hOYmKiNm/erKioKAUGBioxMVG//vqrmjZt6urSAAAgEKF0+Pn5afv27ZozZ46ysrJUr149zZ49Wz169HB1aQAAcJcZAAAAc4gAAIDlEYgAAIDlEYgAAIDlEYgAAIDlEYgAAIDlEYgAAIDlEYgAAIDlEYgAAIDlEYgA3PRsNtsfvqZOnerqEgGUcXx1B4Cb3unTp80/r1q1SpMnT1ZycrLZ5uPj44qyANxEGCECcNMLDg42X/7+/rLZbAoODpavr69uu+02bdy40a7/xx9/LG9vb507d07Hjx+XzWbTypUr1b59e3l5eal58+batm2b3We+++479ejRQz4+PgoKCtKjjz6qM2fOlOZuAihBBCIA5Za3t7f69++vuLg4u/a4uDjdf//98vX1NdsmTJig8ePHa+/evYqIiFCfPn3022+/SZIyMjLUtWtXtWrVSl9//bU2btyo1NRUPfjgg6W6PwBKDoEIQLn22GOPadOmTeZltbS0NH366acaMmSIXb9Ro0apX79+atq0qRYsWCB/f3+98847kqQ333xTrVq10ksvvaQmTZqoVatWWrJkibZu3arDhw+X+j4BcD4CEYByrU2bNmrWrJmWLVsmSXrvvfdUr149derUya5fRESE+Wd3d3e1bt1ahw4dkiR988032rp1q3x8fMxXkyZNJElHjx4tpT0BUJKYVA2g3Hvsscc0b948TZw4UXFxcRo8eLBsNluxP5+dna0+ffpo5syZRZbVrFnTmaUCcBFGiACUe4888oh++uknzZ07VwcPHtTAgQOL9Nm5c6f557y8PCUlJalp06aSpL/85S86cOCA6tevr0aNGtm9vL29S20/AJQcAhGAcq9KlSq67777NGHCBEVFRal27dpF+sybN09r1qzR999/r5EjR+rs2bPmPKORI0cqPT1dDz30kHbv3q2jR49q06ZNGjx4sPLz80t7dwCUAAIRAEsYOnSocnNzi0ymLjRjxgzNmDFDt99+u7788kutXbtW1atXlySFhIRox44dys/PV1RUlMLCwjRmzBgFBATIzY1/RoHywGYYhuHqIgCgpC1fvlxjx47VL7/8Ig8PD7P9+PHjatCggfbu3auWLVu6rkAALsWkagDl2oULF3T69GnNmDFDjz/+uF0YAoBCjPUCKNdmzZqlJk2aKDg4WLGxsa4uB0AZxSUzAABgeYwQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAyyMQAQAAy/v/AOXxTDIaV/hbAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of neurons for different types\n", "classes = {}\n", "class_list = list(annotations[\"class\"])\n", "\n", "for i in range(len(class_list)):\n", " if class_list[i] == \"N/A\":\n", " continue\n", " \n", " if class_list[i] not in classes:\n", " classes[class_list[i]] = 1\n", " \n", " else:\n", " classes[class_list[i]] += 1\n", "\n", "sns.barplot(x=list(classes.keys()), y=list(classes.values())) \n", "plt.title(\"# of Neurons for Different Classes\")\n", "plt.xlabel(\"Type\")\n", "plt.ylabel(\"# of Neurons\")\n", "plt.savefig(folder / \"neuron_count_classes\")" ] }, { "cell_type": "code", "execution_count": 5, "id": "4e3ba42d", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHHCAYAAABZbpmkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA+0UlEQVR4nO3deXgNd///8deRkIRsopLYKYoQtRMUJW0sVYq2SotStI293LhbS1Vrqa2Lm+p9l7S1tbqrpbG7iaXWFlVF7UnqRiJIZJnfH36Zr9NYcjhxkvF8XNe5rsxnPjPznnGS8/KZ5dgMwzAEAABgUflcXQAAAEBOIuwAAABLI+wAAABLI+wAAABLI+wAAABLI+wAAABLI+wAAABLI+wAAABLI+wAAABLI+wAOSwuLk6dOnVSkSJFZLPZNGPGDFeXlOf16NFDZcuWdXUZd61Zs2aqVq2aq8sALI+wg/vWnj17ZLPZdPDgQUnS9OnTc+QDdPDgwVq5cqVGjhypzz77TC1btrxpX5vNJpvNpqlTp2aZN2/ePNlsNv38889Or/F+t27dOvPY3+i1aNEiV5d4Q1evXtV7772nmjVrytfXV/7+/qpatar69Omj3377zdXl3XMLFizgPxO4IXdXFwC4ytatWxUQEKCHHnpIkhQTE6MGDRo4fTtr1qxRu3btNHTo0Gwv8+677+qVV15RwYIFnV6PFXz88cfKyMhw+noHDBigunXrZmkPCwtz+racoWPHjlq+fLmee+459e7dW6mpqfrtt9+0dOlSNWzYUJUrV3Z1iffUggUL9Ouvv2rQoEGuLgW5DGEH961t27apXr16stlskq6FnSFDhjh9O/Hx8fL39892/xo1amj37t2aPXt2jtTjKMMwlJycLC8vL1eXYsqfP3+OrPeRRx5Rp06dcmTdzrZ9+3YtXbpUb7/9tv75z3/azfvwww914cIF1xQG5EKcxsJ95fz58zp79qzOnj2rrVu3qlq1ajp79qz27dunkydPqmLFijp79qySkpJuu64jR47o6aefVkBAgAoWLKgGDRroxx9/NOdnnnYyDEMzZ840T4ncTqNGjdS8eXNNnjxZV65cuW3/3377TZ06dVJAQIA8PT1Vp04dff/993Z9xo4de8NtZ9b4559/mm1ly5bVE088oZUrV6pOnTry8vLSRx99lK19lv7vlNAXX3yht99+WyVLlpSnp6datGihP/74w67voUOH1LFjRwUHB8vT01MlS5ZU586dlZCQcMt9/vs1O3/++adsNpumTJmiOXPmqHz58vLw8FDdunW1ffv22x5DR8ydO1fNmzdXYGCgPDw8FBISolmzZt2w7/Lly9W0aVP5+PjI19dXdevW1YIFC7L0279/vx599FEVLFhQJUqU0OTJk29bx+HDhyVde7/8nZubm4oUKWLXdurUKfXs2VNBQUHy8PBQ1apV9cknn2RZ9tixY3ryySdVqFAhBQYGmqdhbTab1q1bZ/bLvN5o7969atq0qQoWLKgKFSpoyZIlkqT169erfv368vLyUqVKlbRq1aos28pOTdl9PzVr1kw//vijjh07Zv6uWeG6LjgHIzu4r9SsWVPHjh0zp3/99VdNmTLFnG7btq0kqXv37po3b95N1xMXF6eGDRvq8uXLGjBggIoUKaKoqCg9+eSTWrJkiZ566ik1adJEn332mV544QU99thj6tatW7brHDt2rJo0aaJZs2bdcnRn3759atSokUqUKKERI0aoUKFC+uKLL9S+fXt99dVXeuqpp7K9zesdPHhQzz33nPr27avevXurUqVK2drn602cOFH58uXT0KFDlZCQoMmTJ6tr167aunWrpGvXm0RERCglJUX9+/dXcHCwTp06paVLl+rChQvy8/NzuO4FCxbo4sWL6tu3r2w2myZPnqwOHTroyJEj2RoNunjxos6ePZulPfPickmaNWuWqlatqieffFLu7u764Ycf9OqrryojI0ORkZHmMvPmzVPPnj1VtWpVjRw5Uv7+/tq1a5dWrFihLl26mP3Onz+vli1bqkOHDnrmmWe0ZMkSDR8+XKGhoWrVqtVNay1Tpowkaf78+WrUqJHc3W/+5zwuLk4NGjSQzWZTv379VLRoUS1fvly9evVSYmKiedrn0qVLat68uc6cOaOBAwcqODhYCxYs0Nq1a2+43vPnz+uJJ55Q586d9fTTT2vWrFnq3Lmz5s+fr0GDBunll19Wly5d9O6776pTp046ceKEfHx8HKop0+3eT6+//roSEhJ08uRJTZ8+XZLk7e1902OC+4wB3Ef++9//GtHR0caoUaMMd3d3Y/ny5UZ0dLTRqlUro06dOkZ0dLQRHR1t7Nu375brGTRokCHJ2Lhxo9l28eJFo1y5ckbZsmWN9PR0s12SERkZ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AIA85naXoHCBMgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDTCDgAAsDR3VxeQV9Qe9qmrS8gVdrzbzdUlAADgEEZ2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApRF2AACApbk07KSnp2vUqFEqV66cvLy8VL58eb311lsyDMPsYxiGRo8erWLFisnLy0vh4eE6dOiQ3XrOnTunrl27ytfXV/7+/urVq5eSkpLu9e4AAIBcyKVhZ9KkSZo1a5Y+/PBDHThwQJMmTdLkyZP1wQcfmH0mT56s999/X7Nnz9bWrVtVqFAhRUREKDk52ezTtWtX7du3T9HR0Vq6dKk2bNigPn36uGKXAABALuPuyo1v3rxZ7dq1U5s2bSRJZcuW1cKFC7Vt2zZJ10Z1ZsyYoTfeeEPt2rWTJH366acKCgrSt99+q86dO+vAgQNasWKFtm/frjp16kiSPvjgA7Vu3VpTpkxR8eLFXbNzAAAgV3DpyE7Dhg21evVq/f7775KkPXv26L///a9atWolSTp69KhiY2MVHh5uLuPn56f69esrJiZGkhQTEyN/f38z6EhSeHi48uXLp61bt97DvQEAALmRS0d2RowYocTERFWuXFlubm5KT0/X22+/ra5du0qSYmNjJUlBQUF2ywUFBZnzYmNjFRgYaDff3d1dAQEBZp+/S0lJUUpKijmdmJjotH0CAAC5i0tHdr744gvNnz9fCxYs0M6dOxUVFaUpU6YoKioqR7c7YcIE+fn5ma9SpUrl6PYAAIDruDTsDBs2TCNGjFDnzp0VGhqqF154QYMHD9aECRMkScHBwZKkuLg4u+Xi4uLMecHBwYqPj7ebn5aWpnPnzpl9/m7kyJFKSEgwXydOnHD2rgEAgFzCpWHn8uXLypfPvgQ3NzdlZGRIksqVK6fg4GCtXr3anJ+YmKitW7cqLCxMkhQWFqYLFy5ox44dZp81a9YoIyND9evXv+F2PTw85Ovra/cCAADW5NJrdtq2bau3335bpUuXVtWqVbVr1y5NmzZNPXv2lCTZbDYNGjRI48ePV8WKFVWuXDmNGjVKxYsXV/v27SVJVapUUcuWLdW7d2/Nnj1bqamp6tevnzp37sydWAAAwLVh54MPPtCoUaP06quvKj4+XsWLF1ffvn01evRos88//vEPXbp0SX369NGFCxfUuHFjrVixQp6enmaf+fPnq1+/fmrRooXy5cunjh076v3333fFLgEAgFzGZlz/uOL7VGJiovz8/JSQkHDTU1q1h316j6vKnXa8283VJQAAICl7n98S340FAAAsjrADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAsjbADAAAszeVh59SpU3r++edVpEgReXl5KTQ0VD///LM53zAMjR49WsWKFZOXl5fCw8N16NAhu3WcO3dOXbt2la+vr/z9/dWrVy8lJSXd610BAAC5kEvDzvnz59WoUSPlz59fy5cv1/79+zV16lQVLlzY7DN58mS9//77mj17trZu3apChQopIiJCycnJZp+uXbtq3759io6O1tKlS7Vhwwb16dPHFbsEAABy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vCEPDw+lpaWpdu3aeuSRR3T16lXt3LlTNptNjRs3zslaAQAAHJbtsPPAAw+obdu2mjBhggoWLKjt27erf//+stlsGjp0qPz8/NS0adOcrBUAAMBhd/xQQT8/Pz3zzDPKnz+/1qxZo6NHj+rVV191Zm0AAAB37Y4eKrh3716VKFFC0rVbv/Pnz6/g4GA9++yzTi0OAADgbt1R2ClVqpT586+//uq0YgAAAJzNZd+NBQAAcC8QdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKURdgAAgKW5NOxMmDBBdevWlY+PjwIDA9W+fXsdPHjQrk9ycrIiIyNVpEgReXt7q2PHjoqLi7Prc/z4cbVp00YFCxZUYGCghg0bprS0tHu5KwAAIJdyadhZv369IiMjtWXLFkVHRys1NVWPP/64Ll26ZPYZPHiwfvjhB3355Zdav369Tp8+rQ4dOpjz09PT1aZNG129elWbN29WVFSU5s2bp9GjR7tilwAAQC7j7sqNr1ixwm563rx5CgwM1I4dO9SkSRMlJCToP//5jxYsWKDmzZtLkubOnasqVapoy5YtatCggX766Sft379fq1atUlBQkGrUqKG33npLw4cP19ixY1WgQAFX7BoAAMglctU1OwkJCZKkgIAASdKOHTuUmpqq8PBws0/lypVVunRpxcTESJJiYmIUGhqqoKAgs09ERIQSExO1b9++G24nJSVFiYmJdi8AAGBNuSbsZGRkaNCgQWrUqJGqVasmSYqNjVWBAgXk7+9v1zcoKEixsbFmn+uDTub8zHk3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eXt7q27dulq1apXd+uPj49W2bVt5eXmpXLlymj9//r3atVyvVatWGj9+vJ566ilXl5KntW3bVq1bt1bFihX10EMP6e2335a3t7e2bNni6tLynGnTpql379568cUXFRISotmzZ6tgwYL65JNPXF1anrJixQr16NFDVatW1cMPP6x58+bp+PHj2rFjh6tLu2vNmjUznyPn5+enBx54QKNGjZJhGBo3bpyqVauWZZkaNWpo1KhRkqS0tDQNGDBA/v7+KlKkiIYPH67u3bubX6+UuY3rT2Nl53Pk+tHxdevWyWaz6cKFC+b83bt3y2az6c8//5QkzZs3T/7+/lq6dKkqVaqkggULqlOnTrp8+bKioqJUtmxZFS5cWAMGDFB6evpdH7e/I+zcY1FRUSpUqJC2bt2qyZMna9y4cYqOjpYkPf3004qPj9fy5cu1Y8cO1apVSy1atNC5c+ckSUlJSWrdurVWr16tXbt2qWXLlmrbtq2OHz9urr9Hjx46ceKE1q5dqyVLluhf//oX/0tEjklPT9eiRYt06dIlhYWFubqcPOXq1avasWOHwsPDzbZ8+fIpPDxcMTExLqws70tISJB0bcTCCqKiouTu7q5t27bpvffe07Rp0/Tvf/9bPXv21IEDB7R9+3az765du7R3717z65ImTZqk+fPna+7cudq0aZMSExNvewo/pz5HLl++rPfff1+LFi3SihUrtG7dOj311FNatmyZli1bps8++0wfffSRlixZctfbysLAPdO0aVOjcePGdm1169Y1hg8fbmzcuNHw9fU1kpOT7eaXL1/e+Oijj266zqpVqxoffPCBYRiGcfDgQUOSsW3bNnP+gQMHDEnG9OnTnbcjFiDJ+Oabb1xdRp61d+9eo1ChQoabm5vh5+dn/Pjjj64uKc85deqUIcnYvHmzXfuwYcOMevXquaiqvC89Pd1o06aN0ahRI1eX4hRNmzY1qlSpYmRkZJhtw4cPN6pUqWIYhmG0atXKeOWVV8x5/fv3N5o1a2ZOBwUFGe+++645nZaWZpQuXdpo166d3TYGDhxoGEb2P0eu/xu6du1aQ5Jx/vx5c/6uXbsMScbRo0cNwzCMuXPnGpKMP/74w+zTt29fo2DBgsbFixfNtoiICKNv377ZP0DZxMjOPVa9enW76WLFiik+Pl579uxRUlKSihQpIm9vb/N19OhRHT58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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of neurons in different segments\n", "segments = {}\n", "segment_list = list(annotations[\"segment\"])\n", "\n", "for i in range(len(segment_list)):\n", " if segment_list[i] == \"N/A\":\n", " continue\n", " \n", " if segment_list[i] not in segments:\n", " segments[segment_list[i]] = 1\n", " \n", " else:\n", " segments[segment_list[i]] += 1\n", "\n", "sns.barplot(x=list(segments.keys()), y=list(segments.values())) \n", "plt.title(\"# of Neurons in Each Segment\")\n", "plt.xlabel(\"Segment\")\n", "plt.ylabel(\"# of Neurons\")\n", "plt.savefig(folder / \"neuron_count_segments\")" ] }, { "cell_type": "code", "execution_count": 6, "id": "6cb7e4c1", "metadata": {}, "outputs": [ { "data": { "image/png": "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CAMDAwQFBSEnJwf+/v748ssvpfcbGhpi586dGDlyJNRqNczNzRESEoKZM2fqa5OIiIiogqlw99nRB95np/R4nx0iIqooKt19doiIiIjKA8MOERERyRrDDhEREckaww4RERHJGsMOERERyRrDDhEREckaww4RERHJGsMOERERyRrDDhEREckaww4RERHJGsMOERERyRrDDhEREckaww4RERHJGsMOERERyRrDDhEREckaww4RERHJmtZhZ8+ePfj999+l6WXLlqFx48Z477338PDhQ50WR0RERFRWWoedCRMmICMjAwDw559/Yty4cejWrRuSkpIQERGh8wKJiIiIysJI2zckJSXBy8sLAPDjjz+iR48e+PTTT3Hq1Cl069ZN5wUSERERlYXWIzsmJiZ4/PgxAGD//v3o3LkzAMDGxkYa8SEiIiKqKLQe2WndujUiIiLQqlUrnDhxAps2bQIA/P3336hRo4bOCyQiIiIqC61HdpYuXQojIyNs2bIFy5cvR/Xq1QEAu3fvRpcuXXReIBEREVFZaD2yU7NmTezcubNY+8KFC3VSEBEREZEuaR12AKCwsBCXL19GamoqCgsLNea1bdtWJ4URERER6YLWYefYsWN47733cO3aNQghNOYpFAoUFBTorDgiIiKistI67IwYMQJNmzbFL7/8AicnJygUivKoi4iIiEgntA47ly5dwpYtW+Dh4VEe9RARERHplNZXY/n6+uLy5cvlUQsRERGRzmk9shMWFoZx48YhOTkZDRs2hLGxscZ8b29vnRVHREREVFZah52goCAAwKBBg6Q2hUIBIQRPUCYiIqIK56WejUVERERUWWgddlxdXcujDiIiIqJy8VI3FUxMTMSiRYtw4cIFAICXlxfGjBkDd3d3nRZHREREVFZaX421d+9eeHl54cSJE/D29oa3tzeOHz+O+vXrIzo6ujxqJCIiInppWo/sTJo0CeHh4ZgzZ06x9okTJ6JTp046K46IiIiorLQe2blw4QIGDx5crH3QoEE4f/68TooiIiIi0hWtw469vT3i4+OLtcfHx8PBwUGrZc2ePRvNmjWDpaUlHBwc0LNnTyQkJGj0ad++PRQKhcZrxIgRGn2uX7+O7t27w8zMDA4ODpgwYQLy8/O13TQiIiKSIa0PYw0dOhTDhg3DlStX0LJlSwDAkSNHMHfuXERERGi1rEOHDiE0NBTNmjVDfn4+PvzwQ3Tu3Bnnz5+Hubm5xjpnzpwpTZuZmUlfFxQUoHv37lCpVDh69Cju3LmD4OBgGBsb49NPP9V284iIiEhmtA47U6ZMgaWlJRYsWIDIyEgAgLOzM6ZPn47Ro0drtaw9e/ZoTK9evRoODg6Ii4tD27ZtpXYzMzOoVKoSl7Fv3z6cP38e+/fvh6OjIxo3boxZs2Zh4sSJmD59OkxMTLTcQiIiIpITrQ5j5efnY926dXjvvfdw8+ZNpKenIz09HTdv3sSYMWPK/AT09PR0AICNjY1G+/r162FnZ4cGDRogMjISjx8/lubFxsaiYcOGcHR0lNr8/f2RkZGBc+fOlbienJwcZGRkaLyIiIhInrQa2TEyMsKIESOk++tYWlrqrJDCwkKMHTsWrVq1QoMGDaT29957D66urnB2dsbZs2cxceJEJCQkYOvWrQCA5ORkjaADQJpOTk4ucV2zZ8/GjBkzdFY7ERERVVxaH8Zq3rw5Tp8+rfM7KYeGhuKvv/7C77//rtE+bNgw6euGDRvCyckJHTt2RGJi4kvfxDAyMlLj/KKMjAy4uLi8XOFERERUoWkddt5//32MGzcON2/ehI+Pj8aJxMDLPfV81KhR2LlzJw4fPowaNWo8t6+vry8A4PLly3B3d4dKpcKJEyc0+qSkpADAM8/zMTU1hampqdZ1EhERUeWjddjp27cvAGicjPyyTz0XQiAsLAzbtm1DTEwMatWq9cL3FF327uTkBABQq9X45JNPkJqaKl36Hh0dDSsrK3h5eZW6FiIiIpInvT71PDQ0FFFRUfjpp59gaWkpnWOjVCpRtWpVJCYmIioqCt26dYOtrS3Onj2L8PBwtG3bVhpB6ty5M7y8vNC/f3/MmzcPycnJmDx5MkJDQzl6Q0RERPp96vny5csBPLlx4NNWrVqFAQMGwMTEBPv378eiRYuQlZUFFxcXBAUFYfLkyVJfQ0ND7Ny5EyNHjoRarYa5uTlCQkI07stDRERE/11ah521a9c+d35wcHCplyWEeO58FxcXHDp06IXLcXV1xa5du0q9XiIiIvrv0DrsjBkzRmM6Ly8Pjx8/homJCczMzLQKO0RERETlTetnYz18+FDjlZmZiYSEBLRu3RobNmwojxqJiIiIXprWYacktWvXxpw5c4qN+hARERHpm07CDvDk7sq3b9/W1eKIiIiIdELrc3Z+/vlnjWkhBO7cuYOlS5eiVatWOiuMiIiISBe0Djs9e/bUmFYoFLC3t0eHDh2wYMECXdVFREREpBNah53CwsLyqIOIiIioXLz0OTu5ublISEhAfn6+LushIiIi0imtw87jx48xaNAgmJmZoX79+rh+/ToAICwsDHPmzNF5gURERERloXXYiYyMxNmzZxETE4MqVapI7X5+fti0aZNOiyMiIiIqK63P2dm+fTs2bdqEFi1aQKFQSO3169dHYmKiTosjIiIiKiutR3bu3r0LBweHYu1ZWVka4YeIiIioItA67DRt2hS//PKLNF0UcL755huo1WrdVUZERESkA1ofxvr000/RtWtXnD9/Hvn5+fjiiy9w/vx5HD16tFRPKCciIiJ6lbQe2WndujXi4+ORn5+Phg0bYt++fXBwcEBsbCx8fHzKo0YiIiKil6b1yA4AuLu7Y+XKlbquhYiIiEjndPYgUCIiIqKKqNQjOwYGBi+82kqhUPCOykRERFShlDrsbNu27ZnzYmNjsXjxYj43i4iIiCqcUoedwMDAYm0JCQmYNGkSduzYgX79+mHmzJk6LY6IiIiorF7qnJ3bt29j6NChaNiwIfLz8xEfH481a9bA1dVV1/URERERlYlWYSc9PR0TJ06Eh4cHzp07hwMHDmDHjh1o0KBBedVHREREVCalPow1b948zJ07FyqVChs2bCjxsBYRERFRRVPqsDNp0iRUrVoVHh4eWLNmDdasWVNiv61bt+qsOCIiIqKyKnXYCQ4O5oM+iYiIqNIpddhZvXp1OZZBREREVD54B2UiIiKSNYYdIiIikjWGHSIiIpI1hh0iIiKSNa3DTlZWVnnUQURERFQutA47jo6OGDRoEH7//ffyqIeIiIhIp7QOO99//z0ePHiADh06oE6dOpgzZw5u375dHrURERERlZnWYadnz57Yvn07bt26hREjRiAqKgqurq7o0aMHtm7divz8/PKok4iIiOilvPQJyvb29oiIiMDZs2fx+eefY//+/ejduzecnZ0xdepUPH78WJd1EhEREb2UUt9B+d9SUlKwZs0arF69GteuXUPv3r0xePBg3Lx5E3PnzsWxY8ewb98+XdZKREREpDWtR3a2bt2KgIAAuLi4ICoqCu+//z5u3bqF77//Hm+88Qb69++Pn376CTExMS9c1uzZs9GsWTNYWlrCwcEBPXv2REJCgkaf7OxshIaGwtbWFhYWFggKCkJKSopGn+vXr6N79+4wMzODg4MDJkyYwMNpREREBOAlws7AgQNRvXp1HDlyBPHx8Rg1ahSsra01+jg7O+Ojjz564bIOHTqE0NBQHDt2DNHR0cjLy0Pnzp01Lm8PDw/Hjh07sHnzZhw6dAi3b9/GW2+9Jc0vKChA9+7dkZubi6NHj0qjTVOnTtV204iIiEiGFEIIUdrO+fn5+PrrrxEUFARHR0edF3P37l04ODjg0KFDaNu2LdLT02Fvb4+oqCj07t0bAHDx4kXUq1cPsbGxaNGiBXbv3o0ePXrg9u3bUk0rVqzAxIkTcffuXZiYmLxwvRkZGVAqlUhPT4eVlVWJfXwmrNXdhlZicZ8F67sEIiIiAKX7+w1oObJjZGSE8ePHIzs7u8wFliQ9PR0AYGNjAwCIi4tDXl4e/Pz8pD5169ZFzZo1ERsbCwCIjY1Fw4YNNcKXv78/MjIycO7cuRLXk5OTg4yMDI0XERERyZPWh7GaN2+O06dP67yQwsJCjB07Fq1atUKDBg0AAMnJyTAxMSl2mMzR0RHJyclSn3+PMhVNF/X5t9mzZ0OpVEovFxcXHW8NERERVRRaX431/vvvY9y4cbh58yZ8fHxgbm6uMd/b2/ulCgkNDcVff/31Su7MHBkZiYiICGk6IyODgYeIiEimtA47ffv2BQCMHj1aalMoFBBCQKFQoKCgQOsiRo0ahZ07d+Lw4cOoUaOG1K5SqZCbm4u0tDSN0Z2UlBSoVCqpz4kTJzSWV3S1VlGffzM1NYWpqanWdRIREVHlo3XYSUpK0tnKhRAICwvDtm3bEBMTg1q1amnM9/HxgbGxMQ4cOICgoCAAQEJCAq5fvw61Wg0AUKvV+OSTT5CamgoHBwcAQHR0NKysrODl5aWzWomIiKhy0jrsuLq66mzloaGhiIqKwk8//QRLS0vpHBulUomqVatCqVRi8ODBiIiIgI2NDaysrBAWFga1Wo0WLVoAADp37gwvLy/0798f8+bNQ3JyMiZPnozQ0FCO3hAREdHL3UE5MTERixYtwoULFwAAXl5eGDNmDNzd3bVazvLlywEA7du312hftWoVBgwYAABYuHAhDAwMEBQUhJycHPj7++PLL7+U+hoaGmLnzp0YOXIk1Go1zM3NERISgpkzZ77MphEREZHMaHWfHQDYu3cv3nzzTTRu3BitWrUCABw5cgRnzpzBjh070KlTp3IptDzxPjulx/vsEBFRRVHa++xoPbIzadIkhIeHY86cOcXaJ06cWCnDDhEREcmX1vfZuXDhAgYPHlysfdCgQTh//rxOiiIiIiLSFa3Djr29PeLj44u1x8fHS1dDEREREVUUWh/GGjp0KIYNG4YrV66gZcuWAJ6cszN37lyNG/URERERVQRah50pU6bA0tISCxYsQGRkJIAnTzmfPn26xo0GiYiIiCoCrcOOQqFAeHg4wsPD8ejRIwCApaWlzgsjIiIi0gWtz9n5559/8PjxYwBPQs6DBw+waNEi7Nu3T+fFEREREZWV1mEnMDAQa9c+uedMWloamjdvjgULFiAwMFC6SSARERFRRaF12Dl16hTatGkDANiyZQtUKhWuXbuGtWvXYvHixTovkIiIiKgstA47jx8/ls7R2bdvH9566y0YGBigRYsWuHbtms4LJCIiIioLrcOOh4cHtm/fjhs3bmDv3r3o3LkzACA1NfW5t2omIiIi0getw87UqVMxfvx4uLm5wdfXF2q1GsCTUZ7XX39d5wUSERERlYXWl5737t0brVu3xp07d9CoUSOpvWPHjujVq5dOiyMiIiIqK63DDgCoVCqoVCqNtubNm+ukICIiIiJd0jrsZGVlYc6cOThw4ABSU1NRWFioMf/KlSs6K46IiIiorLQOO0OGDMGhQ4fQv39/ODk5QaFQlEddRERERDqhddjZvXs3fvnlF7Rq1ao86iEiIiLSKa2vxqpWrRpsbGzKoxYiIiIindM67MyaNQtTp06Vno9FREREVJFpfRhrwYIFSExMhKOjI9zc3GBsbKwx/9SpUzorjoiIiKistA47PXv2LIcyiIiIiMqH1mFn2rRp5VEHERERUbnQ+pwdAEhLS8M333yDyMhIPHjwAMCTw1e3bt3SaXFEREREZaX1yM7Zs2fh5+cHpVKJq1evYujQobCxscHWrVtx/fp1rF27tjzqJCIiInopWo/sREREYMCAAbh06RKqVKkitXfr1g2HDx/WaXFEREREZaV12Dl58iSGDx9erL169epITk7WSVFEREREuqJ12DE1NUVGRkax9r///hv29vY6KYqIiIhIV7QOO2+++SZmzpyJvLw8AIBCocD169cxceJEBAUF6bxAIiIiorLQOuwsWLAA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IiIiIq299E0FlUol+vTpA2NjYxw8eBBJSUl4//33dVkbERERUZm91FPPz549i+rVqwMAXF1dYWxsDJVKhXfeeUenxRERERGV1UuFHRcXF+nrv/76S2fFEBEREekan41FREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREsqbXsHP48GEEBATA2dkZCoUC27dv15gvhMDUqVPh5OSEqlWrws/PD5cuXdLo8+DBA/Tr1w9WVlawtrbG4MGDkZmZ+Qq3goiIiCoyvYadrKwsNGrUCMuWLStx/rx587B48WKsWLECx48fh7m5Ofz9/ZGdnS316devH86dO4fo6Gjs3LkThw8fxrBhw17VJhAREVEF91IPAtWVrl27omvXriXOE0Jg0aJFmDx5MgIDAwEAa9euhaOjI7Zv346+ffviwoUL2LNnD06ePImmTZsCAJYsWYJu3bph/vz5cHZ2fmXbQkRERBVThT1nJykpCcnJyfDz85PalEolfH19ERsbCwCIjY2FtbW1FHQAwM/PDwYGBjh+/Pgzl52Tk4OMjAyNFxEREclThQ07ycnJAABHR0eNdkdHR2lecnIyHBwcNOYbGRnBxsZG6lOS2bNnQ6lUSi8XFxcdV09EREQVRYUNO+UpMjIS6enp0uvGjRv6LomIiIjKSYUNOyqVCgCQkpKi0Z6SkiLNU6lUSE1N1Zifn5+PBw8eSH1KYmpqCisrK40XERERyVOFDTu1atWCSqXCgQMHpLaMjAwcP34carUaAKBWq5GWloa4uDipz8GDB1FYWAhfX99XXjMRERFVPHq9GiszMxOXL1+WppOSkhAfHw8bGxvUrFkTY8eOxccff4zatWujVq1amDJlCpydndGzZ08AQL169dClSxcMHToUK1asQF5eHkaNGoW+ffvySiwiIiICoOew88cff+CNN96QpiMiIgAAISEhWL16NT744ANkZWVh2LBhSEtLQ+vWrbFnzx5UqVJFes/69esxatQodOzYEQYGBggKCsLixYtf+bYQERFRxaQQQgh9F6FvGRkZUCqVSE9Pf+b5Oz4T1r7iqiqmuM+C9V0CERERgNL9/QYq8Dk7RERERLrAsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyxrBDREREssawQ0RERLLGsENERESyVqHDzvTp06FQKDRedevWleZnZ2cjNDQUtra2sLCwQFBQEFJSUvRYMREREVU0FTrsAED9+vVx584d6fX7779L88LDw7Fjxw5s3rwZhw4dwu3bt/HWW2/psVoiIiKqaIz0XcCLGBkZQaVSFWtPT0/Ht99+i6ioKHTo0AEAsGrVKtSrVw/Hjh1DixYtXnWpREREVAFV+JGdS5cuwdnZGa+99hr69euH69evAwDi4uKQl5cHPz8/qW/dunVRs2ZNxMbG6qtcIiIiqmAq9MiOr68vVq9eDU9PT9y5cwczZsxAmzZt8NdffyE5ORkmJiawtrbWeI+joyOSk5Ofu9ycnBzk5ORI0xkZGeVRPhEREVUAFTrsdO3aVfra29sbvr6+cHV1xQ8//ICqVau+9HJnz56NGTNm6KJEIiIiquAq/GGsp1lbW6NOnTq4fPkyVCoVcnNzkZaWptEnJSWlxHN8nhYZGYn09HTpdePGjXKsmoiIiPSpUoWdzMxMJCYmwsnJCT4+PjA2NsaBAwek+QkJCbh+/TrUavVzl2NqagorKyuNFxEREclThT6MNX78eAQEBMDV1RW3b9/GtGnTYGhoiHfffRdKpRKDBw9GREQEbGxsYGVlhbCwMKjVal6JRURERJIKHXZu3ryJd999F/fv34e9vT1at26NY8eOwd7eHgCwcOFCGBgYICgoCDk5OfD398eXX36p56qJiIioIlEIIYS+i9C3jIwMKJVKpKenP/OQls+Eta+4qoop7rNgfZdApHOH2rbTdwkVQrvDh/RdAv1/n/yvt75LqBA++n7Lc+eX5u83UMnO2SEiIiLSVoU+jEVEz9ZqSSt9l1AhHAk7ou8SiKiC48gOERERyRrDDhEREckaww4RERHJGsMOERERyRrDDhEREckaww4RERHJGi89JyIinVk6boe+S6gQRi0I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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of sensory neurons in each segment\n", "\n", "indices = []\n", "segment_sensory = {}\n", "for i in range(len(class_list)):\n", " if(class_list[i] == \"s\"):\n", " indices.append(i)\n", "\n", "for i in indices:\n", " if segment_list[i] == \"N/A\":\n", " continue\n", " \n", " if segment_list[i] not in segment_sensory:\n", " segment_sensory[segment_list[i]] = 1\n", " \n", " else:\n", " segment_sensory[segment_list[i]] += 1\n", "\n", "sns.barplot(x=list(segment_sensory.keys()), y=list(segment_sensory.values())) \n", "plt.title(\"# of Sensory Neurons in Each Segment\")\n", "plt.xlabel(\"Segment\")\n", "plt.ylabel(\"# of Sensory Neurons\")\n", "plt.savefig(folder / \"neuron_count_sensory_in_segments\")" ] }, { "cell_type": "code", "execution_count": 7, "id": "268c3c31", "metadata": {}, "outputs": [ { "data": { "image/png": "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06YZM2bMMJo3b254eHgYSUlJ1n47duwwPD09jdDQUGPKlCnGm2++aVSvXt1o0aKF8ddfPZKM5s2bGzVr1jSmTJliTJkyxfD39zdq1aplvP/++0ZYWJgxbdo047XXXjM8PDyM+++//5ZqKu7nafHixYanp6fRoUMH6//LH3/88ab7BmUXYQflwg8//GAkJCQYY8eONdzc3IxVq1YZCQkJRo8ePYzWrVsbCQkJRkJCgrF3794bLufFF180JBmbN2+2tl28eNGoU6eOERoaauTl5Vnb/xpgbuR6Yadx48ZGVlaWtf3dd981JBl79uyxtvXs2dMmJBRYvHix4eLiYlOrYRjG3LlzDUnGli1bbNbv4uJSaPsLfnFHRkYa+fn51vYRI0YYrq6uxvnz5637ICAgwHjqqads3p+SkmL4+/vbtNsbdvz8/Iy0tDSbvi1btjSCgoKMP//809q2e/duw8XFxRg4cKC1reCX0xNPPGHz/j59+hiVK1e2Ts+YMcOQZJw+fbpQXTdzvbBzs312PQU1F/Vq2LChtV9ubq7NZ8MwDOPcuXNGcHCwzfZ+//33hiTj+eefL7Sua+uTZHh4eBiHDh2ytu3evduQZBOKipKSkmJUrVrVkGQ0atTIePbZZ42lS5cW2tb8/HyjQYMGRlRUlM26L1++bNSpU8fo2rWrta1Xr16Gl5eXcfLkSWvbwYMHDTc3tyLDjqenp03QnTdvniHJCAkJMdLT063tY8aMMSRZ+9pTU3E/T4ZhGN7e3jf94wnlB6exUC60b99ekZGRunTpku6++251795dkZGROn78uB588EFFRkYqMjJSYWFhN1zOypUr1aZNG917773WNh8fHz399NM6evSo9RSLowwePNhmvEOHDh0kXT2VdjNffvmlGjdurEaNGllP4Z05c0adO3eWpEKnOzp27Hjd7X/66adtTh106NBBeXl5OnbsmKSrp4DOnz+v//mf/7FZl6urq9q2bVvkqZXi6tevn6pWrWqd/uOPP7Rr1y4NGjRIgYGB1vbmzZura9euWrlyZaFlPPvsszbTHTp00J9//qn09HRJ/zfo99tvv1V+fv4t13qtm+2zm/nXv/6lhIQEm9f8+fOt811dXa2fjfz8fJ09e1a5ublq3bq1duzYYbMci8WicePGFVrHX08HRUZGql69etbp5s2by8/P76aft+DgYO3e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6O6779a6detslp+WlqZevXqpYsWKqlOnjpYsWXK7Nq1MW716tQYNGqQmTZqoRYsWWrBggY4fP67k5GRnl1bu9OrVSw888IAaNGigO++8U2+++aZ8fHz0008/Obu0cqdHjx5644031KdPH2eX4lCdOnWy3vvM399fVapU0dixY2UYhiZMmKCmTZsWek/Lli01duxYSVJubq6ef/55BQQEqHLlyho9erRiYmKsjwQqWMe1p7GK89137dGzDRs2yGKx6Pz589b5u3btksVi0dGjRyVJCxYsUEBAgJYvX66GDRvKy8tL/fv31+XLl7Vw4UKFhoaqUqVKev7555WXl1fi/VZWTJ8+XU899ZQGDx6ssLAwzZ07V15eXvrkk0+cXdotI+zcZgsXLpS3t7eSkpI0depUTZgwQQkJCZKkhx56SGlpaVq1apWSk5PVqlUrdenSRWfPnpUkXbp0SQ888IASExO1c+dOde/eXb169dLx48etyx80aJBOnDih9evX66uvvtIHH3xQrtN4ablw4YKkq38d4tbl5eXp888/V0ZGhiIiIpxdDsqQhQsXys3NTdu2bdO7776r6dOn66OPPtITTzyhffv2afv27da+O3fu1C+//GJ9xM9bb72lJUuWaP78+dqyZYvS09NveoqvtL77Ll++rPfee0+ff/65Vq9erQ0bNqhPnz5auXKlVq5cqcWLF2vevHn66quvSryusiA7O1vJycmKjIy0trm4uCgyMlJbt251YmUlZOC26dixo3HvvffatN19993G6NGjjc2bNxt+fn5GZmamzfx69eoZ8+bNu+4ymzRpYsyaNcswDMM4cOCAIcnYtm2bdf6+ffsMScaMGTMctyHlXF5entGzZ0+jffv2zi6l3Prll18Mb29vw9XV1fD39zdWrFjh7JLKPUnGN9984+wyHKJjx45G48aNjfz8fGvb6NGjjcaNGxuGYRg9evQwhg4dap03fPhwo1OnTtbp4OBg4+2337ZO5+bmGrVq1TKio6Nt1vHCCy8YhlH8775r9/H69esNSca5c+es83fu3GlIMo4cOWIYhmHMnz/fkGQcOnTI2ueZZ54xvLy8jIsXL1rboqKijGeeeab4O6gMO3nypCHJ+PHHH23aR40aZbRp08ZJVZUcR3Zus+bNm9tMV6tWTWlpadq9e7cuXbqkypUry8fHx/o6cuSIDh8+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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of interneurons in each segment\n", "\n", "indices = []\n", "segment_inter = {}\n", "for i in range(len(class_list)):\n", " if(class_list[i] == \"i\"):\n", " indices.append(i)\n", "\n", "for i in indices:\n", " if segment_list[i] == \"N/A\":\n", " continue\n", " \n", " if segment_list[i] not in segment_inter:\n", " segment_inter[segment_list[i]] = 1\n", " \n", " else:\n", " segment_inter[segment_list[i]] += 1\n", "\n", "sns.barplot(x=list(segment_inter.keys()), y=list(segment_inter.values())) \n", "plt.title(\"# of Interneurons in Each Segment\")\n", "plt.xlabel(\"Segment\")\n", "plt.ylabel(\"# of Interneurons\")\n", "plt.savefig(folder / \"neuron_count_inter_in_segments\")" ] }, { "cell_type": "code", "execution_count": 8, "id": "870d4145", "metadata": {}, "outputs": [ { "data": { "image/png": "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IAMAACyLIAMAACyLIAMAACyLIAMAACyLIAMAACyLIAMAACyLIAMAACyLIAMAACyLIAMAACzL3dUFlAWRz3zg6hLKhK2v9XF1CQAAOIURGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkuDTJ5eXkaOXKkatWqJW9vb9WuXVsvv/yyjDH2dYwxGjVqlEJCQuTt7a2YmBjt3bvXhVUDAICywqVBZsKECZoxY4beeust7d69WxMmTNDEiRM1bdo0+zoTJ07Um2++qZkzZ2rjxo2qWLGiYmNjlZWV5cLKAQBAWeDSO/t+99136t69u7p27SpJqlmzpubPn69NmzZJOjcaM3XqVL344ovq3r27JOmDDz5QUFCQFi9erHvvvddltQMAANdz6YhMmzZtlJSUpF9++UWStHPnTn377bfq0qWLJCk5OVkpKSmKiYmxv8bPz0+tW7fW+vXrC+0zOztbGRkZDhMAALg2uXRE5vnnn1dGRoYiIiLk5uamvLw8vfrqq3rggQckSSkpKZKkoKAgh9cFBQXZl/1dQkKCxowZU7qFAwCAMsGlIzL/+te/9NFHH2nevHnatm2b5syZo0mTJmnOnDmX3eeIESOUnp5unw4fPlyCFQMAgLLEpSMyzzzzjJ5//nn7uS6NGzfWwYMHlZCQoL59+yo4OFiSlJqaqpCQEPvrUlNT1axZs0L79PT0lKenZ6nXDgAAXM+lIzJ//fWXypVzLMHNzU35+fmSpFq1aik4OFhJSUn25RkZGdq4caOioqKuaq0AAKDscemITLdu3fTqq6+qRo0aatiwobZv367JkydrwIABkiSbzaahQ4fqlVdeUd26dVWrVi2NHDlSoaGh6tGjhytLBwAAZYBLg8y0adM0cuRIPfHEEzp27JhCQ0P16KOPatSoUfZ1nn32WWVmZuqRRx5RWlqa2rVrp2XLlsnLy8uFlQMAgLLAZi68je41KCMjQ35+fkpPT5evr2+h60Q+88FVrqps2vpaH1eXAACApOL9/pZ41hIAALAwggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAslwaZmjVrymazFZji4uIkSVlZWYqLi1OVKlXk4+OjXr16KTU11ZUlAwCAMsSlQWbz5s06evSofVqxYoUk6e6775YkDRs2TJ9//rkWLlyoNWvW6MiRI+rZs6crSwYAAGWIuys3Xq1aNYf58ePHq3bt2oqOjlZ6erpmzZqlefPmqUOHDpKkxMRE1a9fXxs2bNBNN93kipIBAEAZUmbOkcnJydGHH36oAQMGyGazaevWrcrNzVVMTIx9nYiICNWoUUPr168vsp/s7GxlZGQ4TAAA4NpUZoLM4sWLlZaWpn79+kmSUlJS5OHhIX9/f4f1goKClJKSUmQ/CQkJ8vPzs0/Vq1cvxaoBAIArlZkgM2vWLHXp0kWhoaFX1M+IESOUnp5unw4fPlxCFQIAgLLGpefInHfw4EGtXLlSixYtsrcFBwcrJydHaWlpDqMyqampCg4OLrIvT09PeXp6lma5AACgjCgTIzKJiYkKDAxU165d7W2RkZEqX768kpKS7G179uzRoUOHFBUV5YoyAQBAGePyEZn8/HwlJiaqb9++cnf/bzl+fn4aOHCg4uPjFRAQIF9fXw0ZMkRRUVFcsQQAACSVgSCzcuVKHTp0SAMGDCiwbMqUKSpXrpx69eql7OxsxcbG6u2333ZBlQAAoCyyGWOMq4soTRkZGfLz81N6erp8fX0LXSfymQ+uclVl09bX+ri6BAAAJBXv97dURs6RAQAAuBwEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkEGQAAYFkuf9YSAJSmNbdEu7qEMiF67RpXlwCUCkZkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZRFkAACAZbk8yPz+++968MEHVaVKFXl7e6tx48basmWLfbkxRqNGjVJISIi8vb0VExOjvXv3urBiAABQVrg0yJw8eVJt27ZV+fLltXTpUv300096/fXXVblyZfs6EydO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yAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMsiyAAAAMtyaZBJSEjQjTfeqEqVKikwMFA9evTQnj17HNbJyspSXFycqlSpIh8fH/Xq1UupqakuqhgAAJQlLg0ya9asUVxcnDZs2KAVK1YoNzdX//jHP5SZmWlfZ9iwYfr888+1cOFCrVmzRkeOHFHPnj1dWDUAACgr3F258WXLljnMz549W4GBgdq6datuueUWpaena9asWZo3b546dOggSUpMTFT9+vW1YcMG3XTTTa4oGwAAlBFl6hyZ9PR0SVJAQIAkaevWrcrNzVVMTIx9nYiICNWoUUPr168vtI/s7GxlZGQ4TAAA4Nrk0hGZC+Xn52vo0KFq27atGjVqJElKSUmRh4eH/P39HdYNCgpSSkpKof0kJCRozJgxpV0uinBobGNXl1Am1Bj1vatLAID/CWVmRCYuLk4//PCDFixYcEX9jBgxQunp6fbp8OHDJVQhAAAoa8rEiMzgwYP1xRdfaO3atbr++uvt7cHBwcrJyVFaWprDqExqaqqCg4ML7cvT01Oenp6lXTIAACgDXDoiY4zR4MGD9dlnn+nrr79WrVq1HJZHRkaqfPnySkpKsrft2bNHhw4dUlRU1NUuFwAAlDEuHZGJi4vTvHnz9O9//1uVKlWyn/fi5+cnb29v+fn5aeDAgYqPj1dAQIB8fX01ZMgQRUVFccUSAABwbZCZMWOGJKl9+/YO7YmJierXr58kacqUKSpXrpx69eql7OxsxcbG6u23377KlQIAgLLIpUHGGHPJdby8vDR9+nRNnz79KlQEAACspMxctQQAAOAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwAALAsggwA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KCoqSj4+PoqNjZWXl1eR23P2O1u+fHnNnz9fP//8s5o0aaIJEybolVdeufI3bnH33HOPJk2apFGjRqlZs2basWOHli1bZv/5aUU2c+EBRAAALqF9+/Zq1qzZRR/pYYxR3bp19cQTTyg+Pv6i/eXn56t+/frq3bu303fzBTi0BAAoUX/88YcWLFiglJSUQg9ZHDx4UF999ZWio6OVnZ2tt956S8nJybr//vtdUC2sjiADAChRgYGBqlq1qt59911Vrly5wPJy5cpp9uzZGj58uIwxatSokVauXGk/pwZwBoeWAACAZXGyLwAAsCyCDAAAsCyCDAAAsCyCDAAAsCyCDAAAsCyCDIAS88cff+jxxx9XjRo15OnpqeDgYMXGxha4Rb1V1axZ86I3gQNw9XEfGQAlplevXsrJydGcOXN0ww03KDU1VUlJSfrzzz9dXRqAaxQjMgBKRFpamr755htNmDBBt956q8LCwtSqVSuNGDFCd9xxh32dQYMGqVq1avL19VWHDh20c+dOh35eeeUVBQYGqlKlSho0aJCef/55NWvWzL68X79+6tGjh8aNG6egoCD5+/tr7NixOnv2rJ555hkFBATo+uuvV2JiokO/hw8fVu/eveXv76+AgAB1797d4ano5/udNGmSQkJCVKVKFcXFxSk3N1fSudvyHzx4UMOGDZPNZivyAYcAri6CDIAS4ePjIx8fHy1evFjZ2dmFrnP33Xfr2LFjWrp0qbZu3aoWLVqoY8eOOnHihCTpo48+0quvvqoJEyZo69atqlGjhmbMmFGgn6+//lpHjhzR2rVrNXnyZI0ePVq33367KleurI0bN+qxxx7To48+qt9++02SlJubq9jYWFWqVEnffPON1q1bJx8fH3Xu3Fk5OTn2fletWqX9+/dr1apVmjNnjmbPnq3Zs2dLkhYtWqTrr79eY8eO1dGjR3X06NES3oMALosBgBLyySefmMqVKxsvLy/Tpk0bM2LECLNz505jjDHffPON8fX1NVlZWQ6vqV27tnnnnXeMMca0bt3axMXFOSxv27atadq0qX2+b9++JiwszOTl5dnbwsPDzc0332yfP3v2rKlYsaKZP3++McaYuXPnmvDwcJOfn29fJzs723h7e5vly5c79Hv27Fn7Onfffbe555577PNhYWFmypQpl7NrAJQSRmQAlJhevXrpyJEj+s9//qPOnTtr9erVatGihWbPnq2dO3fq9OnTqlKlin30xsfHR8nJydq/f78kac+ePWrVqpVDn3+fl6SGDRuqXLn//vgKCgpS48aN7fNubm6qUqWKjh07JknauXOn9u3bp0qVKtm3GxAQoKysLPu2z/fr5uZmnw8JCbH3AaBs4mRfACXKy8tLnTp1UqdOnTRy5EgNGjRIo0eP1hNPPKGQkBCtXr26wGv8/f2d2kb58uUd5m02W6Ft+fn5kqTTp08rMjJSH330UYG+qlWrdtF+z/cBoGwiyAAoVQ0aNNDixYvVokULpaSkyN3dXTVr1ix03fDwcG3evFl9+vSxt23evPmKa2jRooU+/vhjBQYGytfX97L78fDwUF5e3hXXA6DkcGgJQIn4888/1aFDB3344YfatWuXkpOTtXDhQk2cOFHdu3dXTEyMoqKi1KNHD3311Vc6cOCAvvvuO73wwgvasmWLJGnIkCGaNWuW5syZo7179+qVV17Rrl27rvgKoQceeEBVq1ZV9+7d9c033yg5OVmrV6/Wk08+aT8huDhq1qyptWvX6vfff9fx48evqCYAJYMRGQAlwsfHR61bt9aUKVO0f/9+5ebmqnr16nr44Yf1f//3f7LZbFqyZIleeOEF9e/fX3/88YeCg4N1yy23KCgoSNK5wPHrr79q+PDhysrKUu/evdWvXz9t2rTpimqrUKGC1q5dq+eee049e/bUqVOndN1116ljx45OjdCMHTtWjz76qGrXrq3s7GwZY66oLgBXzmb4JgIowzp16qTg4GDNnTvX1aUAKIMYkQFQZvz111+aOXOmYmNj5ebmpvnz52vlypVasWKFq0sDUEYxIgOgzDhz5oy6deum7du3KysrS+Hh4XrxxRfVs2dPV5cGoIwiyAAAAMviqiUAAGBZBBkAAGBZBBkAAGBZBBkAAGBZBBkAAGBZBBkAAGBZBBkAAGBZBBkAAGBZBBkAAGBZ/w+OZ9CJqiFWjgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#print number of motorneurons in each segment\n", "\n", "indices = []\n", "segment_motor = {}\n", "for i in range(len(class_list)):\n", " if(class_list[i] == \"m\"):\n", " indices.append(i)\n", "\n", "for i in indices:\n", " if segment_list[i] == \"N/A\":\n", " continue\n", " \n", " if segment_list[i] not in segment_motor:\n", " segment_motor[segment_list[i]] = 1\n", " \n", " else:\n", " segment_motor[segment_list[i]] += 1\n", " \n", "sns.barplot(x=list(segment_motor.keys()), y=list(segment_motor.values())) \n", "plt.title(\"# of Motorneurons in Each Segment\")\n", "plt.xlabel(\"Segment\")\n", "plt.ylabel(\"# of Motorneurons\")\n", "plt.savefig(folder / \"neuron_count_motor_in_segments\")" ] }, { "cell_type": "code", "execution_count": 9, "id": "17953768", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
celltypecount
124
211
34
42
54
......
1762
1772
1784
1791
1802
\n", "

173 rows × 1 columns

\n", "
" ], "text/plain": [ "celltype count\n", "1 24\n", "2 11\n", "3 4\n", "4 2\n", "5 4\n", ".. ...\n", "176 2\n", "177 2\n", "178 4\n", "179 1\n", "180 2\n", "\n", "[173 rows x 1 columns]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#number of neurons in each celltype (specified by paper)\n", "annotations.fillna(\"N/A\")\n", "celltype_count = {}\n", "celltype_list = list(annotations[\"type\"])\n", "for i in range(len(celltype_list)):\n", " if celltype_list[i] == \"N/A\":\n", " continue\n", " \n", " if celltype_list[i] not in celltype_count:\n", " celltype_count[celltype_list[i]] = 1\n", " \n", " else:\n", " celltype_count[celltype_list[i]] += 1\n", "celltype_count = {int(k):v for k,v in celltype_count.items()}\n", "celltype_count = dict(sorted(celltype_count.items()))\n", "df = pd.DataFrame.from_dict(celltype_count, orient=\"index\", columns=[\"count\"])\n", "df = df.rename_axis('celltype', axis=1)\n", "df.to_csv(folder / \"neuron_count_neuronal_types.csv\")\n", "df" ] }, { "cell_type": "code", "execution_count": 10, "id": "a651ef2f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
cellgroupcount
195
245
3107
435
525
625
7108
816
944
108
116
1266
1331
143
1529
167
181
\n", "
" ], "text/plain": [ "cellgroup count\n", "1 95\n", "2 45\n", "3 107\n", "4 35\n", "5 25\n", "6 25\n", "7 108\n", "8 16\n", "9 44\n", "10 8\n", "11 6\n", "12 66\n", "13 31\n", "14 3\n", "15 29\n", "16 7\n", "18 1" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#number of neurons in each cellgroup (specified by paper)\n", "cellgroup_count = {}\n", "cellgroup_list = list(annotations[\"group\"])\n", "for i in range(len(cellgroup_list)):\n", " if cellgroup_list[i] == \"N/A\":\n", " continue\n", " if cellgroup_list[i] not in cellgroup_count:\n", " cellgroup_count[cellgroup_list[i]] = 1\n", " \n", " else:\n", " cellgroup_count[cellgroup_list[i]] += 1\n", "cellgroup_count = {int(k):v for k,v in cellgroup_count.items()}\n", "cellgroup_count = dict(sorted(cellgroup_count.items()))\n", "df = pd.DataFrame.from_dict(cellgroup_count, orient=\"index\", columns=[\"count\"])\n", "df = df.rename_axis('cellgroup', axis=1)\n", "df.to_csv(folder / \"neuron_count_groups.csv\")\n", "df" ] }, { "cell_type": "code", "execution_count": 11, "id": "0f066441", "metadata": {}, "outputs": [], "source": [ "# #number of cells in each non-neuronal celltype (TODO: make this a category in annotations?)\n", "# celltypes_non_neuronal = []\n", "# num_neurons = []\n", "# celltypes_non_neuronal_count = {}\n", "# for i, digit in enumerate(range(1, 91)):\n", "# celltypes_non_neuronal.append(\"celltype_non_neuronal{}\".format(str(digit)))\n", "# num_neurons.append(len(pymaid.get_skids_by_annotation(celltypes_non_neuronal[i])))\n", "# celltypes_non_neuronal_count[celltypes_non_neuronal[i]] = [num_neurons[i]]\n", "\n", "# df = pd.DataFrame.from_dict(celltypes_non_neuronal_count, orient=\"index\", columns=[\"count\"])\n", "# df.to_csv(folder / \"neuron_count_non_neuronal_types\")\n", "# print(df)" ] }, { "cell_type": "code", "execution_count": null, "id": "d0734d45", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "4522556a", "metadata": {}, "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.14" }, "vscode": { "interpreter": { "hash": "05d7d67d23128fda5aee0f3c1f672c43b20cf6e18657219ebf6bef6cae5bc4b2" } } }, "nbformat": 4, "nbformat_minor": 5 }