septum-mec/actions/waveform-analysis/data/10_waveform_analysis.ipynb

1508 lines
204 KiB
Plaintext
Raw Normal View History

2019-10-08 14:00:27 +00:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [],
"source": [
"import os\n",
"import expipe\n",
"import pathlib\n",
"import numpy as np\n",
"import spatial_maps.stats as stats\n",
"import septum_mec\n",
"import septum_mec.analysis.data_processing as dp\n",
"import septum_mec.analysis.registration\n",
"import head_direction.head as head\n",
"import spatial_maps as sp\n",
"import speed_cells.speed as spd\n",
"import re\n",
"import joblib\n",
"import multiprocessing\n",
"import shutil\n",
"import psutil\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from distutils.dir_util import copy_tree\n",
"from neo import SpikeTrain\n",
"import scipy\n",
"\n",
"from tqdm import tqdm_notebook as tqdm\n",
"from tqdm._tqdm_notebook import tqdm_notebook\n",
"tqdm_notebook.pandas()\n",
"\n",
"from spike_statistics.core import permutation_resampling\n",
"\n",
"from spikewaveform.core import calculate_waveform_features_from_template, cluster_waveform_features\n",
"\n",
"from septum_mec.analysis.plotting import violinplot"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"color_control = '#4393c3'\n",
"color_stimulated = '#d6604d'\n",
"\n",
"color_bs = '#5aae61'\n",
"color_ns = '#9970ab'\n",
"\n",
"figsize_violin = (1.7, 3)\n",
"figsize_gen = (4, 3)\n",
"\n",
"output_path = pathlib.Path(\"output\") / \"waveform-analysis\"\n",
"(output_path / \"statistics\").mkdir(exist_ok=True, parents=True)\n",
"(output_path / \"figures\").mkdir(exist_ok=True, parents=True)\n",
"output_path.mkdir(exist_ok=True)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"data_loader = dp.Data()\n",
"actions = data_loader.actions\n",
"project = data_loader.project"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"N cells: 1281\n"
]
}
],
"source": [
"identify_neurons = actions['identify-neurons']\n",
"sessions = pd.read_csv(identify_neurons.data_path('sessions'))\n",
"units = pd.read_csv(identify_neurons.data_path('units'))\n",
"session_units = pd.merge(sessions, units, on='action')\n",
"#########################3\n",
"# session_units = session_units.drop_duplicates('unit_id')\n",
"#################################\n",
"print('N cells:',session_units.shape[0])"
]
},
{
"cell_type": "code",
"execution_count": 6,
"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>action</th>\n",
" <th>control</th>\n",
" <th>entity</th>\n",
" <th>frequency</th>\n",
" <th>session</th>\n",
" <th>stim_location</th>\n",
" <th>stimulated</th>\n",
" <th>tag</th>\n",
" <th>channel_group</th>\n",
" <th>unit_name</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1849-060319-3</td>\n",
" <td>True</td>\n",
" <td>1849</td>\n",
" <td>NaN</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline ii</td>\n",
" <td>1</td>\n",
" <td>104</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1849-060319-3</td>\n",
" <td>True</td>\n",
" <td>1849</td>\n",
" <td>NaN</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline ii</td>\n",
" <td>1</td>\n",
" <td>108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1849-060319-3</td>\n",
" <td>True</td>\n",
" <td>1849</td>\n",
" <td>NaN</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline ii</td>\n",
" <td>1</td>\n",
" <td>85</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1849-060319-3</td>\n",
" <td>True</td>\n",
" <td>1849</td>\n",
" <td>NaN</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline ii</td>\n",
" <td>1</td>\n",
" <td>94</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1849-060319-3</td>\n",
" <td>True</td>\n",
" <td>1849</td>\n",
" <td>NaN</td>\n",
" <td>3</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline ii</td>\n",
" <td>1</td>\n",
" <td>98</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" action control entity frequency session stim_location \\\n",
"0 1849-060319-3 True 1849 NaN 3 NaN \n",
"1 1849-060319-3 True 1849 NaN 3 NaN \n",
"2 1849-060319-3 True 1849 NaN 3 NaN \n",
"3 1849-060319-3 True 1849 NaN 3 NaN \n",
"4 1849-060319-3 True 1849 NaN 3 NaN \n",
"\n",
" stimulated tag channel_group unit_name \n",
"0 False baseline ii 1 104 \n",
"1 False baseline ii 1 108 \n",
"2 False baseline ii 1 85 \n",
"3 False baseline ii 1 94 \n",
"4 False baseline ii 1 98 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"session_units.head()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f06055511d0>"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"session_units.groupby('action').count().unit_name.hist()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Process all data"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"def features(row):\n",
" action_id = row['action']\n",
" channel_id = row['channel_group']\n",
" unit = row['unit_name']\n",
" template = data_loader.template(action_id, channel_id, unit)\n",
" spike_times = data_loader.spike_train(action_id, channel_id, unit)\n",
" half_widths, peak_to_troughs = calculate_waveform_features_from_template(\n",
" template.data, template.sampling_rate)\n",
" peak_amps = template.data.min(axis=1)\n",
" half_widths = half_widths * 1000 # to ms\n",
" peak_to_troughs = peak_to_troughs * 1000 # to ms\n",
" idxs = np.argsort(peak_amps)\n",
" peak_to_trough = np.nan\n",
" for p2t in peak_to_troughs[idxs]:\n",
" if np.isfinite(p2t) and p2t > .1:\n",
" peak_to_trough = p2t\n",
" break\n",
" half_width = np.nan\n",
" for hw in half_widths[idxs]:\n",
" if np.isfinite(hw):\n",
" half_width = hw\n",
" break\n",
" \n",
" return pd.Series({\n",
" 'half_width': half_width,\n",
" 'peak_to_trough': peak_to_trough,\n",
" 'average_firing_rate': float(len(spike_times) / spike_times.t_stop),\n",
" 'template': template.data[idxs[0]]\n",
" })"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "4e27da53954b492ba7a0ab4933847df2",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"HBox(children=(IntProgress(value=0, max=1281), HTML(value='')))"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n"
]
}
],
"source": [
"results = session_units.merge(\n",
" session_units.progress_apply(features, axis=1), \n",
" left_index=True, right_index=True)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"df = results.loc[:, ['half_width', 'peak_to_trough']].dropna()\n",
"\n",
"idxs_df = cluster_waveform_features(df.half_width, df.peak_to_trough)\n",
"\n",
"results.loc[df.index, 'bs'] = idxs_df"
]
},
{
"cell_type": "code",
"execution_count": 86,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_gen)\n",
"size = 5\n",
"mew = .5\n",
"marker_bs = '.'\n",
"marker_ns = '+'\n",
"\n",
"plt.scatter(\n",
" results.query('bs==0')['half_width'], \n",
" results.query('bs==0')['peak_to_trough'], \n",
" c=color_ns, s=size, marker=marker_ns, linewidth=mew, label='NS')\n",
"\n",
"plt.scatter(\n",
" results.query('bs==1')['half_width'], \n",
" results.query('bs==1')['peak_to_trough'], \n",
" c=color_bs, s=size, marker=marker_bs, linewidth=mew, label='BS')\n",
"\n",
"plt.xlabel('half width')\n",
"plt.ylabel('peak to through')\n",
"\n",
"plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
" mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"clusters.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"clusters.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_gen)\n",
"\n",
"size = 5\n",
"mew = .5\n",
"marker_bs = '.'\n",
"marker_ns = '+'\n",
"\n",
"plt.scatter(\n",
" results.query('bs==0')['half_width'], \n",
" results.query('bs==0')['peak_to_trough'], \n",
" c=color_ns, s=size, marker=marker_ns, linewidth=mew, label='NS')\n",
"\n",
"plt.scatter(\n",
" results.query('bs==1')['half_width'], \n",
" results.query('bs==1')['peak_to_trough'], \n",
" c=color_bs, s=size, marker=marker_bs, linewidth=mew, label='BS')\n",
"\n",
"plt.scatter(\n",
" results.query('bs==1 and average_firing_rate > 10')['half_width'], \n",
" results.query('bs==1 and average_firing_rate > 10')['peak_to_trough'], \n",
" c='red', s=size, marker=marker_bs, linewidth=mew, label='BS rate > 10 Hz')\n",
"\n",
"plt.xlabel('half width')\n",
"plt.ylabel('peak to through')\n",
"\n",
"plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
" mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"clusters_and_rate.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"clusters_and_rate.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [],
"source": [
"stim = results.query('stimulated').loc[:, ['half_width', 'peak_to_trough']].dropna()\n",
"\n",
"idxs_stim = cluster_waveform_features(stim.half_width, stim.peak_to_trough)\n",
"\n",
"results.loc[stim.index, 'bs_stim'] = idxs_stim"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [],
"source": [
"control = results.query('not stimulated').loc[:, ['half_width', 'peak_to_trough']].dropna()\n",
"\n",
"idxs_control = cluster_waveform_features(control.half_width, control.peak_to_trough)\n",
"\n",
"results.loc[control.index, 'bs_ctrl'] = idxs_control"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_gen)\n",
"size = 5\n",
"mew = .5\n",
"marker_bs = '.'\n",
"marker_ns = '+'\n",
"plt.scatter(\n",
" results.query('bs_stim==0')['half_width'], \n",
" results.query('bs_stim==0')['peak_to_trough'], \n",
" c=color_stimulated, s=size, marker=marker_ns, \n",
" linewidth=mew, label='Stimulated NS', alpha=.5)\n",
"\n",
"plt.scatter(\n",
" results.query('bs_stim==1')['half_width'], \n",
" results.query('bs_stim==1')['peak_to_trough'], \n",
" c=color_stimulated, s=size, marker=marker_bs, \n",
" linewidth=mew, label='Stimulated BS', alpha=.5)\n",
"\n",
"\n",
"plt.scatter(\n",
" results.query('bs_ctrl==0')['half_width'], \n",
" results.query('bs_ctrl==0')['peak_to_trough'], \n",
" c=color_control, s=size, marker=marker_ns, \n",
" linewidth=mew, label='Control NS', alpha=.5)\n",
"\n",
"plt.scatter(\n",
" results.query('bs_ctrl==1')['half_width'], \n",
" results.query('bs_ctrl==1')['peak_to_trough'], \n",
" c=color_control, s=size, marker=marker_bs, \n",
" linewidth=mew, label='Control BS', alpha=.5)\n",
"\n",
"plt.xlabel('half width')\n",
"plt.ylabel('peak to through')\n",
"plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
" mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"compare-clusters.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"compare-clusters.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [],
"source": [
"results.average_firing_rate = results.apply(lambda x: float(x.average_firing_rate), axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 64,
"metadata": {},
"outputs": [],
"source": [
"results.frequency = results.apply(\n",
" lambda x: \n",
" float(x.frequency.replace('Hz', '')) if isinstance(x.frequency, str) \n",
" else float(x.frequency), axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 74,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins=100\n",
"density=True\n",
"cumulative=True\n",
"histtype='step'\n",
"lw = 2\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Narrow spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==0')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw, label='Control');\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==0')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw, label='Stimulated');\n",
"\n",
"plt.xlim(-.5, 56)\n",
"# plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
"# mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins=100\n",
"density=True\n",
"cumulative=True\n",
"histtype='step'\n",
"lw = 2\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Narrow spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==0')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw, label='Control');\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==0 and frequency==30')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw, label='Stimulated');\n",
"\n",
"plt.xlim(-.5, 56)\n",
"# plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
"# mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns_30.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns_30.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins=100\n",
"density=True\n",
"cumulative=True\n",
"histtype='step'\n",
"lw = 2\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Narrow spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==0')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw, label='Control');\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==0 and frequency==11')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw, label='Stimulated');\n",
"\n",
"plt.xlim(-.5, 56)\n",
"# plt.legend(bbox_to_anchor=(0,1.02,1,0.2), loc=\"lower left\",\n",
"# mode=\"expand\", borderaxespad=0, ncol=2)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns_11.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_ns_11.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins = 100\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Broad spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==1')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw);\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==1')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw);\n",
"\n",
"plt.xlim(-.5, 44)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins = 100\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Broad spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==1')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw);\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==1 and frequency==11')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw);\n",
"\n",
"plt.xlim(-.5, 44)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs_11.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs_11.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAQUAAADPCAYAAAD8ksT3AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAADwlJREFUeJzt3XnMHHUdx/H3UygUoaAIeDSEw8JXIqEoSIEWKEk5FVAkgFWhoFSiyJkUuQQUaOQQsVVRagENyFkuQQsVuVoMZ5GW+iUlgRAObZFyFyh9/GNm25nt7j6zz8zszOx+Xgnh2d3p7m8K+3m+853fzK+vv78fEZGaIUUPQETKRaEgIjEKBRGJUSiISIxCQURiFAoiErNm0QOQ5sxsc+A54OnwqTWAd4GT3X1OTp+5EbDY3fsyeK8DgfHufryZ3QdMc/eb6raZDlzn7rPTfp5kQ6FQfu+5+/a1B2Z2KHAVsFVhI0rI3W8Hbh9gm+91aDiSkEKhej4JvAJgZuOAy4B3gHWBnYAjgeOBj4D/AMe5+7NmtjXwa2A94LPAPOAwd19mZgcD5xNUIY82+2AzOxf4OvAB8Bow0d1fMbPlwC+BPcNxnO7uM81sInCIu3818h5rAtcCH4ZjnQ1MAx4D/g7cBYwGNgTOcPfrzexjwOXAzsBS4BkAd584qL9BaUk9hfJbx8zmhf+8QBACUyKvbwt8091HAWOAycCe4eNrgVvNrA84Brja3XcBRgJbAF8xs08BM4BvuPsOwAuNBmFmmwInAl929x2Buwm+vBAc1vwv/POHAjPMbOMGb7MWcCPwX+Db7r687vUtgVnuvhNwKnBh+PxZBL/APg+MB77Y+q9M0lAolN977r59+M9mwDjgOjPbInz9RXevfZH3Ba5398UA7n4VMALYnOBLttjMJgO/JagW1gPGAk+7+zPhe/yuyTheAp4CnjCzi4F57n5r5PVp4Wf+i6AHsnuD97gE2Av4mbs3ml//IUGlAPAEQbUAsD/wB3df4e5vAlc3GaNkQKFQMe4+F3CCQwWAtyMvN/rv2QcMBf4MTCKoBC4l+NL1Af3hv2vqf3vXPncFsAcwkeDQ4VIzu6zJnxtCcPhS708EgXRFo88APgg/h7pxLa8bY6P3lowoFCom7A1sDTzZ4OVZwGG10t3MjiL4Ai8C9gF+6u7XE3zhRhOU/Q8CXzCzUeF7TGzyuaOA+cBCd59CECyjIpscEW73JYIy//4Gb/MIwaHASDM7JuEuA9wJHGVmQ8L+woRwHyQHCoXyi/YU5gE3AZPc/dn6Dd39HoIv671mtoCgkffV8Lfv6cAtZvYYQdPufmBkeKgxAbjGzJ4g6DWsxt2fAm4AHgvf42jgpMgmY8I/P4Oggfl6k/dZRhA8F5nZ5xL+HUwBlhEclswm6Em8m/DPSpv6dOm0pGVm/cDG7r4kp/c/HHjT3e8ysyHAzcDd7v7bPD6v16lSkCqYD5wRVkrzgZeB6cUOqXupUhCRGFUKIhKjUBCRGIWCiMR0/NqH0aNH948YMaLTHyvS8xYsWLDE3RtNP4/peCiMGDGCmTNndvpjRXpeeO3MgHT4ICIxCgURiUkUCmY2OrxzTv3zB5jZo2b2cJtz2UWkpAYMhfBS2+nAsLrnhxLMs9+b4Oq5SeG1+SJSYUkajc8BBxNc9hq1DbCoduGLmT1EcA39jZmOUKSCFh51YNFDGLQBQ8Hdbw5vIFpvfeCNyOO3gA0yGpdIR4yf9lDibac+fuHAG3WBNKck3wSGRx4PJ7h/nkgp1H/hG32pp+Y8hh/tMDnnT2jD3O8m2ixNKCwEtjKzDQnu/rM7cHGK9xNJpb5kz+sLv82VLW9QHVOm+9Zbwr+QtkPBzCYA67n7783sZIK7/QwBZrj7S+2+n8hgNCr7k4ZAO1/qXpQoFNz9eYLba+Pu10aevwO4I5eRSc+qfeFbHcO3CgB96dPRug9SmHaafNI5CgXpqCRBUF8h6Dd/ZykUJBfNOv95d/slPYWCZKZh8y/FuX1VCMVQKEhq7fQG9EUvP4WCZKZVVaAwqA6Fggyazh50J4WCJFY/f6BZ01BVQbUpFKSlaDXQKxcE9TqFgjSU5NBAFUF3UihITJIrCxUG3U2hIICahrKKQkEa0lTj3qVQ6GFZz0CU7qBQkJZUIfQehYIw+7ixq921SGHQuxQKPagWAFNXPtYhg6yiUOghK2cktthGFYIoFHqIzihIEgqFHpCkQhCpUSh0sWYTklQhSCsKhS6juQeSlpaiF5EYVQpdor5CmH3c2JU/10456rBBkhgwFMxsCPAbYBTwPvA9d18Uef0UYAKwArjA3W/Jaawi0gFJKoWvAcPcfRcz2xm4BDgIwMw+DpwAjATWBeYBCoUOal0hVHc5dClOkp7CWOBvAO7+T2DHyGvvAC8QBMK6BNWCiFRYkkphfeCNyOOPzGxNd18ePn4ReAZYA5iS8fgkoVqF0Kg6UC9B2pEkFN4EhkceD4kEwn7AZ4AtwsezzGyOuz+S4RilAd0URfKSJBTmAAcAN4Q9hacjr70OvAe87+79ZrYU+Hj2w5SB6CpHyUqSULgF2MvM5gJ9wFFmdjKwyN1vN7PxwD/NbAXwEHBPfsOVZo1FXekoWRkwFNx9BXBs3dP/jrx+NnB2xuOSQVKFIGlp8lJFtWosiqShUKgANRWlkxQKFVO7uKm+h6DDBsmKLogqsfHTHopVCdHZiiJ5UaVQQlqyTYqkUCiRZmHQ7JBBJA8KhYK1qgo0B0GKoFAooWa9Ax0ySCcoFArS6pJnkSIpFEpME5OkCAqFgqlCkLJRKHRYktONuuJRiqTJSyISo0qhQwbTWFSFIEVQpSAiMaoUctZOhaCzDVIGqhREJEaVQg4anWFo59SjeglSJIVChnQzFOkGCoUcJakO1EeQslEoZEDXMUg3USiUhPoIUhYKhRTSVAg6bJCyymIp+v0I1n3oAx4Hfuju/fkMt/oUBlJ2aZeiHw5cBIxz9yVmNhnYCFic14CLlvZ0Yz0dNkjZJAmF2FL0ZhZdin5XgrUlLzGzLYHp7t61gTAYzSoDhYGUVdql6DcC9gS2B94GHjSzh9392eyHWi6arizdKu1S9K8Bj7r7qwBm9gBBQHRdKKSdmKTKQKoi7VL0TwDbmtlGwFJgZ+CKzEdZUQoCqaIslqI/DZgVbnuDu8/PaayloIlJ0u2yWIr+OuC6jMdVSeolSDfQpdMiEqMZjQMYTINRvQSpMlUKIhKjSiEhzUuQXqFQaEI3TJFepVBIQYu2SDdSKAxA8xKk1ygU6uhsg/Q6hUKb1FSUbqdQIPt7JIhUmUJhkHTIIN1KoRChuQgiPR4KmosgsrqeDoUkNBdBeo1CATUVRaIUCk2oQpBe1ZOhoF6CSHM9GQqtqEKQXtfToaBegsjqeioU2jlsUIUgvUp3XhKRmJ6qFGrqDxs0W1Fkla4PBZ1pEGlP6qXoI9vcCdzm7pfnMdBOUB9BJOVS9BHnAZ/IenBp1FcIjc406LBBZHVJGo2xpeiB6FL0mNkhwIraNiJSbamWojezbYEJwCHAT/IYYLuSVAj1dNggskrapeiPAEYA9wKbAx+Y2fPuXsqqQYcLIgNLtRS9u0+u/Wxm5wCvliUQNFtRZHBSL0Wf6+jaoNmKItlIvRR9ZLtzMhqTiBSo6yYv6bBBJJ2uC4V6ai6KtEcXRIlITOUrhaQNRjUXRZJRpSAiMZWvFGp0ObRINlQpiEhMJSsFTVQSyY8qBRGJqWSlUKN7JIhkT5WCiMRUulJoRb0EkcGpVCjoJqwi+atUKLSiXoJINioZCtEGo8JAJFuVDIVW1EsQSadrQkFhIJKNSoSCGowinVOJUKinPoJIfio1eWn2cWN1uzWRnFWyUqhRH0Eke6UOBfUSRDqvUocPIpK/1EvRm9lJwOHhw7vc/dysB6k+gkjnJKkUVi5FD/yYYCl6AMxsS+BbwK7AzsDeZrZdHgMVkc5I0lOILUVvZtGl6F8E9nX3jwDMbCiwLPNRhnQqUiR/qZaid/cPgSVm1gdcBDzp7s+mGZCaiyLFSrsUPWY2DJg
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"bins = 100\n",
"\n",
"plt.figure(figsize=figsize_gen)\n",
"plt.title('Broad spiking')\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_ctrl==1')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_control, lw=lw);\n",
"\n",
"_, bins, _ = plt.hist(\n",
" results.query('bs_stim==1 and frequency==30')['average_firing_rate'], \n",
" bins=bins, density=density, cumulative=cumulative, \n",
" histtype=histtype, color=color_stimulated, lw=lw);\n",
"\n",
"plt.xlim(-.5, 44)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs_30.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"cumulative_bs_30.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"U-test: U value 104995.0 p value 0.047251399227811186\n",
"U-test: U value 13472.0 p value 0.6449484150738996\n"
]
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_violin)\n",
"# test = 'permutation_resampling'\n",
"test = 'mann_whitney'\n",
"\n",
"plt.title('Broad spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==1')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==1')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs.png\", dpi=600, bbox_inches=\"tight\")\n",
"\n",
"plt.figure(figsize=figsize_violin)\n",
"plt.title('Narrow spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==0')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==0')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"U-test: U value 63173.0 p value 0.3220377333457417\n",
"U-test: U value 8043.0 p value 0.32905688838219194\n"
]
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_violin)\n",
"# test = 'permutation_resampling'\n",
"test = 'mann_whitney'\n",
"\n",
"plt.title('Broad spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==1')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==1 and frequency==11')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs_11.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs_11.png\", dpi=600, bbox_inches=\"tight\")\n",
"\n",
"plt.figure(figsize=figsize_violin)\n",
"plt.title('Narrow spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==0')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==0 and frequency==11')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns_11.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns_11.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 82,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"U-test: U value 41822.0 p value 0.016842133424593897\n",
"U-test: U value 5429.0 p value 0.7318233387867226\n"
]
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 122.4x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_violin)\n",
"# test = 'permutation_resampling'\n",
"test = 'mann_whitney'\n",
"\n",
"plt.title('Broad spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==1')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==1 and frequency==30')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_bs.png\", dpi=600, bbox_inches=\"tight\")\n",
"\n",
"plt.figure(figsize=figsize_violin)\n",
"plt.title('Narrow spiking')\n",
"violinplot(\n",
" results.query('bs_ctrl==0')['average_firing_rate'].to_numpy(), \n",
" results.query('bs_stim==0 and frequency==30')['average_firing_rate'].to_numpy(), \n",
" test=test)\n",
"\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns_30.svg\", bbox_inches=\"tight\")\n",
"plt.savefig(output_path / \"figures\" / \"rates_ns_30.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "code",
"execution_count": 101,
"metadata": {},
"outputs": [],
"source": [
"columns = [\n",
" 'average_firing_rate',\n",
" 'half_width',\n",
" 'peak_to_trough'\n",
"]\n",
"\n",
"\n",
"def summarize(data):\n",
" return \"{:.2f} ± {:.2f} ({})\".format(data.mean(), data.sem(), sum(~np.isnan(data)))\n",
"\n",
"\n",
"bs = pd.DataFrame()\n",
"\n",
"bs['Control'] = results.query('bs_ctrl==1')[columns].agg(summarize)\n",
"bs['Stimulated'] = results.query('bs_stim==1')[columns].agg(summarize)\n",
"\n",
"ns = pd.DataFrame()\n",
"\n",
"ns['Control'] = results.query('bs_ctrl==0')[columns].agg(summarize)\n",
"ns['Stimulated'] = results.query('bs_stim==0')[columns].agg(summarize)\n",
"\n",
"\n",
"def MWU(column, df, cluster, extra):\n",
" '''\n",
" Mann Whitney U\n",
" '''\n",
" Uvalue, pvalue = scipy.stats.mannwhitneyu(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {}'.format(cluster, extra))[column].dropna(),\n",
" alternative='two-sided')\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(Uvalue, pvalue)\n",
"\n",
"\n",
"def PRS(column, df, cluster, extra):\n",
" '''\n",
" Permutation ReSampling\n",
" '''\n",
" pvalue, observed_diff, diffs = permutation_resampling(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {}'.format(cluster, extra))[column].dropna())\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(observed_diff, pvalue)\n",
"\n",
"\n",
"bs['MWU'] = list(map(lambda x: MWU(x, results, 1, ''), columns))\n",
"bs['PRS'] = list(map(lambda x: PRS(x, results, 1, ''), columns))\n",
"\n",
"ns['MWU'] = list(map(lambda x: MWU(x, results, 0, ''), columns))\n",
"ns['PRS'] = list(map(lambda x: PRS(x, results, 0, ''), columns))\n",
"\n",
"bs.to_latex(output_path / \"statistics\" / \"broad_spiking.tex\")\n",
"bs.to_csv(output_path / \"statistics\" / \"broad_spiking.csv\")\n",
"\n",
"ns.to_latex(output_path / \"statistics\" / \"narrow_spiking.tex\")\n",
"ns.to_csv(output_path / \"statistics\" / \"narrow_spiking.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 99,
"metadata": {},
"outputs": [],
"source": [
"columns = [\n",
" 'average_firing_rate',\n",
" 'half_width',\n",
" 'peak_to_trough'\n",
"]\n",
"\n",
"\n",
"def summarize(data):\n",
" return \"{:.2f} ± {:.2f} ({})\".format(data.mean(), data.sem(), sum(~np.isnan(data)))\n",
"\n",
"\n",
"bs = pd.DataFrame()\n",
"\n",
"bs['Control'] = results.query('bs_ctrl==1')[columns].agg(summarize)\n",
"bs['Stimulated'] = results.query('bs_stim==1 and frequency==11')[columns].agg(summarize)\n",
"\n",
"ns = pd.DataFrame()\n",
"\n",
"ns['Control'] = results.query('bs_ctrl==0')[columns].agg(summarize)\n",
"ns['Stimulated'] = results.query('bs_stim==0 and frequency==11')[columns].agg(summarize)\n",
"\n",
"\n",
"def MWU(column, df, cluster, extra):\n",
" '''\n",
" Mann Whitney U\n",
" '''\n",
" Uvalue, pvalue = scipy.stats.mannwhitneyu(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {} and frequency==11'.format(cluster, extra))[column].dropna(),\n",
" alternative='two-sided')\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(Uvalue, pvalue)\n",
"\n",
"\n",
"def PRS(column, df, cluster, extra):\n",
" '''\n",
" Permutation ReSampling\n",
" '''\n",
" pvalue, observed_diff, diffs = permutation_resampling(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {} and frequency==11'.format(cluster, extra))[column].dropna())\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(observed_diff, pvalue)\n",
"\n",
"\n",
"bs['MWU'] = list(map(lambda x: MWU(x, results, 1, ''), columns))\n",
"bs['PRS'] = list(map(lambda x: PRS(x, results, 1, ''), columns))\n",
"\n",
"ns['MWU'] = list(map(lambda x: MWU(x, results, 0, ''), columns))\n",
"ns['PRS'] = list(map(lambda x: PRS(x, results, 0, ''), columns))\n",
"\n",
"bs.to_latex(output_path / \"statistics\" / \"broad_spiking_11.tex\")\n",
"bs.to_csv(output_path / \"statistics\" / \"broad_spiking_11.csv\")\n",
"\n",
"ns.to_latex(output_path / \"statistics\" / \"narrow_spiking_11.tex\")\n",
"ns.to_csv(output_path / \"statistics\" / \"narrow_spiking_11.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 100,
"metadata": {},
"outputs": [],
"source": [
"columns = [\n",
" 'average_firing_rate',\n",
" 'half_width',\n",
" 'peak_to_trough'\n",
"]\n",
"\n",
"\n",
"def summarize(data):\n",
" return \"{:.2f} ± {:.2f} ({})\".format(data.mean(), data.sem(), sum(~np.isnan(data)))\n",
"\n",
"\n",
"bs = pd.DataFrame()\n",
"\n",
"bs['Control'] = results.query('bs_ctrl==1')[columns].agg(summarize)\n",
"bs['Stimulated'] = results.query('bs_stim==1 and frequency==30')[columns].agg(summarize)\n",
"\n",
"ns = pd.DataFrame()\n",
"\n",
"ns['Control'] = results.query('bs_ctrl==0')[columns].agg(summarize)\n",
"ns['Stimulated'] = results.query('bs_stim==0 and frequency==30')[columns].agg(summarize)\n",
"\n",
"\n",
"def MWU(column, df, cluster, extra):\n",
" '''\n",
" Mann Whitney U\n",
" '''\n",
" Uvalue, pvalue = scipy.stats.mannwhitneyu(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {} and frequency==30'.format(cluster, extra))[column].dropna(),\n",
" alternative='two-sided')\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(Uvalue, pvalue)\n",
"\n",
"\n",
"def PRS(column, df, cluster, extra):\n",
" '''\n",
" Permutation ReSampling\n",
" '''\n",
" pvalue, observed_diff, diffs = permutation_resampling(\n",
" df.query('bs_ctrl=={} {}'.format(cluster, extra))[column].dropna(), \n",
" df.query('bs_stim=={} {} and frequency==30'.format(cluster, extra))[column].dropna())\n",
"\n",
" return \"{:.2f}, {:.3f}\".format(observed_diff, pvalue)\n",
"\n",
"\n",
"bs['MWU'] = list(map(lambda x: MWU(x, results, 1, ''), columns))\n",
"bs['PRS'] = list(map(lambda x: PRS(x, results, 1, ''), columns))\n",
"\n",
"ns['MWU'] = list(map(lambda x: MWU(x, results, 0, ''), columns))\n",
"ns['PRS'] = list(map(lambda x: PRS(x, results, 0, ''), columns))\n",
"\n",
"bs.to_latex(output_path / \"statistics\" / \"broad_spiking_30.tex\")\n",
"bs.to_csv(output_path / \"statistics\" / \"broad_spiking_30.csv\")\n",
"\n",
"ns.to_latex(output_path / \"statistics\" / \"narrow_spiking_30.tex\")\n",
"ns.to_csv(output_path / \"statistics\" / \"narrow_spiking_30.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 97,
"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>Control</th>\n",
" <th>Stimulated</th>\n",
" <th>MWU</th>\n",
" <th>PRS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>average_firing_rate</th>\n",
" <td>9.53 ± 0.37 (491)</td>\n",
" <td>10.62 ± 0.44 (462)</td>\n",
" <td>104995.00, 0.047</td>\n",
" <td>1.09, 0.058</td>\n",
" </tr>\n",
" <tr>\n",
" <th>half_width</th>\n",
" <td>0.30 ± 0.00 (491)</td>\n",
" <td>0.30 ± 0.00 (462)</td>\n",
" <td>116089.00, 0.530</td>\n",
" <td>0.00, 0.420</td>\n",
" </tr>\n",
" <tr>\n",
" <th>peak_to_trough</th>\n",
" <td>0.66 ± 0.00 (491)</td>\n",
" <td>0.67 ± 0.01 (462)</td>\n",
" <td>116944.00, 0.407</td>\n",
" <td>0.00, 0.522</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Control Stimulated MWU \\\n",
"average_firing_rate 9.53 ± 0.37 (491) 10.62 ± 0.44 (462) 104995.00, 0.047 \n",
"half_width 0.30 ± 0.00 (491) 0.30 ± 0.00 (462) 116089.00, 0.530 \n",
"peak_to_trough 0.66 ± 0.00 (491) 0.67 ± 0.01 (462) 116944.00, 0.407 \n",
"\n",
" PRS \n",
"average_firing_rate 1.09, 0.058 \n",
"half_width 0.00, 0.420 \n",
"peak_to_trough 0.00, 0.522 "
]
},
"execution_count": 97,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bs"
]
},
{
"cell_type": "code",
"execution_count": 98,
"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>Control</th>\n",
" <th>Stimulated</th>\n",
" <th>MWU</th>\n",
" <th>PRS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>average_firing_rate</th>\n",
" <td>21.22 ± 1.17 (147)</td>\n",
" <td>20.20 ± 0.96 (178)</td>\n",
" <td>13472.00, 0.645</td>\n",
" <td>1.02, 0.501</td>\n",
" </tr>\n",
" <tr>\n",
" <th>half_width</th>\n",
" <td>0.23 ± 0.01 (147)</td>\n",
" <td>0.23 ± 0.00 (178)</td>\n",
" <td>12839.00, 0.773</td>\n",
" <td>0.01, 0.454</td>\n",
" </tr>\n",
" <tr>\n",
" <th>peak_to_trough</th>\n",
" <td>0.29 ± 0.00 (147)</td>\n",
" <td>0.29 ± 0.00 (178)</td>\n",
" <td>13194.50, 0.895</td>\n",
" <td>0.00, 0.893</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Control Stimulated MWU \\\n",
"average_firing_rate 21.22 ± 1.17 (147) 20.20 ± 0.96 (178) 13472.00, 0.645 \n",
"half_width 0.23 ± 0.01 (147) 0.23 ± 0.00 (178) 12839.00, 0.773 \n",
"peak_to_trough 0.29 ± 0.00 (147) 0.29 ± 0.00 (178) 13194.50, 0.895 \n",
"\n",
" PRS \n",
"average_firing_rate 1.02, 0.501 \n",
"half_width 0.01, 0.454 \n",
"peak_to_trough 0.00, 0.893 "
]
},
"execution_count": 98,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# example waveforms"
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {},
"outputs": [],
"source": [
"def normalize(a):\n",
" t = a - a.min()\n",
" return t / t.max()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"'half_width','peak_to_trough'"
]
},
{
"cell_type": "code",
"execution_count": 142,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f05ec0bc7f0>]"
]
},
"execution_count": 142,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 288x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=figsize_gen)\n",
"\n",
"\n",
"lw = 3\n",
"\n",
"row = results.query('bs==1').sort_values('half_width', ascending=False).iloc[50]\n",
"template = data_loader.template(\n",
" row.action, row.channel_group, row.unit_name)\n",
"\n",
"mean_wf = template.data\n",
"peak_wf = mean_wf[np.argmin(mean_wf.min(1))]\n",
"plt.plot(normalize(peak_wf.T), color=color_bs, lw=lw)\n",
"\n",
"\n",
"row = results.query('bs==0').sort_values('half_width').iloc[10]\n",
"template = data_loader.template(\n",
" row.action, row.channel_group, row.unit_name)\n",
"\n",
"mean_wf = template.data\n",
"peak_wf = mean_wf[np.argmin(mean_wf.min(1))]\n",
"plt.plot(normalize(peak_wf.T), color=color_ns, lw=lw)\n",
"\n",
"# plt.savefig(output_path / \"figures\" / \"example_waveforms.svg\", bbox_inches=\"tight\")\n",
"# plt.savefig(output_path / \"figures\" / \"example_waveforms.png\", dpi=600, bbox_inches=\"tight\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Store results in Expipe action"
]
},
{
"cell_type": "code",
"execution_count": 105,
"metadata": {},
"outputs": [],
"source": [
"action = project.require_action(\"waveform-analysis\")"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {},
"outputs": [],
"source": [
"stuff = {\n",
" \"figures\": \"figures\",\n",
" \"statistics\": \"statistics\"\n",
"}\n",
"\n",
"for key, value in stuff.items():\n",
" action.data[key] = value\n",
" data_path = action.data_path(key)\n",
" data_path.parent.mkdir(exist_ok=True, parents=True)\n",
" source = output_path / value\n",
" if source.is_file():\n",
" shutil.copy(source, data_path)\n",
" else:\n",
" copy_tree(str(source), str(data_path))"
]
},
{
"cell_type": "code",
"execution_count": 108,
"metadata": {},
"outputs": [],
"source": [
"septum_mec.analysis.registration.store_notebook(action, \"10_waveform_analysis.ipynb\")"
]
}
],
"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.6.8"
}
},
"nbformat": 4,
"nbformat_minor": 2
}