septum-mec/actions/lfp_speed_stim/data/20_lfp_speed.ipynb

1384 lines
692 KiB
Plaintext
Raw Normal View History

2021-03-10 12:44:26 +00:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"import os\n",
"import pathlib\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"import re\n",
"import shutil\n",
"import pandas as pd\n",
"import scipy.stats\n",
"\n",
"import exdir\n",
"import expipe\n",
"from distutils.dir_util import copy_tree\n",
"import septum_mec\n",
"import septum_mec.analysis.data_processing as dp\n",
"import septum_mec.analysis.registration\n",
"from septum_mec.analysis.plotting import despine, plot_bootstrap_timeseries, violinplot, savefig\n",
"from phase_precession import cl_corr\n",
"from spike_statistics.core import permutation_resampling_test\n",
"import matplotlib.mlab as mlab\n",
"import scipy.signal as ss\n",
"from scipy.interpolate import interp1d\n",
"from skimage import measure\n",
"from tqdm.notebook import tqdm_notebook as tqdm\n",
"tqdm.pandas()\n",
"import scipy.signal as ss\n",
"\n",
"\n",
"from tqdm.notebook import tqdm_notebook as tqdm\n",
"tqdm.pandas()\n",
"\n",
"import pycwt"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
"plt.rcParams['figure.dpi'] = 150\n",
"figsize_violin = (1.7, 3)\n",
"figsize_speed = (4, 3)\n",
"plt.rc('axes', titlesize=10)"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"project_path = dp.project_path()\n",
"project = expipe.get_project(project_path)\n",
"actions = project.actions\n",
"\n",
"output_path = pathlib.Path(\"output\") / \"lfp_speed\"\n",
"(output_path / \"statistics\").mkdir(exist_ok=True, parents=True)\n",
"(output_path / \"figures\").mkdir(exist_ok=True, parents=True)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"data_action = actions['lfp_speed']\n",
"output = exdir.File(\n",
" data_action.data_path('results'),\n",
" plugins = [exdir.plugins.git_lfs, exdir.plugins.quantities])\n",
"\n",
"ignore = ['wavelet_power', 'wavelet_freqs', 'signal']\n",
"results = []\n",
"for group in output.values():\n",
" d = group.attrs.to_dict()\n",
" d.update({k: np.array(v.data) for k, v in group.items() if k not in ignore})\n",
" results.append(d)\n",
"results = pd.DataFrame(results)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"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>freq_score</th>\n",
" <th>sample_rate</th>\n",
" <th>power_score</th>\n",
" <th>action</th>\n",
" <th>channel_group</th>\n",
" <th>max_speed</th>\n",
" <th>min_speed</th>\n",
" <th>position_low_pass_frequency</th>\n",
" <th>mean_freq</th>\n",
" <th>mean_power</th>\n",
" <th>speed</th>\n",
" <th>speed_bins</th>\n",
" <th>theta_freq</th>\n",
" <th>theta_power</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0.191729</td>\n",
" <td>1000.0</td>\n",
" <td>0.432532</td>\n",
" <td>1833-010719-1</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.154332133229601, 7.106500202042717, 7.13862...</td>\n",
" <td>[18.005621200653046, 18.66435212100411, 20.504...</td>\n",
" <td>[0.02795137493203615, 0.0283076211590443, 0.02...</td>\n",
" <td>[0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000...</td>\n",
" <td>[6.799999999999997, 6.799999999999997, 6.79999...</td>\n",
" <td>[3.990633076071412, 3.992883430179942, 3.99513...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0.255882</td>\n",
" <td>1000.0</td>\n",
" <td>0.434938</td>\n",
" <td>1833-010719-1</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.035831237674811, 7.05973079549096, 7.120455...</td>\n",
" <td>[16.966011451769536, 17.60417640800431, 19.452...</td>\n",
" <td>[0.02795137493203615, 0.0283076211590443, 0.02...</td>\n",
" <td>[0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000...</td>\n",
" <td>[6.799999999999997, 6.799999999999997, 6.79999...</td>\n",
" <td>[3.649171825378523, 3.6511305369806806, 3.6530...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>0.169116</td>\n",
" <td>1000.0</td>\n",
" <td>0.338942</td>\n",
" <td>1833-010719-1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.156957284750235, 7.121730043055997, 7.17760...</td>\n",
" <td>[14.747162413722597, 15.548073560884317, 16.81...</td>\n",
" <td>[0.02795137493203615, 0.0283076211590443, 0.02...</td>\n",
" <td>[0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000...</td>\n",
" <td>[6.799999999999997, 6.799999999999997, 6.79999...</td>\n",
" <td>[3.069575227276876, 3.0713927350182493, 3.0732...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>0.071480</td>\n",
" <td>1000.0</td>\n",
" <td>0.141405</td>\n",
" <td>1833-010719-1</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.256682286107137, 7.237350035531646, 7.27254...</td>\n",
" <td>[13.017027147293039, 12.651121743582284, 13.91...</td>\n",
" <td>[0.02795137493203615, 0.0283076211590443, 0.02...</td>\n",
" <td>[0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000...</td>\n",
" <td>[6.399999999999999, 6.399999999999999, 6.39999...</td>\n",
" <td>[1.9508693636836856, 1.9523977795413874, 1.953...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>0.216792</td>\n",
" <td>1000.0</td>\n",
" <td>-0.012191</td>\n",
" <td>1833-010719-1</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.095817125902336, 7.050223640391819, 7.12869...</td>\n",
" <td>[32.456068185302364, 23.01562486642484, 21.395...</td>\n",
" <td>[0.02795137493203615, 0.0283076211590443, 0.02...</td>\n",
" <td>[0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000...</td>\n",
" <td>[6.399999999999999, 6.399999999999999, 6.39999...</td>\n",
" <td>[1.2545438245339104, 1.2553897239251606, 1.256...</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" freq_score sample_rate power_score action channel_group \\\n",
"0 0.191729 1000.0 0.432532 1833-010719-1 0 \n",
"1 0.255882 1000.0 0.434938 1833-010719-1 1 \n",
"2 0.169116 1000.0 0.338942 1833-010719-1 2 \n",
"3 0.071480 1000.0 0.141405 1833-010719-1 3 \n",
"4 0.216792 1000.0 -0.012191 1833-010719-1 4 \n",
"\n",
" max_speed min_speed position_low_pass_frequency \\\n",
"0 1 0.02 6 \n",
"1 1 0.02 6 \n",
"2 1 0.02 6 \n",
"3 1 0.02 6 \n",
"4 1 0.02 6 \n",
"\n",
" mean_freq \\\n",
"0 [7.154332133229601, 7.106500202042717, 7.13862... \n",
"1 [7.035831237674811, 7.05973079549096, 7.120455... \n",
"2 [7.156957284750235, 7.121730043055997, 7.17760... \n",
"3 [7.256682286107137, 7.237350035531646, 7.27254... \n",
"4 [7.095817125902336, 7.050223640391819, 7.12869... \n",
"\n",
" mean_power \\\n",
"0 [18.005621200653046, 18.66435212100411, 20.504... \n",
"1 [16.966011451769536, 17.60417640800431, 19.452... \n",
"2 [14.747162413722597, 15.548073560884317, 16.81... \n",
"3 [13.017027147293039, 12.651121743582284, 13.91... \n",
"4 [32.456068185302364, 23.01562486642484, 21.395... \n",
"\n",
" speed \\\n",
"0 [0.02795137493203615, 0.0283076211590443, 0.02... \n",
"1 [0.02795137493203615, 0.0283076211590443, 0.02... \n",
"2 [0.02795137493203615, 0.0283076211590443, 0.02... \n",
"3 [0.02795137493203615, 0.0283076211590443, 0.02... \n",
"4 [0.02795137493203615, 0.0283076211590443, 0.02... \n",
"\n",
" speed_bins \\\n",
"0 [0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000... \n",
"1 [0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000... \n",
"2 [0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000... \n",
"3 [0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000... \n",
"4 [0.02, 0.04, 0.06, 0.08, 0.1, 0.12000000000000... \n",
"\n",
" theta_freq \\\n",
"0 [6.799999999999997, 6.799999999999997, 6.79999... \n",
"1 [6.799999999999997, 6.799999999999997, 6.79999... \n",
"2 [6.799999999999997, 6.799999999999997, 6.79999... \n",
"3 [6.399999999999999, 6.399999999999999, 6.39999... \n",
"4 [6.399999999999999, 6.399999999999999, 6.39999... \n",
"\n",
" theta_power \n",
"0 [3.990633076071412, 3.992883430179942, 3.99513... \n",
"1 [3.649171825378523, 3.6511305369806806, 3.6530... \n",
"2 [3.069575227276876, 3.0713927350182493, 3.0732... \n",
"3 [1.9508693636836856, 1.9523977795413874, 1.953... \n",
"4 [1.2545438245339104, 1.2553897239251606, 1.256... "
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"results.head()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"identify_neurons = actions['identify-neurons']\n",
"sessions = pd.read_csv(identify_neurons.data_path('sessions'))"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"results = results.merge(sessions, on='action')"
]
},
{
"cell_type": "code",
"execution_count": 10,
"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>freq_score</th>\n",
" <th>sample_rate</th>\n",
" <th>power_score</th>\n",
" <th>action</th>\n",
" <th>channel_group</th>\n",
" <th>max_speed</th>\n",
" <th>min_speed</th>\n",
" <th>position_low_pass_frequency</th>\n",
" <th>mean_freq</th>\n",
" <th>mean_power</th>\n",
" <th>...</th>\n",
" <th>i</th>\n",
" <th>ii</th>\n",
" <th>session</th>\n",
" <th>stim_location</th>\n",
" <th>stimulated</th>\n",
" <th>tag</th>\n",
" <th>date</th>\n",
" <th>entity_date</th>\n",
" <th>Hz11</th>\n",
" <th>Hz30</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0.191729</td>\n",
" <td>1000.0</td>\n",
" <td>0.432532</td>\n",
" <td>1833-010719-1</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.154332133229601, 7.106500202042717, 7.13862...</td>\n",
" <td>[18.005621200653046, 18.66435212100411, 20.504...</td>\n",
" <td>...</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline i</td>\n",
" <td>10719</td>\n",
" <td>1833-010719</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0.255882</td>\n",
" <td>1000.0</td>\n",
" <td>0.434938</td>\n",
" <td>1833-010719-1</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.035831237674811, 7.05973079549096, 7.120455...</td>\n",
" <td>[16.966011451769536, 17.60417640800431, 19.452...</td>\n",
" <td>...</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline i</td>\n",
" <td>10719</td>\n",
" <td>1833-010719</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>0.169116</td>\n",
" <td>1000.0</td>\n",
" <td>0.338942</td>\n",
" <td>1833-010719-1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.156957284750235, 7.121730043055997, 7.17760...</td>\n",
" <td>[14.747162413722597, 15.548073560884317, 16.81...</td>\n",
" <td>...</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline i</td>\n",
" <td>10719</td>\n",
" <td>1833-010719</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>0.071480</td>\n",
" <td>1000.0</td>\n",
" <td>0.141405</td>\n",
" <td>1833-010719-1</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.256682286107137, 7.237350035531646, 7.27254...</td>\n",
" <td>[13.017027147293039, 12.651121743582284, 13.91...</td>\n",
" <td>...</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline i</td>\n",
" <td>10719</td>\n",
" <td>1833-010719</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>0.216792</td>\n",
" <td>1000.0</td>\n",
" <td>-0.012191</td>\n",
" <td>1833-010719-1</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" <td>0.02</td>\n",
" <td>6</td>\n",
" <td>[7.095817125902336, 7.050223640391819, 7.12869...</td>\n",
" <td>[32.456068185302364, 23.01562486642484, 21.395...</td>\n",
" <td>...</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>baseline i</td>\n",
" <td>10719</td>\n",
" <td>1833-010719</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 27 columns</p>\n",
"</div>"
],
"text/plain": [
" freq_score sample_rate power_score action channel_group \\\n",
"0 0.191729 1000.0 0.432532 1833-010719-1 0 \n",
"1 0.255882 1000.0 0.434938 1833-010719-1 1 \n",
"2 0.169116 1000.0 0.338942 1833-010719-1 2 \n",
"3 0.071480 1000.0 0.141405 1833-010719-1 3 \n",
"4 0.216792 1000.0 -0.012191 1833-010719-1 4 \n",
"\n",
" max_speed min_speed position_low_pass_frequency \\\n",
"0 1 0.02 6 \n",
"1 1 0.02 6 \n",
"2 1 0.02 6 \n",
"3 1 0.02 6 \n",
"4 1 0.02 6 \n",
"\n",
" mean_freq \\\n",
"0 [7.154332133229601, 7.106500202042717, 7.13862... \n",
"1 [7.035831237674811, 7.05973079549096, 7.120455... \n",
"2 [7.156957284750235, 7.121730043055997, 7.17760... \n",
"3 [7.256682286107137, 7.237350035531646, 7.27254... \n",
"4 [7.095817125902336, 7.050223640391819, 7.12869... \n",
"\n",
" mean_power ... i ii \\\n",
"0 [18.005621200653046, 18.66435212100411, 20.504... ... True False \n",
"1 [16.966011451769536, 17.60417640800431, 19.452... ... True False \n",
"2 [14.747162413722597, 15.548073560884317, 16.81... ... True False \n",
"3 [13.017027147293039, 12.651121743582284, 13.91... ... True False \n",
"4 [32.456068185302364, 23.01562486642484, 21.395... ... True False \n",
"\n",
" session stim_location stimulated tag date entity_date Hz11 \\\n",
"0 1 NaN False baseline i 10719 1833-010719 True \n",
"1 1 NaN False baseline i 10719 1833-010719 True \n",
"2 1 NaN False baseline i 10719 1833-010719 True \n",
"3 1 NaN False baseline i 10719 1833-010719 True \n",
"4 1 NaN False baseline i 10719 1833-010719 True \n",
"\n",
" Hz30 \n",
"0 False \n",
"1 False \n",
"2 False \n",
"3 False \n",
"4 False \n",
"\n",
"[5 rows x 27 columns]"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"results.head()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"results = results.query('stim_location!=\"mecl\" and stim_location!=\"mecr\"')"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"def action_group(row):\n",
" a = int(row.channel_group in [0,1,2,3])\n",
" return f'{row.action}-{a}'\n",
"results['action_side_a'] = results.apply(action_group, axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>action_side_a</th>\n",
" <th>channel_group</th>\n",
" <th>min_speed</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1833-010719-1-0</td>\n",
" <td>7</td>\n",
" <td>0.02</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1833-010719-1-1</td>\n",
" <td>3</td>\n",
" <td>0.02</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>1833-010719-2-0</td>\n",
" <td>7</td>\n",
" <td>0.02</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>1833-010719-2-1</td>\n",
" <td>3</td>\n",
" <td>0.02</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>1833-020719-1-0</td>\n",
" <td>7</td>\n",
" <td>0.02</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" action_side_a channel_group min_speed\n",
"7 1833-010719-1-0 7 0.02\n",
"3 1833-010719-1-1 3 0.02\n",
"15 1833-010719-2-0 7 0.02\n",
"11 1833-010719-2-1 3 0.02\n",
"23 1833-020719-1-0 7 0.02"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lfp_results_hemisphere = results.sort_values(\n",
" by=['action_side_a', 'channel_group'], ascending=[True, False]\n",
").drop_duplicates(subset='action_side_a', keep='first')\n",
"lfp_results_hemisphere.loc[:,['action_side_a','channel_group', 'min_speed']].head()"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
"colors = ['#1b9e77','#d95f02','#7570b3','#e7298a']\n",
"labels = ['Baseline I', '11 Hz', 'Baseline II', '30 Hz']\n",
"# Hz11 means that the baseline session was indeed before an 11 Hz session\n",
"queries = ['baseline and i and Hz11', 'frequency==11', 'baseline and ii and Hz30', 'frequency==30']"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"def make_entity_date_side(row):\n",
" s = row.action_side_a.split('-')\n",
" del s[2]\n",
" return '-'.join(s)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"lfp_results_hemisphere['entity_date_side'] = lfp_results_hemisphere.apply(make_entity_date_side, axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"from functools import reduce"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"keys = [\n",
" 'freq_score',\n",
" 'power_score',\n",
" 'speed_bins',\n",
" 'mean_freq',\n",
" 'mean_power'\n",
"]\n",
"\n",
"results = {}\n",
"for key in keys:\n",
" results[key] = list()\n",
" for query, label in zip(queries, labels):\n",
" values = lfp_results_hemisphere.query(query).loc[:,['entity_date_side', key]]\n",
" results[key].append(values.rename({key: label}, axis=1))\n",
" \n",
"for key, val in results.items():\n",
" df = reduce(lambda left,right: pd.merge(left, right, on='entity_date_side', how='outer'), val)\n",
" results[key] = df.drop('entity_date_side', axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Scores"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [],
"source": [
"vss = [\n",
" ['Baseline I', '11 Hz'],\n",
" ['Baseline I', 'Baseline II'],\n",
" ['Baseline II', '30 Hz'],\n",
" ['11 Hz', '30 Hz'],\n",
"]"
]
},
{
"cell_type": "code",
"execution_count": 92,
"metadata": {},
"outputs": [],
"source": [
"ylabel = {\n",
" 'freq_score': 'Frequency score',\n",
" 'power_score': 'Power score'\n",
"}"
]
},
{
"cell_type": "code",
"execution_count": 93,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAUIAAAJECAYAAABjHC0cAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAXEQAAFxEByibzPwAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdd5gkV3no/++pztMzs1E5oHxAoAAKCESUBCYIBJiMAWMDTtf2Y3OvzSVfTPC9cP2zr8E2ApODkAkKSAQhUEI5rLKOpE1aSZsmz3TuqvP741TPzs725OowXe/nefbp3e7qqjOz0++8dcJ7lLUWIYSIM6/TDRBCiE6TQCiEiD0JhEKI2JNAKISIPQmEQojYk0AohIg9CYRCiNiTQCiEiD0JhEKI2JNAKISIPQmEQojYk0AohIg9CYRCiNiTQCiEiD0JhEKI2JNAKISIPQmEQojYk0AohIi9ZKcbIES30lp/E3gvcDTwJ8A7gSOAncAPgU8bYwrhsXngY8CFwHFADdgE/Jsx5tK2N14siWSEQizsx8CfA9cCX8Z9bv4O+O6MYy4HPgw8BXwJ+AHwbOCHWusPtrW1YsmUbN4kRHMzMsItwAuMMXvC5zcCBlgPHAmsBR4AvmuMefeM9x8HPAJsM8ac1N7Wi6WQjFCIhf17IwgCGGOGgJvCfx7Lvs/RM7XWB804bguggdPa1VCxPNJHKMTCHmny3Fj4mDHG3K+1vhF4MfCk1vom4BrgF8aYTe1qpFg+yQiFWFi5yXONPiUVPr4K+DiwGTgP+Dxwj9baaK1f3fomipWQQChEBIwxRWPMZ4wxJwNH4foWfwqcBFyutT6mk+0T85NbYyFWSGt9DvAW4L+MMbcaY54Evg18W2v9deB9wAuBbZ1rpZiPZIRCrNwg8LfAp7TW058prbUCjgn/uaUD7RKLJBmhECv3a+Aq4LXA/VrrawAf11d4OvAjY8ytHWyfWIBkhEKskDEmAN4K/D1QB/4Q+FPcgMrf4FakiC4mE6qFELEnGaEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvYkEAohYk8CoRAi9iQQCiFiTwKhECL2JBAKIWJPAqEQIvaSnW5Au2it3wP8NaCBIvAr4KPGmO2LfP8u4JA5Xv6yMea/zTr+tcD/BE4BfOBG4OPGmPuW9xUIIVpFWWs73YaW01p/FvgI8BDwM+Bo4C3AKHC2MWbrAu8/FNgJ3ANc0eSQ240xV884/gPAxcB24EfAOuAd4csvM8bcvqIvSAgRqZ4PhFrr04BNwE3A+caYavj8G4GfAFcaY16/wDleBfwc+Igx5vMLHHsIsA3YAZxljBkPn38+cAPwCHC6Maa3v/FCrCJx6CP8q/Dx040gCGCM+SkuMF2otT5igXOcFj7eu4jrfRDIAl9oBMHwercBlwCnAi9YZNuFEG0Qh0B4HlDHBb3ZrgUU8PIFznF6+LiYQHjejHM3u97MY4QQXaCnB0u01mngGcA2Y0ylySFbwsdnLnCq04Ep4Pe11n8EnAhM4PobP2GM2Tnj2JNwgbfZIMxiryeEaKOeDoTAelzGNzLH641b17VznUBrncMFvgTwcVy/4m+BFwHvB16jtT7XGLMtfMsGYNwY4y/nerOu/eAcLx0FXLdQ36YQYnF6PRCmw8dm2eDM57PznOMw4EFgDHijMWYEQGutgM/ipsh8DbhgxjVXcr3FSJ9wwgmvA1blgMvw5Z9h/LqLwUvi9W+gtvMR0oc9kyM/fC2J3GCnmydWN7WcN/V6ICyFj+k5Xs+Ej1NzncAYs4V9gyUzn7da608A7wLO11ofFt4il1ZyvVnXeHaz58NM8eTFnKMr2aDZkxA0e16I1uv1QDgOBMx9K7pmxnFLZoypa63vxs1LPB4313AEOFhrrZpMkVnR9XqFDXzAglIoFf4Ct8wRIEXUbGCZ+qfrqW9t3mOk0knyH3g+qZPnWj/Qe3o6EBpjqlrrLcDRWuuUMaY265Djw8eH5jqH1vpw4ARgqzFmR5ND8uFjI/t8BDgS14/3xFKvFwvWYu3sexiLDeodalC8BLsmqfxuG/7Oiaavq/4MyRu2xCoQxmH6zHW4W9Vzm7x2Pi4X+d087/8D4Hrg72e/oLXuB56HW7LXGNi4LnxsNkXm/PDxpgXa3NtsYxwpDIVqWd06YplssQqBBd/iHdS/3x/Vl4Kajy3Ozhl6WxwC4dfDx8+FI8DA9MqSFwNXGGOenOf9P8ZNh3mf1vqUGe9PAv+MGyX+D2NMOXzpu7hBkY9prTfMOP75wNuATcaY+QJvz3OrmWanhNJH2C5BsYYNLCQUKpvc7w/pJAQWW4pXIOzpW2MAY8wtWusvA38B3Ku1vgx36/pWYDfwt41jtdYvA16GC1aXhe/frLX+MPBF4Dat9X/h1iifhyuocBNuWk3jetu11h8DvgDcp7X+ITAIvBOo4VaexJsNwvHuGZFQ+gjbxpZqLiP0mmTiSrmui5gFwjhkhAB/Gf6p4JbcvRS33O2F4ahww8uATwJvmPlmY8z/BV4D3AK8EfhT3PfufwIXGGOKs47/Ii7wPQ38GfA64BrgXGPMHRF/bavPAZmf+0C6QRTRarY8dyBUnsIG1h0TIz2fEYKb6gJ8Kfwz33GfAj41x2s/xxVeWOw1fwD8YNGNjBMbMHsKpMUe8JxokVIdN1rVJCP0iOWtcVwyQtFFrAS8jrKVeW6NPQUWbDleI/gSCEXnNT6PPV4SrlvYMCNUc/URxvDWWAKhaL/pgKf2f5RA2Ba2Unejxs1ujRuDJVXfHRMTEghF5xzwOYzPB6+TbLnuvtXNpm+GgyVYoBKf22MJhELEjK3W55k+0zjIZYVxIYFQiLipzD1qrJQKb4/DgBkTEgiFiBlbC+a+NSaMj5IRCiF6ma35c88jhHAKjYWaBEIhWmdm6a2Zf1Hy49gW1QUCocLdGstgiRDtYPd7kCo07WFr/rxxEMKM0I/PKL4EQtF2SjK/zqoHC2aE1oa30DEhP5GiAxSze+pVk+dEa7g+Qub+dqtGH2F8qgFJIBTtN0cmorxEmxsSU34jI5zj9UYfoS+BUIjWUV74IWz0QYUfSukjbAtbb0yfmWf+jAXqcmssRMsoz8N1RIVPNIq0SkbYHovK9GSwRIjWUrMDnvvAySBKm/h2cbfGUnRBiBZSKrwrm/lBUzKPsF0OqP4zW/i89BEK0ToqkaQxR8M2PpQKuTVuE+vbBUaNccFSMkIhWkiFfYT7Pym3xu2y2Lq
"text/plain": [
"<Figure size 255x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"for stuff in ['freq_score', 'power_score']:\n",
" for vs in vss:\n",
" base, stim = results[stuff][vs].dropna().values.T\n",
" plt.figure(figsize=figsize_violin)\n",
" plt.ylabel(ylabel[stuff])\n",
" violinplot(base, stim, colors=[colors[labels.index(l)] for l in vs], xticks=vs)\n",
" plt.ylim(-0.35, 0.5)\n",
" plt.yticks([-0.25, 0, 0.25, 0.5])\n",
" despine()\n",
" fig_path = output_path / \"figures\" / f\"{stuff}_{' '.join(vs)}\".replace(' ', '_')\n",
" savefig(fig_path)\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 94,
"metadata": {},
"outputs": [],
"source": [
"def plot_speed(results, stuff, colors, labels, filename=None, show_raw=False, ylim=None):\n",
" base, stim = results[stuff][labels].dropna().values.T\n",
" base_bins, stim_bins = results['speed_bins'][labels].dropna().values.T\n",
" \n",
" base = np.array([s for s in base])\n",
" stim = np.array([s for s in stim])\n",
" \n",
" if show_raw:\n",
" fig, axs = plt.subplots(1, 2, sharey=True, figsize=figsize_speed)\n",
"\n",
" for b, h in zip(base_bins, base):\n",
" axs[1].plot(b, h)\n",
" axs[1].set_xlim(0.1,1)\n",
" axs[1].set_title(labels[0])\n",
"\n",
" for b, h in zip(stim_bins, stim):\n",
" axs[0].plot(b, h)\n",
" axs[0].set_xlim(0.1,1)\n",
" axs[0].set_title(labels[1]) \n",
"\n",
" fig, ax = plt.subplots(1, 1, figsize=figsize_speed)\n",
" plot_bootstrap_timeseries(base_bins[0], base.T, ax=ax, label=labels[0], color=colors[0])\n",
" plot_bootstrap_timeseries(stim_bins[0], stim.T, ax=ax, label=labels[1], color=colors[1])\n",
"\n",
" plt.xlim(0, 0.9)\n",
" plt.gca().spines['top'].set_visible(False)\n",
" plt.gca().spines['right'].set_visible(False)\n",
" plt.legend(frameon=False)\n",
" if ylim is not None:\n",
" plt.ylim(ylim)\n",
" despine()\n",
" if filename is not None:\n",
" savefig(output_path / \"figures\" / f\"{filename}\")"
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(results, 'mean_freq', \n",
" colors[:2], labels[:2], filename='lfp_speed_freq_11', ylim=(7.3, 8.3))"
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(results, 'mean_freq', \n",
" colors[2:], labels[2:], filename='lfp_speed_freq_30', ylim=(7.3, 8.3))"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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/nPeeecdAoEANTU1XHnlldx7773S30KIo9B1nc79EaLRDNUTNPOmzWamrq6K2lon+XyJbKZAQ6PMjzGZJGiMQaaYJ18qTXYxjstmNuO0TPywrTfeeINYLMbtt98+bPvf//537rnnHpxOJ9dddx0NDQ0MDAzw5ptv8sQTTxAMBlm2bBkA4XCYL3/5yyQSCW644Qba2tro7e1l1apVvPPOO/zud7/jggsuACCTyXDnnXeyadMm5s6dy2233UY6nWbVqlXccccdPP7443z+858f02u5//776erq4oYbbsDlcrFq1Sqef/55Ojs7+dnPfla53969e7njjjsIhUJ88pOf5KabbqKnp4dXX32Vt956i+XLl3PhhReO8TcqxJkpHEoTDqfIpI2T/0RSFAW73SKLoZ0G5H9glB5d+yde2PEemq5PdlGOy6Qo3HXhYv7nJz47Lsf78MMPefrppyu3c7kc+/bt4+2332bRokU8/PDDw+7/xBNPAPDyyy8za9asyvY9e/Zw8803s2LFikrQeP311wkGg/zgBz/gC1/4QuW+V111FcuWLeM3v/kN3//+9wF46qmn2LRpE9/4xjd46KGHKm289913H1/84hd59NFHWbx4MS0tLaN+jdFolNdff536+noAli5dyo033sibb77J4OAgzc3NAHznO98hHA7z7LPPcvXVV1ce/8EHH3DXXXexbNky/vjHP0qHMyEO0bk/QiySxe2xT8ry72JyjFvQUFXVAjwMfA2YBaSB94Dv+Xy+E2q8V1X1/wGWAZ8A3EAf8KfyMQLjVdaTsXzH+1MiZABous7yHe+Pa9D48MMPj7qvtraWUChUaV7QdZ0HHniAYrE4LGQAzJ49m4aGBgKBg/+lmqYBsHnzZj73uc9htRo90W+66SYWLFhAa2srAKVSiVdeeYW6ujoefPDBYSfy5uZm7r77bh5//HFeffVVli5dOurXeNttt1VCBkBdXR0LFizgrbfeoru7m+bmZrZs2cK2bdu4/vrrh4UMgEWLFnHttdeyZs0aNm3axPz580ddBiHORPFYFr8/SSKZo2Na9WQXR5xC41mj8QrwOWAP8AzQAHwJuF5V1Zt9Pt/qYz1YVdU7gV8CGeD3wCCwCLgP+Kyqqot8Pt/AOJZ3TO688J+mTI2GWTFx54X/NG7Hu++++4aN1sjlcvj9fl577TWeeuop1q1bx4oVK2hsbERRFK677joAAoEAu3btoru7m87OTrZu3UooFAKM4GA2m/n0pz/NM888wyuvvMLq1atZtGgRS5Ys4aqrrho2P8f+/ftJJpO0tLTwzDPPHFHG3t5ewOgbMhaHhyIAr9cLQKFQAGDr1q2A0dxzaA3PkFgsBsD27dslaAhRdqAzQjyWoarKitV69OnGxZlpXIKGqqrXY4SMdcCVPp8vW97+S+BNjOAx+xiPrwX+PyAJXOHz+XyH7Pse8AjwBEZtyaT6n5/4LN+97FPSRwNjwq5p06Zxzz33EIlEWL58Ob/61a/49re/DRj9GJ544gn+9re/oZeDWXt7O5dffjm7d+8mFotVtjc2NvL73/+e5557jjfffJNVq1axatUqwKgleOyxx5g5c2blJD4wMHDUScSGDN1vLK/pcEO1JkNljcfjAKxfv57169ePeKxoNDqmMghxpslkCvT3xYlFs7S2eye
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_freq', \n",
" colors=[colors[0], colors[2]], labels=[labels[0], labels[2]], filename='lfp_speed_freq_baseline', ylim=(7.3, 8.3))"
]
},
{
"cell_type": "code",
"execution_count": 95,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_freq', \n",
" colors=[colors[1], colors[3]], labels=[labels[1], labels[3]], filename='lfp_speed_freq_stim', ylim=(7.3, 8.3))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Power Familiar"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_power', \n",
" colors[:2], labels[:2], filename='lfp_speed_power_11', ylim=(5, 35))"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_power', \n",
" colors[2:], labels[2:], filename='lfp_speed_power_30', ylim=(5, 35))"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_power', \n",
" colors=[colors[0], colors[2]], labels=[labels[0], labels[2]], filename='lfp_speed_power_baseline', ylim=(5, 35))"
]
},
{
"cell_type": "code",
"execution_count": 96,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAhQAAAGaCAYAAABXKNrQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAXEQAAFxEByibzPwAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdd5yddYHv8c/znDq9pPcKDyRSpIiAgAKK7qKuorJiu/eqa0XZvejiqshe3bWwKkrTy2v3uhakK7vLYgMVqSEQCQnJkz49k0w/Z+a0p9w/njMnM8lMMpNzpmW+79drXs+cp/4ymeR8z68avu8jIiIiUgxzqgsgIiIiM58ChYiIiBRNgUJERESKpkAhIiIiRVOgEBERkaIpUIiIiEjRFChERESkaAoUIiIiUjQFChERESmaAoWIiIgUTYFCREREiqZAISIiIkVToBAREZGiKVCIiIhI0cKlupFlWfXAF4C3AcuBA8DDwFdt2z542LnPAueNcqtHbNu+slTlEhERkYln+L5f9E0sy6oBngFOBR4DXsx/fyXQCrzWtu2m/LkmkADagR+PcLsdtm3fXXShREREZNKUqobiKwQB4ibbtv9xcKdlWZ8GbgX+D/A/87tPBsqB39q2fVOJni8iIiJTqFR9KFYR1DjcfNj+n+S35w/Zd0Z++1KJni0iIiJTrCQ1FLZtv2OUQ6fmt21D9p2Z3ypQiIiInCBK1ilzKMuy6oBLge8ADvC1IYcHA8VZlmV9G1gPZIDfATfatr1jIsokIiIiE6cknTKHsizr48Cd+Zcu8H7btu8ZcrwVWETQMfMhoAM4B7gE6AMut237+TE8Z+soh5YBf7Bt+23H/YcQERGRcZmIGoqDwDcJQsM7gZ9ZlrXMtu2bLcuqIBj1cQB4m23bjYMXWZb1MeAHwE8ty1pn27Z7nM+Prl279q1AaZOSiIjI7GAc10WlrqEYyrKslcCzwALgXNu2Nx7j/KeAC4ALbNt+5jifuXXt2rXrHnnkkeO5XEREZLY7rkAxoTNl2ra9D/hW/uXbx3DJhvx2zYQUSERERCZE0U0elmXFgIuBkG3bvxrhlD357TzLsuYApwAHR+l8WZHfpootl4iIiEyeUtRQRIFHgXssy4qOcPys/HYHcBnwJMHoj2HyM2heSND34ZidMkVERGT6KDpQ2LadIFizowa4aegxy7LOBv4OSAJ3A78CeoG3WJb1xsNudSOwDvjF0M6aIiIiMv2VapTHZwmGfn7BsqyLCDpirgD+CvCAq23b3g9gWdbfEISLRy3LeghoIuiI+VpgO/CJEpVJREREJklJOmXatt1MEChuJVhp9Drg9cAvgPNs2354yLn3Aa8D/hu4HPg0MBf4Rv7cA6Uok4iIiEyeCR02OhU0bFRERKQo02/YqIiIiMwOChQiIiJSNAUKERERKZoChYiIiBRNgUJERESKpkAhIiIiRVOgEBERkaIpUIiIiEjRFChERESkaAoUIiIiUjQFChERmdWuu+46Lr744jGdm0wmufTSS7nhhhvGfP+GhgYsy+KNbzx8ke3h7r//fizL4otf/OKY7z2dKFCIiMisddttt/Hoo4+O6dxMJsNnP/tZWlpaJrhUM1Opli8XERGZMTKZDF/96le5//77x3R+S0sL1113HZs3b57gks1cqqEQEZFZ5fHHH+ctb3kL999/P5dccskxz7/jjju48sorefnll8fcNDIbqYZCRERmlQceeID+/n6+8pWv8N73vpdTTjnlqOffddddLF26lC9/+cs4jsMTTzwxKeV0HIf169cf9Zzly5fz29/+dlLKcywKFCIis5yXGcB3slNdjGMywlHMWHnR9/nQhz7Et771LSorK8d0/ne+8x0uueQSTNPk6aefLvr5Y2WaJp/+9KdHPPbwww/T1NTE2WefPWnlORYFChGRWezAz/6Wnt/dBr431UU5NsOk9vJPM/993y3qNuedd964zn/DG95Q1PMG9fb2cuutt456fOvWrcNem6bJtddee8R5v/zlL2lqauL000/nH//xH0tStlJQoBARmcV6Hrt9ZoQJAN+j57Hbiw4UU6W3t5fbbrutqHts3LiRL33pSyxcuJA77riDWCxWotIVT4FCRGQWq73sUzOnhsIMUXvZp6a6FMftWP0d7r//fr70pS+NeryhoYFPfepThMNh7rjjDubNmzcRxTxuChQiIrPY/Pd9l7nv+qdZ1YdiJurt7eVjH/sYvb293HLLLcfsrDkVFChERGY5M1YOs/SNeibI5XJ85jOfYe/evXzmM5/hzW9+81QXaUSah0JERGQau+mmm3j22Wf5y7/8Sz71qenb5KNAISIiMk3dddddPPDAA5x55pn88z//81QX56jU5CEiIjINbdiwgW9/+9uEQiEuvPBCfvzjH5PNZvF9f9h5V111FYsXL56iUh6iQCEiIjINNTQ04Ps+ruty++23j3re+eefPy0ChXF40pnpLMvaunbt2nWPPPLIVBdFRERkJjKO5yL1oRAREZGiKVCIiIhI0RQoREREpGgKFCIiIlI0BQoREREpmgKFiIiIFE2BQkRERIqmQCEiIiJFU6AQERGRoilQiIiISNEUKERERKRoChQiIiJSNAUKERERKZoChYiIiBRNgUJERGaVnp4evvnNb3LFFVdw+umn84Y3vIGvfe1rdHV1jXh+d3c3X/va17jssss4/fTTefOb38xdd92F4zhjet5DDz2EZVnccMMNRz3vhhtuwLIsHnrooXH/maaDcKluZFlWPfAF4G3AcuAA8DDwVdu2Dx527hzgRuCtwCKgAfg34Du2bY/tb0hERGScEokE11xzDbt37+b888/nsssuY8+ePfzkJz/h17/+Nffddx+LFi0qnN/X18cHPvABdu3axZve9CaWL1/OU089xb/8y7/w8ssv8/3vf38K/zTTS0lqKCzLqgGeBK4HmoBbgc3AtcCfLctaNuTcWuCP+WMvAt8DBoBvAveUojwiIiIjue2229i9ezfXXnstP/rRj/j85z/PD37wA7785S9z4MCBIwLC7bffzs6dO7nxxhv5/ve/z/XXX88DDzzAm970Jn7961/zm9/8Zor+JNNPqZo8vgKcCtxk2/bltm1/3rbttxKEhsXA/xly7o3AeuBTtm2/y7btG4BzgYeAqyzLemeJyiQiIjJMc3Mzc+fO5cMf/vCw/W9/+9sB2LRpU2FfOp0u1Fj89V//dWF/KBTi85//PAD33KPPwYNK1eSxCmgHbj5s/08IaivOB7Asqwz4G4JajB8OnmTbtmtZ1vXAO4GPE4QLERGRkrr99ttH3L97924A5s2bV9i3efNmBgYGeOMb34hpDv/8vWzZMpYuXcrzzz+P67qEQqGSl/W5557jgx/84FHPecc73sE3vvGNkj/7eJQkUNi2/Y5RDp2a37blt68BKoCHbNv2DrvHXsuy9gIXW5YVsm3bLUXZRETk6PxUDj83/f/LNSIhjLJISe/Z29vLs88+yze+8Q3C4TCf/OQnC8f27dsHwPLly0e8dtmyZTQ3N9Pc3MyKFStKWi6AJUuW8OlPf/qI/Y7j8KMf/Yh0Os3ZZ59d8ucer5J1yhzKsqw64FLgO4ADfC1/6OT8dtcol+4hqO1YdZRzBp+xdZRDa8ZVWBGRWazv648z8LMXwfOnuijHZhqUv+8sqr9waUlu9/Of/5ybbroJCJoxbr75Zs4///zC8Z6eHgBqa2tHvL6qqgoIOm6OxbZt27j11luPenyopUuXcu211x5x3o033kg6neaaa67h3e9+95iePRlKHigsy/o4cGf+pQu837btx/Kv5+S3I4/Ngd78duS/PRERKamBu2dImADwfAbufrFkgaK+vp6PfvSjHDx4kN/85jdcf/31tLW18ZGPfASAbDYLQDQaHfH6wf2ZTGZMz9u+fTvbt28vqsz/9m//xr333sv555/PF7/4xaLuVWoTUUNxkGDExiKCPhE/syxrmW3bNwODfyuj/fQH98eP9RDbttePtD9fc7FuXCUWEZmlyq85a+bUUIQMyq85q2S3u+KKK7jiiis
"text/plain": [
"<Figure size 600x450 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot_speed(\n",
" results, 'mean_power', \n",
" colors=[colors[1], colors[3]], labels=[labels[1], labels[3]], filename='lfp_speed_power_stim', ylim=(5, 35))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Table"
]
},
{
"cell_type": "code",
"execution_count": 82,
"metadata": {},
"outputs": [],
"source": [
"from septum_mec.analysis.statistics import make_statistics_table"
]
},
{
"cell_type": "code",
"execution_count": 102,
"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>Freq score</th>\n",
" <th>Power score</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Baseline I</th>\n",
" <td>1.8e-01 ± 1.7e-02 (46)</td>\n",
" <td>1.6e-01 ± 2.2e-02 (46)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Normality Baseline I</th>\n",
" <td>3.4e+00, 1.8e-01</td>\n",
" <td>2.5e+00, 2.8e-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11 Hz</th>\n",
" <td>-6.4e-03 ± 1.1e-02 (44)</td>\n",
" <td>-2.2e-02 ± 3.0e-02 (44)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Normality 11 Hz</th>\n",
" <td>1.1e+01, 4.0e-03</td>\n",
" <td>2.0e+01, 5.5e-05</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Baseline II</th>\n",
" <td>2.2e-01 ± 2.0e-02 (32)</td>\n",
" <td>1.1e-01 ± 1.8e-02 (32)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Normality Baseline II</th>\n",
" <td>2.0e+00, 3.6e-01</td>\n",
" <td>1.2e+00, 5.5e-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30 Hz</th>\n",
" <td>1.1e-02 ± 1.4e-02 (34)</td>\n",
" <td>5.3e-02 ± 2.3e-02 (34)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Normality 30 Hz</th>\n",
" <td>2.8e+00, 2.4e-01</td>\n",
" <td>2.0e+01, 3.7e-05</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon Baseline I - 11 Hz</th>\n",
" <td>1.6e+01, 2.3e-08, (44)</td>\n",
" <td>1.1e+02, 7.0e-06, (44)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon Baseline I - Baseline II</th>\n",
" <td>1.8e+02, 1.2e-01, (32)</td>\n",
" <td>1.7e+02, 7.3e-02, (32)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon Baseline I - 30 Hz</th>\n",
" <td>7.0e+00, 1.5e-06, (32)</td>\n",
" <td>1.3e+02, 1.0e-02, (32)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon 11 Hz - Baseline II</th>\n",
" <td>3.0e+00, 1.1e-06, (32)</td>\n",
" <td>9.2e+01, 1.3e-03, (32)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon 11 Hz - 30 Hz</th>\n",
" <td>2.2e+02, 3.8e-01, (32)</td>\n",
" <td>1.6e+02, 5.9e-02, (32)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wilcoxon Baseline II - 30 Hz</th>\n",
" <td>9.0e+00, 1.9e-06, (32)</td>\n",
" <td>1.5e+02, 3.6e-02, (32)</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Freq score \\\n",
"Baseline I 1.8e-01 ± 1.7e-02 (46) \n",
"Normality Baseline I 3.4e+00, 1.8e-01 \n",
"11 Hz -6.4e-03 ± 1.1e-02 (44) \n",
"Normality 11 Hz 1.1e+01, 4.0e-03 \n",
"Baseline II 2.2e-01 ± 2.0e-02 (32) \n",
"Normality Baseline II 2.0e+00, 3.6e-01 \n",
"30 Hz 1.1e-02 ± 1.4e-02 (34) \n",
"Normality 30 Hz 2.8e+00, 2.4e-01 \n",
"Wilcoxon Baseline I - 11 Hz 1.6e+01, 2.3e-08, (44) \n",
"Wilcoxon Baseline I - Baseline II 1.8e+02, 1.2e-01, (32) \n",
"Wilcoxon Baseline I - 30 Hz 7.0e+00, 1.5e-06, (32) \n",
"Wilcoxon 11 Hz - Baseline II 3.0e+00, 1.1e-06, (32) \n",
"Wilcoxon 11 Hz - 30 Hz 2.2e+02, 3.8e-01, (32) \n",
"Wilcoxon Baseline II - 30 Hz 9.0e+00, 1.9e-06, (32) \n",
"\n",
" Power score \n",
"Baseline I 1.6e-01 ± 2.2e-02 (46) \n",
"Normality Baseline I 2.5e+00, 2.8e-01 \n",
"11 Hz -2.2e-02 ± 3.0e-02 (44) \n",
"Normality 11 Hz 2.0e+01, 5.5e-05 \n",
"Baseline II 1.1e-01 ± 1.8e-02 (32) \n",
"Normality Baseline II 1.2e+00, 5.5e-01 \n",
"30 Hz 5.3e-02 ± 2.3e-02 (34) \n",
"Normality 30 Hz 2.0e+01, 3.7e-05 \n",
"Wilcoxon Baseline I - 11 Hz 1.1e+02, 7.0e-06, (44) \n",
"Wilcoxon Baseline I - Baseline II 1.7e+02, 7.3e-02, (32) \n",
"Wilcoxon Baseline I - 30 Hz 1.3e+02, 1.0e-02, (32) \n",
"Wilcoxon 11 Hz - Baseline II 9.2e+01, 1.3e-03, (32) \n",
"Wilcoxon 11 Hz - 30 Hz 1.6e+02, 5.9e-02, (32) \n",
"Wilcoxon Baseline II - 30 Hz 1.5e+02, 3.6e-02, (32) "
]
},
"execution_count": 102,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"stat, _ = make_statistics_table(\n",
" {k:v for k, v in results.items() if k in ['power_score', 'freq_score']}, \n",
" labels, lmm_test=False, wilcoxon_test=True, use_weighted_stats=False, normality_test=True)\n",
"stat"
]
},
{
"cell_type": "code",
"execution_count": 103,
"metadata": {},
"outputs": [],
"source": [
"stat.to_latex(output_path / \"statistics\" / f\"statistics.tex\")\n",
"stat.to_csv(output_path / \"statistics\" / f\"statistics.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [],
"source": [
"for key, result in results.items():\n",
" result.to_latex(output_path / \"statistics\" / f\"values_{key}.tex\")\n",
" result.to_csv(output_path / \"statistics\" / f\"values_{key}.csv\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Register in expipe"
]
},
{
"cell_type": "code",
"execution_count": 104,
"metadata": {},
"outputs": [],
"source": [
"action = project.actions[\"lfp_speed\"]"
]
},
{
"cell_type": "code",
"execution_count": 105,
"metadata": {},
"outputs": [],
"source": [
"outdata = {\n",
" \"figures\": \"figures\",\n",
" \"statistics\": \"statistics\"\n",
"}\n",
"\n",
"for key, value in outdata.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": null,
"metadata": {},
"outputs": [],
"source": [
"septum_mec.analysis.registration.store_notebook(action, \"20_lfp_speed.ipynb\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.8"
}
},
"nbformat": 4,
"nbformat_minor": 4
}