diff --git a/figure_generation_clinical_day4_afermentans_reordered.ipynb b/figure_generation_clinical_day4_afermentans_reordered.ipynb
new file mode 100644
index 0000000..6111b9f
--- /dev/null
+++ b/figure_generation_clinical_day4_afermentans_reordered.ipynb
@@ -0,0 +1,1052 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "dd7fc51e-b713-4b42-9cfc-3ab3ba59e7cb",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# ----------------------------------------------------------------------------\n",
+ "# SkinCom Analysis - Perform t-test & boxplots for log-ratios\n",
+ "# Author: Sherlyn Weng\n",
+ "# Version: 1.0.0\n",
+ "# Mmaintainer: Sherlyn Weng\n",
+ "# Email: y1weng@ucsd.edu\n",
+ "# This code is adapted from https://github.com/knightlab-analyses/reference-frames\n",
+ "# ----------------------------------------------------------------------------"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "515d875f-5c34-4203-a374-67ec76fbe6ba",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "import pandas as pd\n",
+ "import seaborn as sns\n",
+ "import matplotlib.pyplot as plt\n",
+ "import matplotlib as mpl\n",
+ "from biom import load_table\n",
+ "from scipy.stats import ttest_rel, wilcoxon, ttest_ind, pearsonr, spearmanr\n",
+ "from skbio.stats.composition import multiplicative_replacement\n",
+ "import matplotlib.gridspec as gridspec\n",
+ "\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "%matplotlib inline\n",
+ "\n",
+ "import warnings\n",
+ "warnings.filterwarnings('ignore')\n",
+ "\n",
+ "\"\"\"\n",
+ "Here, we have implemented an extended version of scipy's paired t-test function.\n",
+ "see https://github.com/scipy/scipy/blob/master/scipy/stats/mstats_basic.py#L1085\n",
+ "\n",
+ "This should really be pushed to scipy -- any volunteers?\n",
+ "\"\"\"\n",
+ "import numpy as np\n",
+ "from scipy.stats import t\n",
+ "from scipy.special import betainc\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "\n",
+ "Ttest_relResult = namedtuple('Ttest_relResult', \n",
+ " ('statistic', 'pvalue', 'lower_CI', 'upper_CI', 'ddof'))\n",
+ "\n",
+ "\n",
+ "def ttest_rel(x, y):\n",
+ " \n",
+ " D = x - y\n",
+ " n = len(D)\n",
+ " \n",
+ " sd = np.std(D, ddof=1) \n",
+ " se = sd / np.sqrt(n)\n",
+ " mu = np.mean(D)\n",
+ " T = mu / se\n",
+ " ddof = n-1\n",
+ " ci = se * t.ppf( 0.05 / 2, ddof) \n",
+ " lower = mu - np.abs(ci)\n",
+ " upper = mu + np.abs(ci)\n",
+ " \n",
+ " prob = betainc(0.5*ddof, 0.5, ddof/(ddof + T*T))\n",
+ " return Ttest_relResult(T, prob, lower, upper, int(ddof))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "1b2dca95-1936-4547-98ec-c7e609a219e6",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[1]].index\n",
+ " print('hi')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[0]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5242c6a2-b6b2-497e-aa34-225f3a9c1cab",
+ "metadata": {},
+ "source": [
+ "## Input Directory"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "0f656bb7-fbf6-4b0e-909b-d94835646df4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "input_dir = \"..\""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f9b78015-1a9a-4d8e-97d0-e7ff85a1e82c",
+ "metadata": {},
+ "source": [
+ "## Variables"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "af3b610d-80e5-4525-b1bf-86d36a88e9cb",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "syncom_strains = [\"Corynebacterium afermentans\",\n",
+ " \"Cutibacterium acnes\",\n",
+ " \"Micrococcus luteus\",\n",
+ " \"Staphylococcus aureus\",\n",
+ " \"Staphylococcus capitis\",\n",
+ " \"Staphylococcus epidermidis\",\n",
+ " \"Staphylococcus hominis\",\n",
+ " \"Staphylococcus warneri\",\n",
+ " \"Streptococcus mitis\"]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1164688b-1357-4d73-bedb-66dc5b71386a",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "## SLES"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 26,
+ "id": "da5f89a9-1fc4-417f-82ef-271c89c4c6e7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hi\n",
+ "Index(['post_left_sub12', 'post_left_sub13', 'post_left_sub1',\n",
+ " 'post_left_sub2'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -1.006584 | \n",
+ " 0.388289 | \n",
+ " -2.011125 | \n",
+ " 1.044617 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " -0.247151 | \n",
+ " 0.820740 | \n",
+ " -2.271485 | \n",
+ " 1.944100 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " -0.953509 | \n",
+ " 0.410676 | \n",
+ " -0.886183 | \n",
+ " 0.477579 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " 0.229355 | \n",
+ " 0.833340 | \n",
+ " -2.769521 | \n",
+ " 3.199716 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " -0.075735 | \n",
+ " 0.944398 | \n",
+ " -2.304923 | \n",
+ " 2.197770 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " 0.859905 | \n",
+ " 0.453072 | \n",
+ " -0.345936 | \n",
+ " 0.602096 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " -1.075817 | \n",
+ " 0.360825 | \n",
+ " -1.542561 | \n",
+ " 0.763129 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " 0.287471 | \n",
+ " 0.792466 | \n",
+ " -0.252952 | \n",
+ " 0.303188 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -1.006584 \n",
+ "log(M.luteus/C.afermentans) -0.247151 \n",
+ "log(S.aureus/C.afermentans) -0.953509 \n",
+ "log(S.capitis/C.afermentans) 0.229355 \n",
+ "log(S.epidermidis/C.afermentans) -0.075735 \n",
+ "log(S.hominis/C.afermentans) 0.859905 \n",
+ "log(S.warneri/C.afermentans) -1.075817 \n",
+ "log(S.mitis/C.afermentans) 0.287471 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.388289 \n",
+ "log(M.luteus/C.afermentans) 0.820740 \n",
+ "log(S.aureus/C.afermentans) 0.410676 \n",
+ "log(S.capitis/C.afermentans) 0.833340 \n",
+ "log(S.epidermidis/C.afermentans) 0.944398 \n",
+ "log(S.hominis/C.afermentans) 0.453072 \n",
+ "log(S.warneri/C.afermentans) 0.360825 \n",
+ "log(S.mitis/C.afermentans) 0.792466 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -2.011125 \n",
+ "log(M.luteus/C.afermentans) -2.271485 \n",
+ "log(S.aureus/C.afermentans) -0.886183 \n",
+ "log(S.capitis/C.afermentans) -2.769521 \n",
+ "log(S.epidermidis/C.afermentans) -2.304923 \n",
+ "log(S.hominis/C.afermentans) -0.345936 \n",
+ "log(S.warneri/C.afermentans) -1.542561 \n",
+ "log(S.mitis/C.afermentans) -0.252952 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) 1.044617 \n",
+ "log(M.luteus/C.afermentans) 1.944100 \n",
+ "log(S.aureus/C.afermentans) 0.477579 \n",
+ "log(S.capitis/C.afermentans) 3.199716 \n",
+ "log(S.epidermidis/C.afermentans) 2.197770 \n",
+ "log(S.hominis/C.afermentans) 0.602096 \n",
+ "log(S.warneri/C.afermentans) 0.763129 \n",
+ "log(S.mitis/C.afermentans) 0.303188 "
+ ]
+ },
+ "execution_count": 26,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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17333qsxY8Zo586dCg4OrtD9kpKSNHHiRIWGhprbunTpYtGnoKBA//nPfzRx4kRz25kzZ675Dq/HE088YfFzYWGh2rZtq8cee0w7d+5USEiImjZtqhYtWkiSmjVrZvFOZs6cqVatWmnZsmXm8LFjx47q27ev3n33XasQrl+/fho9erRVHRkZGVqzZo1cXV0lSXXq1NHgwYP1xRdfaNOmTape/fJXLDU1VbNmzdJPP/2k5s2bKycnR1FRUerWrZvF71lAQIC6deummJgYLVy40Nyel5enV155xfx+27dvr8OHD2vjxo0aO3asnJyc5Lp7PXYAACAASURBVO7uLuly8Fb287+e93WlAQMGaMiQIZKkDh066OTJk/rnP/+pWbNmycHBQQcOHNBdd92l119/3eo9ldWqVSu99957ysvLU82aNa2OA7jMzc1NknT69GmrEdvXUlJQIEk6X6OGRXvBb+01yrTbS61atdSoUaPr7n+X/vdOAAAAgKqgyoZwpVM3e/fubdEeGhqqWbNmKTExUUFBQeZF7Lt3727R78knn7QK4c6dOydHR8drTit1dHRU7969tW7dOoWFhWndunV66qmn5OjoWBmPdcN27NghFxcXBQQEqLCw0NweEBAgR0dH7d27t8IhnKenp9577z0VFRWpffv2evjhh62ec8+ePcrKyrIK525Wdna2li1bps8++0xnzpyx2AzDZDJd89wTJ07o+PHjeu2111RcXKzi4mLzsaCgIC1dulS//vqrxVTZq9XfunVrcwAnSc2bN5ckBQYGmgO4K9tTUlLUvHlzHThwQJmZmerdu7fF51GjRg35+/vryy+/tLiPo6Oj1TqERqNRe/bsueazlqro+yo7HdhoNCovL08XLlyQq6urvLy8lJmZqQkTJqh3797y8fFR/fr1y713gwYNVFRUpAsXLqhx48bXVS9wJwoLC5MkRURE6NCRo1Lt8r9TVn4byJpXtr3w4uV2J+fKKfBm5F6Um5ub5s6da+9KAAAAALupsiFcRkaGnJycdPfdltNz6tWrJycnJ/OUyYyMDNWsWdM8TbFU6YiyK+Xl5cnJyUkODg7XvHffvn0VHx+vxYsX69SpU+rTp89NPs3NS01NVXp6ulq3bl3u8bS0tApf891339XixYu1YsUKRUVFycXFRT169NDLL79sfu8JCQny9va22JH0/vvv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66+ra9eu8vLy0l133VXuvRs0aKALFy6ouLj4d6doA7+rdn2pZfff71eZjv42nbqy7nuU6dkAAADAnajKhXAZGRlycnKymhZar149OTk5mddxy8jIUM2aNeXs7GzR75577rG6Zl5enpycnMw7e5bVoEEDhYaGmtfkSkhI0IQJEzR37lytWbPmqrXGx8dr3rx5ev755zVhwgQZDAY5ODho2rRpysvLq9BzX6m8NepSU1N14sSJq25OUDrd6no5ODho+fLlWrRokaKjo5WamipXV1f17dtXY8aMMW9ckJCQoODgYPPPBoPBPBLsRhUXF2vo0KFKTU3VmDFj9NBDD6l27do6e/asxo4da7X2X1kXLlyQJIWHh1/12a7k7Oys2rXLH9VSNpgtnap6tfbSddVKa3jqqafKve4DDzxg8bOLi4tVHycnJ6t12spT0fdVp04dq40nyt4rNDRUBQUFWrNmjdasWSMHBwf5+fnplVdeMU/TLlWzZk0VFRWpoKBANWvW/N16AQAAAACoiqpcCOfi4qL8/HxlZmZaBHEZGRnKz883hxkuLi7Ky8tTdna2RRBXGo5cyWAwKDc397p3xezatatatmyp//73v9fst2nTJj366KMWU1Kly1MPr6y9NLgoG7hcLTgrLyw0GAyqU6eOZs6cWe45peuPVeRejRs31uzZsyVJP//8szZs2KAlS5aoWrVqmjBhgtLT07V37169++675nMcHR3Vrl077d69W+fOnbNY9+x6/fDDD/rhhx8UFRVlDj4lWa1FdzWl6zrNmDFDHh4ev9v/auHrzSitISYmpty18Spz99WbfV9X069fP/Xr10+5ublKTEzUO++8o6FDh2r79u0WIWR6errq1KlDAAcAAAAAuKNVublh7dq1kyRt2LDBor3059LjpdNEy+7auHnzZqtrurm5Sbq8uP2VLly4oJKSEqv+OTk5OnPmzFV3TS3l4OBgtTvozp07dfbsWYu20vXTjh07ZtG+ffv2a17/SkFBQTpx4oTuueceeXh4WP0pDYJu9F7NmjXThAkT1KhRIx09etR8To0aNRQUFGTRd+TIkSoqKtJf//pXi6mYpXJycsqdElpW2Xe3evXq3z1Hknx9feXs7CyTyVTuu7ieYO5mBQQEyNHRUcnJyeXe/8qNIa5XaXB3tZGAN/q+fk/t2rUVHBysl156SdnZ2UpJSbE4npycfMObjAAAAAAAUFVUuZFwgYGB6tChg6KiopSVlSVPT0/zLqCBgYEKCAiQdDmU8vX1VWRkpDIyMsy7o3766aeSLEc/Pfroo5IuryV2ZZjw6aefavXq1erVq5c8PDxUp04dpaSk6KOPPlJaWppeeeUVc9+1a9dqypQpmj17tvr06SNJ6tSpk2JjYxUdHa02bdro2LFjiouLsxoZ5eHhoWbNmmnu3LkqKirS3XffrW3btumbb7657vcyZMgQ/fvf/9bzzz+vF198UQ8//LDy8/OVkpKinTt3avr06WrcuLFcXV3Vvn17xcXFqV69emrUqJH27NmjrVu3Wlzv6NGjioyMVPfu3dW0aVNVr15d//nPf5SSkqIRI0ZIujwVNSgoyGoqp6+vr6ZPn67IyEj1799fAwYMULNmzZSfn6+DBw/qH//4h7p3727+rAYPHqy9e/eag8HmzZurSZMm5rX7nJ2dtXnzZh0+fPi63kXpjq7Tpk1TRkaGunTpIhcXF124cEHfffednJycNHHixOt+tzeiSZMmCg8P19tvv61Tp06pw/9n787jqqr2/4+/EcUJh+OAQzZIGqgISgyFoKiopVmmSWWSll4lNdIyzPl3U1PQbjlGXklzuGollXi1EJvUumg53TStPGmmqBijISDg7w8v5+sBREG2B/H1fDx6+Dj7rL32Z69zoHq71l5+fnJ0dFRSUpL27NkjZ2dny8Yi16tFixaqWbOmNm3apNatW6tGjRpq0aLFDY9XcaZMmaIaNWrI09NTjRs31unTp/Xuu++qefPmVj8j+fn5OnDggJ566qkyXwsAAAAAgMqg0oVwdnZ2WrJkiRYsWKD169dr0aJFaty4sZ599lmFhYVZwrUqVaooKipKc+bM0bvvvquLFy/K09NTc+fOVXBwsNVD5ps2bSpvb29t27ZNTzzxhOV4YGCgkpKS9MUXX2j16tXKyMiQo6Oj3NzcFBUVpa5du5ZY66hRo5SZman169dr2bJlatOmjd5++20tXLjQqp29vb2ioqI0Y8YMTZ8+XQ4ODurTp4+mTZumESNGXNe4ODo6au3atYqKitKaNWt06tQp1apVSy1atJC/v7/VM8fmzp2rGTNmaN68ecrLy1PXrl315ptvasCAAZY2jRs31p133qlVq1bpzJkzsrOz0913363XX39dTz75pP766y99++23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9fWVJB07dkzPP/+80tLSNGjQIL388suqUaOGjh07po0bN2rIkCHavXt3ma93pcmTJ+vixYtasGCBHB0dddddd5VLvxXRunXrVLdu3SIBsS3UqVNHzz33nCIjI9WlSxdVq1bN1iUBAAAAAGAzhHBlsHLlSjVu3FhdunSxHPv888914sQJrVmzRl5eXpbj3bt314gRI5Sfn2+LUq+pVatWhrQtLC4uTt26dVO1atWUl5enF198URkZGfrwww/l7Oxsaefj46Pg4GDFxcWV+VqF/frrr3r66afl7+9fLv3l5OTIwcGhXPqq7J588kktXrxYcXFx6tOnj63LAQAAAADAZirdctTCMjMzNWfOHAUGBsrNzU2BgYGKiIhQVlaWVbv09HRNmjRJPj4+6tixo4YPH65jx47JxcVFCxcutLTLyclRTEyM+vbta3V+amqqJKlx48bF1lGlyrWH+vTp05o8ebI6d+4sNzc3BQQE6OWXX1ZGRoaky8tdp0+frocfflgdOnSQv7+/hg8froMHD1r1k5CQIBcXF8XGxurvf/+7fH195eHhob/97W86fvy4Vdsrl5gmJCSoX79+kqSJEyfKxcXFavlm4eWoeXl5WrJkiXr16iV3d3d5e3urX79+2rBhg9U1kpOT9f3336tHjx6SpPj4eP38888aOXKkVQB3pWvtonY9YxETEyMXFxfl5uZq1apVlvu5crwnTpwof39/ubm5qVevXlqxYkWxY7lx40a9/vrr8vPzU/v27SVJr732mry8vHTkyBGFhITIw8NDAQEBlj527typAQMGyMPDQ4888ojVUtwCR48eVVhYmHx9feXm5qa+ffsqNjbWqk3BfezevVvTpk2Tr6+vfH19NWbMGJ05c8bSrlu3bjp8+LB27dpludeCz6u0353Nmzdr3rx58vf3l6enp4YOHSqz2WzV9uDBgxoxYoQefPBBubm5qXPnzho1apTS0tIsbRo2bCg/Pz+tW7euxM8TAAAAAIDKrlLPhMvPz1doaKj27Nmj0aNHy93dXfv379eSJUt05MgRRUdHy87OTvn5+Ro5cqQOHTqkMWPGqG3bttq7d69GjBhRpM8DBw4oNTVVPj4+Vsc9PDwkSeHh4QoNDdX999+vunXrXnetiYmJeuKJJyRJoaGhatWqlZKTk/XVV18pMzNTderUUWpqquzt7RUWFqaGDRsq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Li5G16L58+erf//+VseSk5MVERGhhx56SB4eHvL29lafPn00adIkJSYmGl5TYSEhIQoJCblmu4SEBLm4uCghIeEmVHX9unXrptdee+2a7WJiYuTi4qI//vij1OcWZ8+ePXJxcdFvv/1mOXb27FlFRESoT58+6tChg9zd3dW7d2/NnDlTv//+e5muU5ydO3fq8ccfl4eHR4X8TMrT0qVLFR8fb+syJEm///673NzcdOjQIVuXAgAAAACAzVWYmXCJiYl67733tGDBAsux8+fPKzg4WNnZ2Ro2bJhcXFyUmZmpo0ePasuWLTpx4oSaNWt2U+ucPn36Tb1eeVu0aJEcHR1v+rlbt25V69at1bJlS0nSvn37NHLkSFWtWlWDBw+Wu7u77O3t9fPPPysmJkbff/+9PvnkkzJd60r5+fkaN26cWrVqpXfffVc1atRQq1atbrjfimrp0qUKCgqqEH/jfdddd+mxxx7T7NmztWrVKluXAwAAAACATVWYEG7lypVq3LixunTpYjn2+eef68SJE1qzZo28vLwsx7t3764RI0YoPz//ptdpqwAnJydHDg4ON9xP27ZtbXLu1q1b9eijj0qSMjIyNGbMGDk6OmrdunVq3Lixpd0DDzygkJCQcpvNlZSUpLS0NPXo0UMPPPBAufRZXp/F7WDQoEHq37+/9u3bpw4dOti6HAAAAAAAbKZMu6NmZmZqzpw5CgwMlJubmwIDAxUREaGsrCyrdunp6Zo0aZJ8fHzUsWNHDR8+XMeOHZOLi4sWLlxoaZeTk6OYmBj17dvX6vzU1FRJsgpprIqvcu3yT58+rYkTJ8rf319ubm7q1auXVqxYYdWmYOlobGys/v73v8vX11ceHh7629/+puPHj1u1LW456tGjRzVs2DB5eHjI19dXkydP1vnz54ut5+uvv9bgwYPVsWNHdejQQUOGDNGBAwes2rz22mvy8vLSwYMHFRISog4dOmjatGmSJBcXF82aNUtr1qxRjx495O7uroEDB+rQoUPKzc3V/Pnz1blzZ91///0aPXq0kpOTrfoubknp3r179dRTT6l9+/by9/dXZGSkLl68WKT2wudeuHBBc+bMUbdu3dS+fXv5+voqODhYX375pdV5hw4d0okTJywPBf7www+VlJSk8ePHF/vZ2tnZqUePHsWOX4Hjx4/rtddeU1BQkNzd3dWlSxeF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999XjRo17tjXU089JTs7O73//vv67bff5OrqKkkaNGiQrR+jUAjhAAAAAAAAYFPOzs5aunSpVqxYofXr1ys+Pl5paWmqVKmSatasqbFjxyowMLBAfdWpU0eTJ0/WwoULtXz5cqWl3VwehhAOAAAAAAAAD43q1avr0KFDudqNRqPCwsIUFhZWoH42b96c77GuXbuqa9eu91xjcWBNOAAAAAAAAMDGCOEAAAAAAAAAG2M6KgAA96h9+/aKi4uTzMk2vQcAAABKpmonC7bbJx4OjIQDAOAeBQcHy2Qy2fwewcHBNr0HAAAAANsjhJM0a9YseXp62vw+M2bMUGhoqFXbhQsXNGXKFD3zzDPy8/OTv7+/OnXqpHHjxun06dM2rScxMVGenp5KTEy0tG3YsEGLFy8u0Ll3480339SLL76Yq8+hQ4eqefPm8vHxkb+/v8LDw/Xxxx9bdjYprKysLE2fPl2tWrWSt7e32rZtWyT9Poj++OMPzZo1SydOnCjuUiRJ0dHRCg0NVWZmZnGXAgAAAABAsWM66n1y+vRpLVy4UDNnzrS0paamqmfPnkpLS1P//v3l6empK1eu6I8//tDGjRt1/PhxPfroozarqX79+oqLi9Pjjz9uaduwYYMOHjyovn373vHcgsrMzFRCQoL69+9vafvggw8UGxurgIAAjRw5UjVq1FBqaqp27typDz74QDdu3FCfPn3u+dmyJSQkaN68eRoyZIgCAwPl6OhY6D4fVIcPH1Z0dLQCAgJUvXr14i5Hffv21ZIlS7R69epc4TMAAAAAAA8bQrj7ZMmSJapcubJatWplafvqq690/Phxffzxx2rSpImlvV27dhowYIDNRxA5OzvrySefLPJzc/rpp5/0119/WdY1+uKLLxQbG6uXX35Zb7/9ttW5bdq00auvvqojR47c071y+u233yRJYWFhcnNzK5I+09PTZTQai6Sv0szZ2VldunTRv//9b0I4AAAAAMBDj+moebhy5YomT56s1q1by8fHR61bt9aUKVN07do1q/MuXryocePGKSAgQA0bNrSER56enpo1a5blvPT0dK1atUqdO3e2uj45+eZC3pUrV86zDju72397Vq1aJU9PT33//feKjIyUv7+/GjdurPHjxystLU3Hjx/XwIED1bBhQ7Vp00bz58+3uj7nFNPw8HAlJCTo5MmT8vT0lKenp2X6Zl7TUf/73/9qwIABatasmXx8fNSyZUsNGjRIKSkpVvf56quv5O3trRo1akiS5syZIzc3N40ZMybP56pYsaIaN25822ffsGGDXnnlFQUFBcnPz0+dOnVSTEyM0tPTLee0bdtWH374oSSpadOmub4vq1evVrdu3eTn56fGjRtr0KBBucK/8PBwde3aVd999526deumBg0aaO7cuTpx4oQ8PT21aNEiRUdHq2XLlvLz81OfPn104sQJXb16Ve+++66aNWumpk2bauzYsbpy5YpV35mZmVq8eLE6d+6sBg0aqGnTpoqMjNS5c+eszmvbtq0GDRqkb775RiEhIfL19dUzzzyjlStXWs5ZtWqVXn/9dUlS7969Ld+/7O9XQd7Xrc+7d+9evfjii/Lz81O7du00b948q1A4IyNDMTEx6tChg3x9feXv76+QkBB99tlnVv116dJFSUlJ2rlz522/nwAAAAAAlHaMhMshMzNTERER2r17t15//XX5+vpq3759iomJ0aFDh7RgwQIZDAZlZmZq4MCBOnDggAYPHqx69eppz549GjBgQK4+9+/fr+TkZAUEBFi1+/n5SZIiIyMVERGhxo0by9XV9a5r/uc//6mOHTtqxowZ2rNnj2bOnKmsrCzt27dPPXr0UJ8+fbR+/XpNnTpVtWrVyneB77ffflvvvPOOjhw5oujoaEnKd8TX5cuX1a9fP9WrV08TJkyQq6urzp49qx07duRaz23Tpk3q2bOnJOns2bP69ddf1alTJzk4ONz1s2Y7duyY2rRpo759+8rR0VGHDh3SnDlzdPjwYU2dOlXSzTXJPv74Y61cuVKLFi2Sk5OTqlatKkmaOXOm5syZoxdffFHDhg1TamqqYmJi9NJLL2nNmjVyd3e33OvPP//U+PHjFRERoZo1a+qRRx6xHFuyZIl8fHw0YcIEXbhwQZMmTdKwYcNUqVIl/e1vf9O0adP0yy+/6P3335eLi4vGjRtnuXbs2LH64osv1K9fPwUEBOjMmTOaMWOGwsPDtWrVKjk5OVnOPXDggKZOnaoBAwaoYsWKWrFihcaPH6+aNWvK399frVu31qhRozRt2jS99dZbql+/viRZpg8X5H1lO3PmjEaPHq1+/fpp6NChio+P1/Tp0+Xu7q6QkBBJ0vz58zVv3jwNHTpU9evX17Vr1/T777/nCmDr168vJycnbd26NdfnHyhN/ixjrwXlc//v9+ky9pKU57Gc17vYpDIAAAAADwpCuBy2bdumxMREvfnmmwoLC5MkBQUF6ZFHHtHEiRO1fft2tWjRQt9++612796t9957Tz169LCcZzQaNX36dKs+9+zZI0ny9va2am/SpIlGjBih6OhoRUREyGAwyMPDQy1atFBYWJhl5NidPP3003rjjTckSYGBgfrhhx/02WefKSoqSl27dpUkBQQEaMuWLVq/fn2+Idzjjz8uV1dXGY3GO049TUpKUnJyskaPHi0vLy9L+3PPPWd13v79+3X69GnLVNTszSaqVatWoGfLz2uvvWb556ysLEuAOXbsWI0fP15ubm6qV6+eJXTz8fGxBJynTp3S3Llz9corrygyMtLST+PGjdWhQwctWrRIo0ePtrQnJycrJibGanRe9uYHJpNJM2fOlMFgkCSdPHlSs2bNUvfu3TV+/HhJNz8Xe/bs0fr16y0h3O7du7V69Wq99dZb6tWrl6Vfb29vPf/88/r888+t2pOTkxUXF6cqVapIkvz9/ZWYmKh169bJ399fFSpUUO3atSXd/D7m/P4V5H3deq8FCxZYgrzAwEDt2rVL69ats4Rwu3fvVlBQkPr162e57tap1tns7e3l5eWl3bt35zoGlBYeHh75HrthNis5OVnnsrJu24e9bq7r+Pe//z3XbqseHh6KiIgoilIBAABwnz319lfFXUKh/PD/OhR3CaUKIVwO2dP3unTpYtUeEhKiiRMnKjExUS1atLBMr3v22WetzuvUqVOuEO7s2bOyt7dX+fLlc90vIiJCPXr00LZt27Rnzx7t2rVLixcvVlxcnObNm1eg0UM5w486depo586dVu1lypRRzZo1derUqTv2VxC1atVS+fLlNX78eIWFhalJkyZ5hobx8fHy8PC4pw0dbufo0aOKiYlRYmKizp07pxs3blgdu936bzt27NCNGzfUpUsXq+sqVqyoevXqadeuXVbnV6hQId/psa1atbIEcNL/fhnP63uyadMmXbt2TY6Ojtq6davs7OzUqVMnqxrq1q2rKlWqaOfOnVYhXL169SwBnCQ5ODioVq1aOnnyZL7Peau7eV9VqlSxBHDZPD09deDAAcvXvr6+mjNnjqKiotSmTRv5+PioXLlyed67YsWKVtcCpc2dArLIyEjtP3BQKlfh9h1duaBLV87o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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/data/evonik_day0vday4_md.tsv', index_col = 0)\n",
+ "metadata = metadata[(metadata['timepoint'] == 'post') & (metadata['chemical'] == 'SLES') & (metadata['individual'] != 'sub10')]\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/data/day0vday4_raw.biom').to_dataframe().T\n",
+ "table = table.loc[metadata.index.tolist(), syncom_strains]\n",
+ "\n",
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'treatment']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'treatment', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='treatment', kind='box',\n",
+ " hue_order=['left', 'right'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_sles/fig_sles.svg', format='svg')\n",
+ "# stats.to_csv('./out_c_afermentans/stats_day4_sles.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ef86565d-5578-45fd-8423-4ad797746748",
+ "metadata": {},
+ "source": [
+ "# RL"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "b7fee009-bdaf-49c7-8eb7-2cc924baa06f",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[1]].index\n",
+ " print('***')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[0]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "43dcf082-3703-40f0-b5af-ca7175ace397",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/data/evonik_day0vday4_md.tsv', index_col = 0)\n",
+ "metadata = metadata[(metadata['timepoint'] == 'post') & (metadata['chemical'] == 'RL') & (metadata['individual'] != 'sub4')]\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/data/day0vday4_raw.biom').to_dataframe().T\n",
+ "table = table.loc[metadata.index.tolist(), syncom_strains]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "76e7e7d3-a42d-4215-9ce9-579ba02a51c7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub5', 'post_left_sub6', 'post_left_sub7', 'post_left_sub8',\n",
+ " 'post_left_sub9', 'post_left_sub11', 'post_left_sub3'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -0.453956 | \n",
+ " 0.665819 | \n",
+ " -0.912310 | \n",
+ " 0.626776 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " 0.876440 | \n",
+ " 0.414499 | \n",
+ " -0.365185 | \n",
+ " 0.772787 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " -0.273301 | \n",
+ " 0.793786 | \n",
+ " -0.603805 | \n",
+ " 0.482476 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " 0.715330 | \n",
+ " 0.501279 | \n",
+ " -0.464750 | \n",
+ " 0.848735 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " 0.364150 | \n",
+ " 0.728235 | \n",
+ " -1.049873 | \n",
+ " 1.416992 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " 0.019290 | \n",
+ " 0.985235 | \n",
+ " -0.766951 | \n",
+ " 0.779140 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " -0.142990 | \n",
+ " 0.890980 | \n",
+ " -0.683197 | \n",
+ " 0.607758 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " 0.258699 | \n",
+ " 0.804514 | \n",
+ " -0.785381 | \n",
+ " 0.971083 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -0.453956 \n",
+ "log(M.luteus/C.afermentans) 0.876440 \n",
+ "log(S.aureus/C.afermentans) -0.273301 \n",
+ "log(S.capitis/C.afermentans) 0.715330 \n",
+ "log(S.epidermidis/C.afermentans) 0.364150 \n",
+ "log(S.hominis/C.afermentans) 0.019290 \n",
+ "log(S.warneri/C.afermentans) -0.142990 \n",
+ "log(S.mitis/C.afermentans) 0.258699 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.665819 \n",
+ "log(M.luteus/C.afermentans) 0.414499 \n",
+ "log(S.aureus/C.afermentans) 0.793786 \n",
+ "log(S.capitis/C.afermentans) 0.501279 \n",
+ "log(S.epidermidis/C.afermentans) 0.728235 \n",
+ "log(S.hominis/C.afermentans) 0.985235 \n",
+ "log(S.warneri/C.afermentans) 0.890980 \n",
+ "log(S.mitis/C.afermentans) 0.804514 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -0.912310 \n",
+ "log(M.luteus/C.afermentans) -0.365185 \n",
+ "log(S.aureus/C.afermentans) -0.603805 \n",
+ "log(S.capitis/C.afermentans) -0.464750 \n",
+ "log(S.epidermidis/C.afermentans) -1.049873 \n",
+ "log(S.hominis/C.afermentans) -0.766951 \n",
+ "log(S.warneri/C.afermentans) -0.683197 \n",
+ "log(S.mitis/C.afermentans) -0.785381 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) 0.626776 \n",
+ "log(M.luteus/C.afermentans) 0.772787 \n",
+ "log(S.aureus/C.afermentans) 0.482476 \n",
+ "log(S.capitis/C.afermentans) 0.848735 \n",
+ "log(S.epidermidis/C.afermentans) 1.416992 \n",
+ "log(S.hominis/C.afermentans) 0.779140 \n",
+ "log(S.warneri/C.afermentans) 0.607758 \n",
+ "log(S.mitis/C.afermentans) 0.971083 "
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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4MABjRgxQm3btpWnp6cGDBig3bt3W/RTMsX5yJEjCg0Nla+vr4YPHy5JevLJJxUWFqZ//vOf6tWrlzw8PNS7d2998803kq4EtsHBwfLx8dFLL72k06dPW93Hjh07NHjwYPn4+Mjb21svv/yyDh8+bNFm8uTJatu2rUwmk4YPHy4fHx917txZc+bMMQeCZ86cUbt27SRJixYtMr/7kvd1I8/r6vv973//q4kTJ8rX11cdO3bUlClTlJmZadH2iy++0HPPPSdfX1/5+PioW7dumjVrlkWboKAg1alTR2vWrLnW6wQAAAAAoMqrshszFBUVKTQ0VPv379fYsWPl6empQ4cOafHixTp+/Lji4+Pl4OCgoqIijR49WkePHtW4cePUqlUrHThwQKNGjbK65uHDh5WWliY/P79y++3bt6/GjBmjc+fO6cEHH9TZs2f17bffKjY21irgqWxhYWHKzc3Vli1btGrVKovPCgsLNWrUKB05ckSjRo2Sh4eHTCaTFixYoJ9++kkrVqxQtWoVy2T//Oc/69SpU3r11VfVuHFjpaWl6dChQ0pLS7Nol5CQoHbt2slgMEiSdu/eLVdXV3l6et70vSYlJalFixbq1auX6tWrp7Nnz2r58uV6/vnntXnzZjk5OSksLEweHh56++239frrr6tdu3bm6bC7d+9WaGio/Pz8NGvWLNWsWVOrV6/WqFGjFBcXp4CAAIv+xo8fr2effVYvv/yyCgsLzcePHDmipKQkhYWFqU6dOnr//fc1duxYDRo0SP/5z380depUZWdna/bs2ZowYYLWrVtnPnfNmjWaNm2ann76aQ0bNkxFRUX66KOPNGTIEK1evdoiQM3Ly1NYWJgGDhyoESNGaO/evVqyZImcnZ01btw4NWzYUB999JFeeeUVPffcc+rfv78k6YEHHrjh53W1cePGqWfPnhowYICOHz+u9957T5I0e/ZsSdJ3332nV199VS+88IImTpwoR0dHnTlzRt9//73FdZycnOTj46MdO3Zo3LhxN/2+Adwezld3VHy9e+1dhpVz1R0l6aZqO1/dUfdUdkEAAABAGapsCLdr1y4lJiZq+vTpGjx4sCTJ399fdevW1axZs7R7924FBgZq586d2r9/vyIjI83Bhb+/v5ycnDR//nyLax44cECS9Nhjj5Xbb2BgoBo0aKB169YpLCxM69atU4MG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0+7du/XSSy/J19dXDg4O6t27t/7xj3+oadOmatmypQ4fPqxNmzZZ9JOZmamXX35ZvXr1kpubm2rXrq3vvvtO+/fv1yuvvCJJ2rp1q1q3bm11X02aNNG7776r1157Tc8++6xeeOEFGY1GFRcX68cff9SqVavUokULPfHEE2U+I2dnZ7Vp00bx8fEyGAxq1KiRduzYoR07dlz3eUtX3ulbb72l0NBQjR49Ws8884xcXV2Vmpqq48eP6+LFi3r77bdv6Fo3q27dupo6daqmTZum9PR0de3aVS4uLkpOTtYPP/wgJycni80sbkStWrXUpEkTffXVV/L399c999yjhg0b6v777/9Dz6ssCxYs0K+//mre3CMtLU3x8fG69957rTaFOHjwoPl3BwAAAACAu1WVDeEcHBy0ePFiLVy4UKtWrdKiRYvk6uqql156SRMmTDCHa9WqVVNsbKzmzJmjpUuXKj8/X76+vpo3b54GDBige+65x3zNBx54QO3atdOXX36p55577pbez7x58zRz5ky9++67Kiws1BNPPKH58+erX79+Fu169uypffv26eOPP9aiRYtUXFys48ePq3r16oqLi9Py5cu1ceNGLVq0SE5OTmrUqJHat29vEZRNmTJFDg4OWrZsmbKzs/X4448rNjbWYupmzZo15eHhoXXr1ikpKUlFRUVq3LixwsPDNXz4cBUXF2vr1q0aNGhQmfcTHByszz//XB9++KE+/vhj/frrr3J0dNTDDz+snj17mne0Lc/8+fMVGRmpqKgoSVd2C/3www/LnV5aWkBAgP7+978rNjZWb7/9trKysmQwGNSyZUs9++yzN3SNP6pfv35q1KiRli1bpjfeeEOXL1/WfffdJ3d393Kf2/XMnDlTs2fP1qhRo5Sfn69x48Zp/Pjxf/h5lebl5aVPPvlEc+fOVWpqqurVqycvLy/NmDHDYv2806dP66efftKrr756U/0AAAAAAFBVOBQXFxfbu4jb0caNG/X6669r5cqVatOmjfn4P//5T73++uvasWOHGjRoYMcKb2+HDh3SgAEDtGXLlj+8Jh7uXAsXLtT69eu1devWG94h+MyZM+rSpcs1R4cCuL1FRETo8C8X7qyNDK7lDt2YwbNZQ82dO9felQAAAOB3VXYkXEVs2LBBly5dMk/lPHjwoOLj49W2bVuLAE6Sunfvrvj4eC1btkyTJk2yR7l3BC8vL6t15XB3ycrK0qeffqrp06ffcAAHoPJs27ZN0pWRx8CtxHcPAACgbIRwkurUqaPly5fr5MmTunz5sho2bKi+ffuWuSaXg4ODZs6cqV27dtmhUuDOcebMGY0cOVK9evWydynAXSkhIUESQQhuPb57AAAAZSOE05X/kViR/6HYsmVLtWzZ0oYVAXc+fk8AAAAAAPg/1exdAAAAAAAAAFDVEcIBAAAAAAAANkYIBwAAAAAAANgYIRwAAAAAAABgY4RwAAAAAAAAgI2xOyoAAFVQamqqUlNTFRERccv7NplMUoHjLe8XV8nPkclkstv7NxgMt7xfAACA2x0j4QAAAAAAAAAbYyQcAABVkMFgkMFg0Ny5c2953xERETr8y4Vb3i+uUqO23Jo1tNv7BwAAgDVGwgEAAAAAAAA2RggHAAAAAAAA2BghHAAAAAAAAGBjhHAAAAAAAACAjRHCAQAAAAAAADbG7qgAAFRB3bp1s3cJuEvx3QMAACgbIRwAAFVQcHCwvUvAXYrvHgAAQNmYjgoAAAAAAADYGCEcAAAAAAAAYGOEcAAAAAAAAICNEcIBAAAAAAAANkYIBwAAAAAAANgYu6MCAIDKl3NJOvaFvauoHNmXrvx5J91PziVJDe1dBQAAAK5CCAcAACqVm5ubvUuoVKmpNSRJBoPBzpVURMMq9x4AAADudIRwAACgUoWGhtq7BAAAAOC2w5pwAAAAAAAAgI0RwgEAAAAAAAA2RggHAAAAAAAA2BghHAAAAAAAAGBjhHAAAAAAAACAjRHCAQAAAAAAADZGCAcAAAAAAADYGCEcAAAAAAAAYGOEcAAAAAAAAICNEcIBAAAAAAAANkYIBwAAAAAAANgYIRwAAAAAAABgY4RwAAAAAAAAgI0RwgEAAAAAAAA2Vt3eBQAAcCvExsbKZDLd8n5TU1MlSQaD4bpt3dzcFBoaauuSAAAAANgBIRwA4K5gMpn0n0OH9EBB4S3t92J1R0lSddMv12x3/vd2AAAAAKomQjgAwF3jgYJCDU/PuKV9xte7V5Ku229JOwAAAABVE2vCAQAAAAAAADZGCAcAAAAAAADYGCEcAAAAAAAAYGOEcAAAAAAAAICNEcIBwG1q27Zt2rZtm73LgB3w7gEAAICqh91RAeA2lZCQIEkKDg62cyW41Xj3AAAAQNXDSDgAAAAAAADAxgjhAAAAAAAAABsjhAMAAAAAAABsjBAOAAAAAAAAsDFCOAAAAAAAAMDGCOEAAAAAAAAAG6tu7wIAAGVLTU1VamqqIiIi7F1KlWAymVS7moO9yyhXVjUHXTSZFBERIZPJJIPBYO+SAAAAAFQiRsIBAAAAAAAANsZIOAC4TRkMBhkMBs2dO9fepVQJERERyvxuv73LKJdzUbEedHPT3LlzGf0IAAAAVEGMhAMAAAAAAABsjBAOAAAAAAAAsDFCOAAAAAAAAMDGCOEAAAAAAAAAGyOEAwAAAAAAAGyMEA4AAAAAAACwser2LgAAULZu3brZuwTYCe8eAAAAqHoI4QDgNhUcHGzvEmAnvHsAAACg6mE6KgAAAAAAAGBjVSKEi46OltFotHk/CxYsUN++fS2OXbp0SVFRUXrqqafk5eWldu3a6emnn9bUqVN17tw5m9d0p4iNjVVgYKCKi4vNx44ePaqIiAg98cQTcnd3l6+vrwYMGKClS5cqMzOz0vpevny5unTpotatW9+S74m9XLx4UdHR0frxxx/tXYokad26derUqZNycnLsXQoAAAAAAHbHdNQbdO7cOX344YdauHCh+VhWVpYGDBig3NxcDR8+XEajUdnZ2frvf/+rL774QqdPn9aDDz5ox6pvHwkJCeratascHBwkSZ999plmzpypRx99VKNHj1azZs2Um5urgwcP6uOPP1ZKSoqmTp36h/s9evSoZs+ereeff169evVS9epV9yufnJysRYsWqXHjxnrsscfsXY769Omj2NhYLVu2TOPHj7d3OQAAAAAA2FXVTSQq2YoVK+Tq6qrOnTubj/3rX//S6dOn9emnn6pt27bm4126dNGoUaNUVFRkj1Kt5OXlycnJyW79JyUl6ciRI4qIiJAk7d+/X2+//baCgoK0cOFC1ahRw9y2U6dOGj58uA4cOFApff/888+SpP79+6t169aVck17P887haOjowYNGqQlS5Zo5MiRqlWrlr1LAgAAAADAbqrEdNTSsrOzNWfOHAUFBcnd3V1BQUGKiorS5cuXLdplZGRo6tSp8vPzk4+Pj0aMGKETJ07IaDQqOjra3C4vL09r165V7969Lc5PS0uTJLm6upZZR7Vq1368ly5d0owZM9SjRw95e3srICBAI0aM0JEjRyzarV27VkajUWfOnLE4npiYKKPRqMTERPOx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6f/+7/8UEhJiuQ/169dXcnKyjh49qsTERL355pul7rd58+bau3evvvzyS9WtW1cmk0lNmjS56ftV0Nq1axUfH69OnTqpUaNGunjxotauXatKlSpZgvh8P/zwg9zc3AwPNgEAAAAAKMtKHcLZ2dlpyZIlWrBggdavX69Fixapfv36eu655xQaGmoJ1ypUqKDIyEjNmTNH7733ni5duqR27dpp7ty5CgoKslq0vmHDhvLy8tL27dv19NNPW44HBAQoMTFRO3bs0OrVq5Weni5HR0e5ubkpMjJSnTt3LrbWBg0aaMOGDVq8eLHeffddJSYmytHRUQ888ID8/f2tdr+UpFdffVXff/+9wsLClJmZKS8vL02dOrXIdb/y1a9fX6tXr9bMmTM1bdo0Va1aVYGBgZo6dWqh9d/69eunxo0ba9myZZo8ebIyMzNVr149ubm5FRv0Gemhhx7S8uXLFR4ergkTJqhWrVp64okn9Oijj2rq1KnFftbb21txcXFavny5srKy1LBhQw0aNMhy3Z9//rm6du1qFXTma9OmjWJiYrR8+XJt3LhRS5YsUV5enu699175+/srODi42HNPmTJF9vb2ioyMVFZWltq0aaOoqCiNGjWqRNft6uqq6OhoLV68WPPmzVNKSopq1aolZ2fnQht0GMXPz0/r1q1TZGSk3nzzTV24cEEmk0murq566qmnbqjPiRMnatq0aQoNDVVWVpaeeuopzZkz56bvV0EtWrTQrl27NH/+fP3555+qXr26WrRooWXLllltVPHXX3/pP//5j1VgDgAAAADA3cjuclHzPQ0UExOj8ePH61//+pfat29vOf7ZZ59p/Pjx+uqrr1S3bt3bWZLi4+P13HPPafHixZbRV7g5iYmJ6tixoyIjI612oMXdZcOGDZo5c6a++uorq+C9OH/88Ye6du2q7du3F1q3EQAKCgsL08Hfzt3xGzO4N3Vid1QAAIByrtQj4Upj06ZNSkpKUvPmzSVdmZYWFRUlT09PqwBOknr06KGoqCgtW7bMsrYUyq/69evrp59+snUZsKHc3Fz985//1MiRI0scwMF4+est8g8OAACgvOHPMQDKO0NDuGrVqmnFihU6ceKEMjMz5eTkpL59+xa59pmdnZ2mT5+unTt3GlkSgNvkzJkzevzxxzV06FBbl4KrxMbGSuIPrwAAoPzhzzEAyjtD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8ssv1bdvXwUEBOj06dOaMWOGIiIitGrVKjk5OZm33b9/v6ZOnar+/furYsWKWrFihcaNG6eaNWvK399frVq10siRIzVt2jSNHz9e9evXlyQ9+eSTRb5e+U6fPq1Ro0apb9++GjJkiBISEjR9+nS5u7srNDRUkjR//nzNmzdPQ4YMUf369XXlyhX997//VXp6ukVf9evXl5OTk7Zu3VrgewUU5s8y9lpQvmg/Xx8mp8rYS5IWlHfVn2Xs5WLjegAAAACUvFIbwm3btk1JSUl6++23FR4eLkkKCgrSY489pokTJ2r79u1q3ry5vvvuO+3evVvvv/++eZRZUFCQjEajpk+fbtHnnj17JEne3t4W7U2aNNHw4cMVExOjyMhIGQwGeXh4qHnz5goPDzeP8LqVZs2a6dNPP1VOTo7s7e31ww8/6Nlnn1VSUpJ++OEH1axZU//+97+Vnp6uZs2amfd74403zH/Py8szh39jxozRuHHjLKZXpqWlKTY21mIEWf4D+l1dXRUXF2cesefu7q7u3btr69ateuGFFyRJEyZMUL169TR//nzzdi1atFDXrl314YcfFgjhunfvblHfrSQnJ+vUqVPmqaj5i1hUq1btjvveTlGuTb169cyhm4+Pjzk4PXnypObOnavXXntNUVFR5n4aN26s9u3ba9GiRRo1apS5/XbX1mQyaebMmTIYDJKkEydOaNasWerWrZvGjRsn6fr9tmfPHq1fv94cwu3evVurV6/W+PHj1bNnT3O/3t7eevHFF/XFF19YtKelpSk+Pl5VqlSRJPn7+yspKUnr1q2Tv7+/KlSooNq1a0u6Hrw9/fTTd329bjzWggULzEFeYGCgdu3apXXr1plDuN27dysoKEh9+/Y173fjFO589vb28vLy0u7duwu8h4dHXFycUlJSit3PyZMnZe/iorN33vShc+1/R3CfdXGRva5fixt/PuXz8PBQZGTkfa4OAAAAQEkotSFc/jS7zp07W7SHhoZq4sSJSkpKUvPmzc3T4J5//nmL7Tp27FgghDtz5ozs7e1Vvnz5AseLjIxU9+7dtW3bNu3Zs0e7du3S4sWLFR8fr3nz5t12lE+zZs30r3/9S8nJyXr66af1448/6u9//7vs7Oz0/fff6+WXX9b3338vo9GoRo0amfc7cuSIYmNjlZSUpLNnz+ratWsW790YnFSoUOGW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IEANGzY0h0eenp6aNWuWebvs7GytWrVKnTp1stg/LS1NklS5cuVC67Czu/3Hs2rVKnl6euqHH35QVFSU/P391bhxY40bN05ZWVk6duyYBgwYoIYNG6p169aaP3++xf43TzGNiIhQYmKiTpw4IU9PT3l6epqnbxY2HfU///mP+vfvr2bNmsnHx0ctWrTQwIEDlZ6ebnGcr7/+Wt7e3qpRo4Ykac6cOXJzc9Po0aMLPa+KFSuqcePGtz33DRs26LXXXlNQUJD8/PzUsWNHxcbGKjs727xNmzZt9NFHH0mSmjZtWuBzWb16tbp27So/Pz81btxYAwcOLBD+RUREqEuXLvr+++/VtWtXNWjQQHPnztXx48fl6empRYsWKSYmRi1atJCfn5969+6t48eP6/Lly3rvvffUrFkzNW3aVGPGjNGlS5cs+s7NzdXixYvVqVMnNWjQQE2bNlVUVJTOnj1rsV2bNm00cOBAffvttwoNDZWvr6+ee+45rVy50rzNqlWr9Oabb0qSevXqZf788j+volyvG8937969evnll+Xn56e2bdtq3rx5FqFwTk6OYmNj1b59e/n6+srf31+hoaH6/PPPLfrr3LmzUlJStHPnztt+ngAAAAAAPOwYCXeT3NxcRUZGavfu3XrzzTfl6+urffv2KTY2VgcPHtSCBQtkMBiUm5urAQMGaP/+/Ro0aJDq1aunPXv2qH///gX6TE5OVlpamgICAiza/fz8JElRUVGKjIxU48aN5erqetc1/+Mf/1CHDh00Y8YM7dmzRzNnzlReXp727dun7t27q3fv3lq/fr2mTp2qWrVq3fKhzu+8847effddHT58WDExMZJ0yxFfFy9eVN++fVWvXj1NmDBBrq6uOnPmjHbs2FHgeW6bNm1Sjx49JElnzpzRb7/9po4dO8rBweGuzzXf0aNH1bp1a/Xp00eOjo46ePCg5syZo0OHDmnq1KmSrj+T7JNPPtHKlSu1aNEiOTk5qWrVqpKkmTNnas6cOXr55Zc1dOhQZWZmKjY2Vq+88orWrFkjd3d387H+/PNPjRs3TpGRkapZs6Yee+wx83tLliyRj4+PJkyYoPPnz2vSpEkaOnSoKlWqpL/97W+aNm2afv31V33wwQdycXHR2LFjzfuOGTNGX375pfr27auAgACdPn1aM2bMUEREhFatWiUnJyfztvv379fU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Mm3duvWW11m9erV69+6txMREde7cWfHx8Ro4cOAd5963b58KCgqUmZmpqKgodezYUU888YQGDRrkOKampkYzZ85UWFiYTCaTXn31VR04cEB1dXWSJJPJpJEjRyo0NFTBwcFKTEzUww8/rC+++KLeXH379tXo0aMVHByshIQEBQcHa//+/ZKkvLw8nTp1SgsWLNBDDz2kiIgITZ8+XTU1NY7zc3JyZLfbNW/ePJlMJoWEhCgtLU3l5eU3rbwDAMAV8U44AAAAoAGKi4tVXV2tnj17OsaaNWsmi8XiWPV18uRJmc1mubm5OY4JDw9v9FxFRUVyd3eXxWJxjPn4+Kh79+46ceLEbc+Jjo6uN2axWPTZZ5/ddp4jR47I399fISEhtz2mefPm6tKli+NzQECAqqur9ccff8jX11fl5eVasmSJ9uzZo9LSUtXU1OjatWs3vd/ur58DAgIcO7uePHlSAQEBat++veN7s9ksd/f/rBk4fPiwzp49W+/3l66vkPvvx2MBAHBVlHAAAABAI/x3wfbXMbvdfsvvG8tutzdq/rudcy/z3ODhUf+/DDfmv7ESbv78+dq7d69SUlIUHBwsLy8vpaSkqLq6+q7XuXGNhvxudXV1MplMWrx48U3ftWnT5q73AQCA0XgcFQAAAGiABx98UJ6envr2228dY7W1tSooKHCsJAsJCdGPP/5Y77wffvih0XN17dpVdXV1KigocIyVlZXpp59+uu2qta5du6qwsLDe2F8//1WPHj1UWlp60/vbGuO7777TsGHDFBMTI5PJpMDAQBUXFzfqGiEhITp37pzOnTvnGDt06JCjpLuRtbi4WG3btlVwcHC9P76+vvecHwCAfwolHAAAANAA3t7eGjlypBYtWqTc3FwVFRUpNTVVFy5c0MsvvyxJio+PV3FxsebPn6+TJ09qx44dWrdunaTbr2C7lU6dOunJJ5/UzJkzdfDgQR0/flzJycm67777NHjw4Fuek5CQoH379mnZsmWy2Wxav369du7cecd5evfurfDwcCUlJWnv3r06c+aM8vLy9OWXXzYq686dO3X48GEdP35c06ZN07Vr1xp8vnT9fXGdO3eW1WrVsWPHVFBQoPT0dHl4eDh+t8GDB6tdu3aaNGmSvvnmG505c0b5+flKT09nh1QAQJNACQcAAAA00LRp0xQbG6vp06dr6NChOn78uJYvX66AgABJ0gMPPKDMzEzt3r1bQ4cO1ccff6zJkydLklq0aNGouebNm6ewsDAlJibqxRdfVGVlpVasWKGWLVve8niLxaI5c+Zo7dq1GjJkiHbs2KGkpKQ7zuHu7q7ly5erZ8+emjZtmp555hnNmTOn3q6kd2O1WtWuXTuNGjVK48ePV3h4uHr16tWoe3V3d3fshvrCCy8oJSVFEydOlJubm+N38/LyUlZWljp27KipU6cqNjZWKSkpunLlilq3bt2o+QAAMIKb/V5eHgEAAACgQVatWqWMjAzl5+fX22gAd3bs2DENHTpUGzZs0COPPGJ0HAAA/mdszAAAAAD8jbKysmQ2m9W2bVsVFhZq6dKliouLo4C7i507d8rLy0vBwcEqKSlRenq6TCaTevToYXQ0AAD+FpRwAAAAwN/o9OnT+vDDD3X58mUFBgYqPj7e8Ugqbu/q1atatGiRfv31V7Vu3VqPPfaYpk+f/rfsNgsAgCvgcVQAAAAAAADAyVgTDwAAAAAAADgZJRwAAAAAAADgZJRwAAAAAAAAgJNRwgEAAAAAAABORgkHAAAAAAAAOBklHAAAAAAAAOBk/wcOP2bZZV3N5QAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'treatment']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'treatment', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='treatment', kind='box',\n",
+ " hue_order=['left', 'right'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_sles/fig_sles.svg', format='svg')\n",
+ "# stats.to_csv('./out_c_afermentans/stats_day4_rl.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "9e1cacb4-26dd-4c18-b5a8-dae7a8d75bb3",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "qiime2-2020.6-system",
+ "language": "python",
+ "name": "qiime2-2020.6-system"
+ },
+ "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.10"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/figure_generation_clinical_day7_afermentans_reordered.ipynb b/figure_generation_clinical_day7_afermentans_reordered.ipynb
new file mode 100644
index 0000000..495852a
--- /dev/null
+++ b/figure_generation_clinical_day7_afermentans_reordered.ipynb
@@ -0,0 +1,1292 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "3f300489-27ee-4dd4-bfed-bae15a09a71f",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# ----------------------------------------------------------------------------\n",
+ "# SkinCom Analysis - Perform t-test & boxplots for log-ratios\n",
+ "# Author: Sherlyn Weng\n",
+ "# Version: 1.0.0\n",
+ "# Mmaintainer: Sherlyn Weng\n",
+ "# Email: y1weng@ucsd.edu\n",
+ "# This code is adapted from https://github.com/knightlab-analyses/reference-frames\n",
+ "# ----------------------------------------------------------------------------"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "201632e3-64c2-4f20-88ee-9166b9760e4e",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "import pandas as pd\n",
+ "import seaborn as sns\n",
+ "import matplotlib.pyplot as plt\n",
+ "import matplotlib as mpl\n",
+ "from biom import load_table\n",
+ "from scipy.stats import ttest_rel, wilcoxon, ttest_ind, pearsonr, spearmanr\n",
+ "from skbio.stats.composition import multiplicative_replacement\n",
+ "import matplotlib.gridspec as gridspec\n",
+ "\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "%matplotlib inline\n",
+ "\n",
+ "import warnings\n",
+ "warnings.filterwarnings('ignore')\n",
+ "\n",
+ "\"\"\"\n",
+ "Here, we have implemented an extended version of scipy's paired t-test function.\n",
+ "see https://github.com/scipy/scipy/blob/master/scipy/stats/mstats_basic.py#L1085\n",
+ "\n",
+ "This should really be pushed to scipy -- any volunteers?\n",
+ "\"\"\"\n",
+ "import numpy as np\n",
+ "from scipy.stats import t\n",
+ "from scipy.special import betainc\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "\n",
+ "Ttest_relResult = namedtuple('Ttest_relResult', \n",
+ " ('statistic', 'pvalue', 'lower_CI', 'upper_CI', 'ddof'))\n",
+ "\n",
+ "\n",
+ "def ttest_rel(x, y):\n",
+ " \n",
+ " D = x - y\n",
+ " n = len(D)\n",
+ " \n",
+ " sd = np.std(D, ddof=1) \n",
+ " se = sd / np.sqrt(n)\n",
+ " mu = np.mean(D)\n",
+ " T = mu / se\n",
+ " ddof = n-1\n",
+ " ci = se * t.ppf( 0.05 / 2, ddof) \n",
+ " lower = mu - np.abs(ci)\n",
+ " upper = mu + np.abs(ci)\n",
+ " \n",
+ " prob = betainc(0.5*ddof, 0.5, ddof/(ddof + T*T))\n",
+ " return Ttest_relResult(T, prob, lower, upper, int(ddof))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "2e1793ae-1a5d-4bc1-a63a-2beb2ea0dd54",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[0]].index\n",
+ " print('hio')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[1]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5242c6a2-b6b2-497e-aa34-225f3a9c1cab",
+ "metadata": {},
+ "source": [
+ "## Input Directory"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "0f656bb7-fbf6-4b0e-909b-d94835646df4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "input_dir = \"/home/y1weng/02_evonik_batch2/songbird/evonik\""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f9b78015-1a9a-4d8e-97d0-e7ff85a1e82c",
+ "metadata": {},
+ "source": [
+ "## Variables"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "16391819-2ad3-4cd3-b051-0abb8d737f98",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# # load metadata\n",
+ "# metadata = pd.read_table(f'{input_dir}/data/evonik_day0vday4_md.tsv', index_col = 0)\n",
+ "# filtered_metadata = metadata[(metadata['time_treatment'].isin(['post_control', 'post_RL', 'post_SLES'])) &\n",
+ "# (metadata['individual'].isin(['sub1', 'sub2','sub10', 'sub11', 'sub12', 'sub13', 'sub5', 'sub6', 'sub8', 'sub9'])) \n",
+ "# ].sort_values('individual')\n",
+ "# filtered_metadata_rl = metadata[(metadata['time_treatment'].isin(['post_control', 'post_RL', 'post_SLES'])) &\n",
+ "# (metadata['individual'].isin(['sub1', 'sub2', 'sub10', 'sub11', 'sub12', 'sub13', 'sub5', 'sub6', 'sub8', 'sub9'])) & \n",
+ "# (metadata['individual'].isin(['sub3', 'sub4', 'sub5', 'sub6', 'sub7', 'sub8', 'sub9', 'sub11'])) \n",
+ "# ].sort_values('individual')\n",
+ "# filtered_metadata_sles = metadata[(metadata['time_treatment'].isin(['post_control', 'post_RL', 'post_SLES'])) &\n",
+ "# (metadata['individual'].isin(['sub1', 'sub2','sub10', 'sub11', 'sub12', 'sub13', 'sub5', 'sub6', 'sub8', 'sub9'])) &\n",
+ "# (metadata['individual'].isin(['sub1', 'sub2', 'sub12', 'sub13'])) \n",
+ "# ].sort_values('individual')\n",
+ "# #metadata = filtered_metadata_sles\n",
+ "# #metadata = filtered_metadata"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "af3b610d-80e5-4525-b1bf-86d36a88e9cb",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "syncom_strains = [\"Corynebacterium afermentans\",\n",
+ " \"Cutibacterium acnes\",\n",
+ " \"Micrococcus luteus\",\n",
+ " \"Staphylococcus aureus\",\n",
+ " \"Staphylococcus capitis\",\n",
+ " \"Staphylococcus epidermidis\",\n",
+ " \"Staphylococcus hominis\",\n",
+ " \"Staphylococcus warneri\",\n",
+ " \"Streptococcus mitis\"]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 49,
+ "id": "8e5579b5-465f-4558-bc6f-4a0698f8dcf7",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# # modify metadata\n",
+ "# metadata = pd.read_table(f'{input_dir}/evonik_songbird_metadata.txt', index_col = 0)\n",
+ "# metadata['chemical'] = np.where(metadata['Subject'].isin(['sub1', 'sub2', 'sub10', 'sub12', 'sub13']), 'SLES', 'RL')\n",
+ "\n",
+ "# def determine_time_treatment(row):\n",
+ "# if row['Time_Point'] == 'pre':\n",
+ "# return 'pre_control'\n",
+ "# elif row['Time_Point'] == 'post' and row['Control'] == 'left':\n",
+ "# return 'post_control'\n",
+ "# elif row['Time_Point'] == 'post' and row['Control'] == 'right' and row['chemical'] == 'SLES':\n",
+ "# return 'post_SLES'\n",
+ "# elif row['Time_Point'] == 'post' and row['Control'] == 'right' and row['chemical'] == 'RL':\n",
+ "# return 'post_RL'\n",
+ "# else:\n",
+ "# return 'unknown'\n",
+ "\n",
+ "# metadata['time_treatment'] = metadata.apply(determine_time_treatment, axis = 1)\n",
+ "\n",
+ "# metadata = metadata.sort_values('time_treatment')\n",
+ "\n",
+ "# testing_list = ['Train'] * 3 + ['Test'] * 2 + ['Train'] * 3 + ['Test'] * 2 + ['Train'] * 9 + ['Test'] * 3 + ['Train'] * 13 + ['Test'] * 4\n",
+ "\n",
+ "# metadata['testing'] = testing_list\n",
+ "\n",
+ "# metadata\n",
+ "\n",
+ "# metadata.to_csv('/home/y1weng/02_evonik_batch2/songbird/evonik/day7_metadata.tsv', sep='\\t', index=True, header=True)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "id": "2406bf00-ebc3-4453-bcda-5170212f866b",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# # create a feature md\n",
+ "# df = pd.read_csv('/home/y1weng/02_evonik_batch2/songbird/evonik/evonik_all_taxonomy_reformatted.tsv', sep='\\t')\n",
+ "# df['sampleid'] = df.featureid\n",
+ "# df['full_name'] = df.featureid\n",
+ "\n",
+ "# df = df.loc[:, ['sampleid', 'full_name']]\n",
+ "# df.to_csv('/home/y1weng/02_evonik_batch2/songbird/evonik/day7_featuremd.tsv', sep='\\t', index=False, header=True)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1164688b-1357-4d73-bedb-66dc5b71386a",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "## SLES"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "d7fc69b7-01f2-449a-ad95-f7cb6dd60cda",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hio\n",
+ "Index(['post_left_sub1_S107_WoL_index_filtered',\n",
+ " 'post_left_sub10_S15_WoL_index_filtered',\n",
+ " 'post_left_sub12_S17_WoL_index_filtered',\n",
+ " 'post_left_sub13_S111_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -1.869453 | \n",
+ " 0.158339 | \n",
+ " -0.233951 | \n",
+ " 0.060804 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " 0.888782 | \n",
+ " 0.439591 | \n",
+ " -0.548265 | \n",
+ " 0.973165 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " 1.494316 | \n",
+ " 0.231953 | \n",
+ " -0.177493 | \n",
+ " 0.491722 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " 1.762337 | \n",
+ " 0.176220 | \n",
+ " -0.475287 | \n",
+ " 1.654939 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " 3.206298 | \n",
+ " 0.049095 | \n",
+ " 0.007707 | \n",
+ " 2.064444 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " 2.089460 | \n",
+ " 0.127843 | \n",
+ " -0.170947 | \n",
+ " 0.824543 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " 1.337519 | \n",
+ " 0.273415 | \n",
+ " -0.592327 | \n",
+ " 1.451166 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " -0.535378 | \n",
+ " 0.629533 | \n",
+ " -0.216667 | \n",
+ " 0.154266 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -1.869453 \n",
+ "log(M.luteus/C.afermentans) 0.888782 \n",
+ "log(S.aureus/C.afermentans) 1.494316 \n",
+ "log(S.capitis/C.afermentans) 1.762337 \n",
+ "log(S.epidermidis/C.afermentans) 3.206298 \n",
+ "log(S.hominis/C.afermentans) 2.089460 \n",
+ "log(S.warneri/C.afermentans) 1.337519 \n",
+ "log(S.mitis/C.afermentans) -0.535378 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.158339 \n",
+ "log(M.luteus/C.afermentans) 0.439591 \n",
+ "log(S.aureus/C.afermentans) 0.231953 \n",
+ "log(S.capitis/C.afermentans) 0.176220 \n",
+ "log(S.epidermidis/C.afermentans) 0.049095 \n",
+ "log(S.hominis/C.afermentans) 0.127843 \n",
+ "log(S.warneri/C.afermentans) 0.273415 \n",
+ "log(S.mitis/C.afermentans) 0.629533 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -0.233951 \n",
+ "log(M.luteus/C.afermentans) -0.548265 \n",
+ "log(S.aureus/C.afermentans) -0.177493 \n",
+ "log(S.capitis/C.afermentans) -0.475287 \n",
+ "log(S.epidermidis/C.afermentans) 0.007707 \n",
+ "log(S.hominis/C.afermentans) -0.170947 \n",
+ "log(S.warneri/C.afermentans) -0.592327 \n",
+ "log(S.mitis/C.afermentans) -0.216667 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) 0.060804 \n",
+ "log(M.luteus/C.afermentans) 0.973165 \n",
+ "log(S.aureus/C.afermentans) 0.491722 \n",
+ "log(S.capitis/C.afermentans) 1.654939 \n",
+ "log(S.epidermidis/C.afermentans) 2.064444 \n",
+ "log(S.hominis/C.afermentans) 0.824543 \n",
+ "log(S.warneri/C.afermentans) 1.451166 \n",
+ "log(S.mitis/C.afermentans) 0.154266 "
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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eu6553TgwAENHDhQHh4e6ty5s2JjY1VUVCTp8vcbHBwsSZo8ebKMRqOMRqPWrl173e/ryuc1mUwaNmyYvLy81KlTJ82ZM0d5eXkWbVeuXKlevXrJ09NT3t7e6tGjh2JjYy3a9OzZUxkZGfryyy+v+n0CAAAAAFDV3VMj4YqKihQSEqLExESNGTNG7u7uOnjwoBYvXqxjx44pLi5OdnZ2Kioq0qhRo3TkyBGNHTtWrVq10v79+zVy5Eirex46dEhpaWny9fW1OP7NN99Ikp5++ukbrjctLU329vYaP368GjRooMzMTK1fv14DBw7UunXr1KJFC0lSZmamBg4cqN9++02jRo2Sm5ubMjMz9e233yolJUWNGzc23/O9995TmzZt9O677yozM1PvvfeeRo8erS1btsje3l6StGbNGk2dOlXPPvushg4dqqKiIn388ccaPHiwVq9ebV5XbcSIEapbt66mTJkiZ2dnpaSkaN++fVbBTnx8vDp37ix7e3sVFhbqu+++k6urqx588MEbfjcnT56Uj4+PBgwYoLp16+rEiRNaunSpfvjhB61cuVKSNH36dG3atElLlixRZGSkHn30UdWvX79CzyhJubm5GjdunAYPHqzQ0FCL4HDbtm165JFHNHHiRBUUFCgyMlKjR4+Wn5+f8vPzFRERoXPnzmn27NmaNm2aoqOjzdcuXLhQS5Ys0cCBAxUWFqasrCwtXrxYL774or744gs1bNjQ3Pa3337TxIkTNXToUI0fP17x8fGaP3++GjZsqODgYLVu3VqRkZGaOHGiRo8ercDAQElS06ZNr/t9lcjLy1NoaKgGDBig4cOHa+/evVqyZIkcHR01duxYSdKmTZsUERGhUaNGydfXV4WFhTp+/LjOnz9vcS9nZ2e5uLhox44dev7552/4+wYAAAAA3D3OVbdXXL37yzx3tvrl7KH0+XPV7XWfzSurXPdUCLdr1y4lJCRo2rRpGjRokCTJz89PdevW1axZs7R7924FBARo586dSkxMVEREhPr162du5+DgoPnz51vcs2TaZOk1uM6cOSNJeuSRR264XhcXF/OoK+nyFNeOHTuqZ8+eWr16tXnNtL/97W8ymUz69NNPzaPNJKlbt25W9zQajZo7d675s729vSZMmKBDhw7Jy8tL2dnZioyMVLdu3Sye1c/PT926dVN0dLQWLlyoixcv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LPrJzMzUq6++qp49e8rFxUW1a9fW999/r8TERL322muSpK1bt6p169ZWz9WkSRO99957euONN/T888/rpZdektFoVHFxsX788UetWrVKLVq00FNPPVXmO3J0dJSPj4/i4uJkMBjUqFEj7dixQzt27Ljm+5Yuf6fvvPOOQkJCNGrUKD333HNydnZWamqqjh07pgsXLmjGjBnXda8bVbduXU2ZMkVTp05Venq6unTpIicnJyUnJ+s///mPHBwcLDazuB61atVSkyZN9PXXX8vPz0/33XefGjZsqAcffPCm3ldZFixYoN9++828uUdaWpri4uJ0//33W20KceDAAfPfHQAAAAAA7lVVNoSzs7PT4sWLtXDhQq1atUqLFi2Ss7OzXnnlFY0fP94crlWrVk0xMTGaM2eOli5dqvz8fHl7e2vevHnq37+/7rvvPvM9H3roIbVt21ZfffWVXnjhhdv6PPPmzdPMmTP13nvvqbCwUE899ZTmz5+vvn37WrTr0aOH9u3bp08++USLFi1ScXGxjh07purVqys2NlbLly/Xxo0btWjRIjk4OKhRo0Zq166dRVA2efJk2dnZadmyZcrOztaTTz6pmJgYi6mbNWvWlJubm9atW6ekpCQVFRWpcePGCgsL07Bhw1RcXKytW7dq4MCBZT5PUFCQvvjiC3300Uf65JNP9Ntvv8ne3l6PPvqoevToYd7Rtjzz589XRESEIiMjJV3eLfSjjz4qd3ppaf7+/vr73/+umJgYzZgxQ1lZWTIYDGrZsqWef/7567rHzerbt68aNWqkZcuW6a233tKlS5f0wAMPyNXVtdz3di0zZ87U7NmzNXLkSOXn52vs2LEaN27cTb+v0jw8PPTpp59q7ty5Sk1NVb169eTh4aHp06dbrJ936tQp/fTTT3r99ddvqB8AAAAAAKoKu+Li4uLKLuJOtHHjRr355ptauXKlfHx8zMf/+c9/6s0339SOHTvUoEGDSqzwznbw4EH1799fW7Zsuek18XD3WrhwodavX6+tW7de9w7Bp0+fVufOna86OvReEB4erkO/nmdjhtvh6Jdyb9ZQc+fOrexKAAAAAFRhVXYkXEVs2LBBFy9eNE/lPHDggOLi4tSmTRuLAE6SunXrpri4OC1btkwTJ06sjHLvCh4eHlbryuHekpWVpc8++0zTpk277gDuXrBt2zZJl0eD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WrVqpeTkZH355ZfKzMxUnTp1lJqaKnt7e4WGhqphw4bKyMjQJ598oieeeEIff/xxkZlqkZGR6tChgyIiInT27Fm9+eabCg4OVmxsrOrVq1ekhnbt2ik8PFwTJkzQc889p4CAAEm64vLNpUuXasmSJQoNDVW7du2UlZWlX3/91SqEkaStW7eqevXq8vf3l3QpnJIuhUbXqjRjERAQoHXr1unxxx9Xnz59NGzYMMvrT58+rccee0y1a9fWuHHj1KxZM+3cuVMRERFKTU3V2LFjrfqbO3eu7rvvPs2ePVt//fWX5XhOTo7GjRunJ598UiEhIfroo480e/ZspaSkaMuWLQoJCVH9+vW1aNEiPf/884qPj7cEtYcOHdLgwYPl7OysqVOnqn79+vrss880fvx4ZWVladCgQVY1TJw4Ud26ddMbb7yhxMREzZ07V6+88opWrFghSVq4cKHGjRunWrVqWZYOOzo6lnq8LhcZGSlPT0/NnDlTGRkZioyM1HPPPadNmzbJ3t5ef/31l5555hm1bdtW06dPV926dXXmzBnt3LlT2dnZVufy9vbWm2++qXPnzlnqAQqcqmqv6Hql/155M0qsai9JFf46Cpyqaq86ti4CAAAAqIQqdQi3fft2JSQkaOrUqRo6dKgkqXPnzqpdu7ZmzZqlHTt2yN/fX19//bX27NmjGTNmWIKPzp07y8HBQW+88YbVOffu3StJRe6X5unpqXHjxmnhwoUKCQmRnZ2dnJ2d5e/vr6FDh+r2228vsdb58+crLS1NGzdu1F133WU5fvkSPmdnZ7322muWx3l5eerSpYseeughffDBB5o0aZLVOZs1a6Z58+ZZHrdq1UpBQUFau3atRo0aVaQGR0dHy0yxO+64Qx06dCix5j179qhz58565plnLMcuX6JbIC4uTl26dFH16tUlSSdPnpQktWjRosTzl6Q0Y9GgQQM1aNBAktSoUSOr61m4cKGysrIUExMjJycnSZKvr68uXLig6OhoDR8+XPXr17e0b9WqlebOnVukjuzsbI0fP94SKHbq1ElffvmloqOjtXnzZsv77uTkpEceeURbtmzRkCFDJEkREREymUxauXKlatWqJUny8/NTSkqK3nrrLQ0cONBqBmVAQIAmT55seZyWlqa5c+fqzJkzcnJyUtu2bVWjRg05OjoWee/K+tlxcXFRRESE5bG9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NHr0aElSgwYNSj1eha+3W7dueuONN5SYmKi5c+fqlVde0YoVKyRJx48f18iRIxUYGKgRI0aoevXqOnXqlL788ssi75W3t7fi4uKu6X0GUP5OVbVXdL3S/ywFbgaJVe0lic8uKqxTVe1Vx9ZFAABsrswh3Pbt25WQkKCpU6dq6NChkqTOnTurdu3amjVrlnbs2CF/f399/fXX2rNnj2bMmGEJNDp37iwHBwe98cYbVufcu3evJKlNmzZWxz09PTVu3DgtXLhQISEhsrOzk7Ozs/z9/TV06FDdfvvtJda6cOFCZWVlKSYmRk5OTpIkX19fXbhwQdHR0Ro+fLjq169vad+sWTPNmzfP8rhVq1YKCgrS2rVrNWrUqGL7WL58uVJSUrRhwwbdc889kqSuXbtq+PDhVhtHZGZmKjw8XL1797a6/s6dO6t3795atGiR1f3wcnJyNHbsWMsSzsvl5eXp3XffVY0aNSRdmpH26quv6sSJE3r//fct7X799VetWLFC58+fV82aNYutf/HixapSpYref/99S2ATEBCgPn36XGFU/789e/aoX79+euKJJyzHevToUaRdXFyc1cy2kydPqkGDBlesqTS8vLzk5eVleZyXl6eAgAD5+vpq48aNGjZsmJo2barc3FxJUvPmza2WQ0ZERMhkMmnlypWqVauWJMnPz08pKSl66623NHDgQKuZll26dNGUKVOK1JGamqrly5dbAkZnZ2d1795da9asUXx8vOrU+f+/bj3//PP673//a1lyPX36dLVt21ZLly619NWlSxcNHDhQb775ZpEQ7vHHH9fw4cMlXfoc//7771q/fr1mzZolOzs7dejQQfb29mrQoEGRpZ+lGa/LBQQEaPLkyZbHaWlpmjt3rs6cOSMnJycdOHBAOTk5ev31162usX///kXGqF27dlqzZo2OHTumO++8s8jzAG4cZ2dnW5eACujkyZNFVjvcaBf/nqGfdNkfJYGKxF6XvpbCwsIkSSkpKZIkk8lkw6qAS78bhISE2LoM4JZR5hCuYGfJwuFQ//79NWvWLCUkJMjf31+7du2SJD344INW7fr27VskhDtz5ozs7e2LnW0WEhKiQYMGafv27dq7d692796t5cuXa926dVqyZEmR2XOX++qrr3T//ferQYMGljBGuhSSvf/++9q3b5/VPegK1+rh4aHbbrtNu3bt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vf7662U+b+vWrbV79259+eWXatiwoUwmk1q0aHHd41XYmjVrlJCQoK5du6pZs2Y6f/681qxZo2rVqlmC+AI//PCD3NzcDA82AQAAAAC4mZU5hLOzs9PixYs1f/58rVu3TgsXLlTjxo311FNPKTQ01BKuValSRVFRUZozZ47eeecdXbhwQZ06ddLcuXMVFBRkddP6pk2bysvLS1u3btVjjz1mOR4QEKCkpCRt27ZNq1atUkZGhhwdHeXm5qaoqCh169atxFqbNGmi9evXa9GiRXr77beVlJQkR0dH3XXXXfL397fa/VKSXn75ZX3//fcKCwtTVlaWvLy8NHXq1GLv+1WgcePGWrVqlWbOnKlp06apZs2aCgwM1NSpU4vc/23gwIFq3ry5li5dqsmTJysrK0uNGjWSm5tbiUGfke655x4tW7ZM4eHhmjBhgurVq6eHH35YDzzwgKZOnVria729vRUfH69ly5YpOztbTZs21ZAhQyzX/fnnn6tHjx5WQWeBDh06KDY2VsuWLdMnn3yixYsXKz8/X7fffrv8/f0VHBxcYt9TpkyRvb29oqKilJ2drQ4dOig6OlrPPfdcqa7b1dVVMTExWrRokSIjI5Wamqp69erJ2dm5yAYdRvHz89PatWsVFRWl119/XefOnZPJZJKrq6seffTRazrnxIkTNW3aNIWGhio7O1uPPvqo5syZc93jVVibNm20Y8cOzZs3T3/++adq166tNm3aaOnSpVYbVfz111/673//axWYAwAAAABwK7K7WNx6TwPFxsZq/Pjx+ve//617773Xcvyzzz7T+PHj9dVXX6lhw4Y3siQlJCToqaee0qJFiyyzr3B9kpKS1KVLF0VFRVntQItby/r16zVz5kx99dVXVsF7Sf744w/16NFDW7duLXLfRgDAjRcWFqb9v53hBvJAeWJjBtwMDm2We0snRURE2LoS4JZR5plwZbFhwwYlJyerdevWki4tS4uOjpanp6dVACdJvXv3VnR0tJYuXWq5txQqrsaNG+unn36ydRmwoby8PL377rsaNWpUqQM4AP9fwb0x+eMQAAC40fg9BDCGoSFcrVq1tHz5ch07dkxZWVlycnLSgAEDir33mZ2dnaZPn67t27cbWRKAG+TUqVN66KGHNHz4cFuXAlRIcXFxkvjlFwAA3Hj8HgIYw9AQLjAwsExftK6urlb3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1dixYxUQEKD69eubQx5PT0/NmjXLfF5mZqZWr16tDh06WFyfnJwsSSpfvnyBddjZFT6MKSkp8vb21tKlS81tJ06ckKenp1q2bGlx7qBBg9StWzfzz5s2bdKrr76qoKAg+fn5qX379oqJiVFmZqbFdeHh4erUqZO+++47denSRfXq1dPcuXN18uRJeXp6avHixZo/f75atWql+vXr66WXXtL+/fvz1bpv3z699tpratSokXx9fdW9e3ft3LnT4pzcJcH//e9/FRERoQYNGphnuBW2HPWrr76St7e3qlatKkmaM2eOXF1dNXr06ALHzM3NTQ0bNix0TIs6Nq1atdKHH34oSWrcuHG+z3vt2rXq0qWL/Pz81LBhQw0cODBf+He7sV20aJGio6PVrFkz+fn5qXfv3jp58qSuXLmid999V02aNFHjxo01ZswYXb582aLv7OxsLV68WB06dFC9evXUuHFjRUZG6vz58xbntWrVSgMHDtQ333yjzp07y9fXV88995xWrVplPmf16tV64403JEm9evWSp6enPD09lZCQUOTxuvl59+/frx49esjPz0+tW7fWvHnzLMLmrKwsxcTEqG3btvL19ZW/v786d+6szz//3KK/jh07KjExUbt3777l5wkAAAAAwMOuxM6Ey87OVkREhPbu3as33nhDvr6+OnDggGJiYnT48GEtWLBABoNB2dnZGjBggH755RcNGjRIderU0b59+9S/f/98fR48eFDJyckKCAiwaPfz85MkRUZGKiIiQg0bNpSLi0uR6ixTpozq1Kmj7777TuHh4ZKk77//XqVLl9bp06d17NgxVatWTdnZ2dq9e7fFe9OOHz+uli1bqk+fPipdurQOHz6sOXPm6MiRI5o6darFff766y+NGzdOERERqlatmp544gnzsSVLlqhWrVoaO3aspBvvvOvfv7/i4+Pl7OwsSdq5c6ciIiIUEBCgiRMnysHBQStXrlT//v01b948BQcHW9xv8ODBevHFF9W7d29lZWXdcgy2bNmi7t27S5LOnTun3377Te3bt5eDg0ORxrAgRRmb6OhoffLJJ1q1apUWLVokR0dHVaxYUZI0c+ZMzZkzRz169NDQoUOVnp6umJgYvfzyy1q3bp3c3d2LPLY+Pj6aMGGCLl68qEmTJmno0KEqV66c/vGPf2jatGn69ddf9f7778vZ2dn8GUjSmDFj9MUXX6hv374KCAjQ2bNnNWPGDIWHh2v16tVydHQ0n/vLL79o6tSp6t+/v9zc3LRy5UqNGzdO1apVk7+/v1q0aKGRI0dq2rRpGj9+vOrWrStJqlWrVpHHK9fZs2c1atQo9e3bV0OGDFFcXJymT58ud3d3de7cWZI0f/58zZs3T0OGDFHdunV19epV/fHHH0pJSbHoq27dunJ0dNT27dvz/V7h//xVyl4LyuT/Z8qZUvaSVOCxW/XlXGyVAQAAAACKS4kN4Xbs2KGEhAS99dZbCgsLkyQFBQXpiSee0MSJE7Vz5041bdpU3377rfbu3av33nvPPMssKChIRqNR06dPt+hz3759kiRvb2+L9kaNGmn48OGKjo5WRESEDAaDPDw81LRpU4WFhZlneBWmSZMm+vTTT5WVlSV7e3t9//33evbZZ5WQkKDvv/9e1apV03/+8x+lpKSoSZMm5utef/118//Oyckxh39jxozRuHHjLJZXJicnKyYmxmIGWe4L+l1cXBQbG2uesefu7q5u3bpp+/bteuGFFyRJEyZMUJ06dTR//nzzec2aNVOXLl30wQcf5AvhunXrZlFfYQ4ePKgzZ86Yl6LmbmJRuXLl2157K0UZmzp16phDNx8fH3Nwevr0ac2dO1evvvqqIiMjzf00bNhQbdu21aJFizRq1Chz+63G1mQyaebMmTIYDJKkU6dOadasWeratavGjRsn6cb3bd++fdq4caM5hNu7d6/Wrl2r8ePHq2fPnuZ+vb299eKLL2rNmjUW7cnJyVqxYoUqVKggSfL391dCQoI2bNggf39/lS1bVjVq1JB0I3h7+umn73i8br7XggULzEFeYGCg9uzZow0bNphDuL179yooKEh9+/Y1X3fzEu5c9vb28vLy0t69e/Mdww0eHh6FHruelCRJcjaZdPr06XyzfAtirxvf8Zu/20n/24/JZLq3Yh9gHh4eioiIsHUZAAAAAFCoEhvC5S6z69ixo0V7586dNXHiRCUkJKhp06bmZXDPP/+8xXnt27fPF8KdO3dO9vb2KlOmTL77RUREqFu3btqxY4f27dunPXv2aPHixVqxYoXmzZt3y1k+TZo00UcffaSDBw/q6aef1g8//KB//vOfsrOz03fffacePXrou+++k9FoVIMGDczXHTt2TDExMUpISND58+d1/fp1i2M3Bydl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f/yxWPqzs7uxxUF2dnax9He/sDEDAAAAAAAArMbNzU0dOnTQf/7zH82ePdv8DribHT9+XCdOnChSf66urpKk06dPF2ud1sZMOAAAAAAAAFjV+PHjdezYMc2cOVPr169XgwYNVK5cOZ07d05//vmnfv75Z73//vuqWrXqbft65plnZGdnp/fff1+///67XFxcJEkDBw609mPcE0I4AAAAAAAAWJWTk5OWLl2qlStXauPGjYqLi1NGRobKlSunatWqacyYMQoMDCxSXzVr1tTkyZO1cOFCLV++XBkZGZII4QAAAAAAAPAIqVKlig4fPpyv3Wg0KiwsTGFhYUXqZ+vWrYUe69Spkzp16nTXNdoC74QDAAAAAAAArIwQDgAAAAAAALAylqMCwH3Qpk0bW5dQrB625wEAAACsofKpou32iUcDIRwA3AchISG2LqFYPWzPAwAAAADWxnJUSbNmzZKnp6fV7zNjxgyFhoZatF28eFFTpkzRc889Jz8/P/n7+6t9+/YaO3aszpw5Y9V6EhIS5OnpqYSEBHPbpk2btHjx4iKdeyfeeust9ejRI1+fQ4YMUXBwsHx8fOTv76/w8HB98skn5p1N7lVOTo6mT5+u5s2by9vbW61atSqWfh9Ef/75p2bNmqWTJ0/auhRJUnR0tEJDQ5WdnW3rUgAAAAAAsDlmwt0nZ86c0cKFCzVz5kxzW3p6urp3766MjAz169dPnp6eunz5sv78809t3rxZJ06c0JNPPmm1murWrasVK1aoVq1a5rZNmzbp0KFD6tOnz23PLars7GzFx8erX79+5rYPPvhAsbGxCggI0IgRI1S1alWlp6dr9+7d+uCDD3T9+nX17t37rp8tV3x8vObNm6fBgwcrMDBQpUuXvuc+H1RHjhxRdHS0AgICVKVKFVuXoz59+mjJkiVau3ZtvvAZAAAAAIBHDSHcfbJkyRKVL19ezZs3N7d99dVXOnHihD755BM1atTI3N66dWv179/f6jOInJyc9PTTTxf7uXn99NNP+vvvv83vkPriiy8UGxurV155RW+//bbFuS1bttRrr72mo0eP3tW98vr9998lSWFhYXJ1dS2WPjMzM2U0Goulr4eZk5OTOnbsqI8++ogQDgAAAADwyGM5agEuX76syZMnq0WLFvLx8VGLFi00ZcoUXb161eK81NRUjR07VgEBAapfv745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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/evonik_songbird_metadata.txt', index_col = 0)\n",
+ "metadata['chemical'] = np.where(metadata['Subject'].isin(['sub1', 'sub2', 'sub10', 'sub12', 'sub13']), 'SLES', 'RL')\n",
+ "metadata = metadata.sort_values('Subject')\n",
+ "metadata = metadata[(metadata['Time_Point'] == 'post') & (metadata['chemical'] == 'SLES') & (metadata['Subject'] != 'sub2')]\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/evonik_all_taxonomy_reformatted.biom').to_dataframe().T\n",
+ "table = table.loc[metadata.index.tolist(), syncom_strains]\n",
+ "\n",
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'Control']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'Control', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='Control', kind='box',\n",
+ " hue_order=['left', 'right'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_sles/fig_sles.svg', format='svg')\n",
+ "# stats.to_csv('./out_c_afermentans/stats_day7_sles.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ef86565d-5578-45fd-8423-4ad797746748",
+ "metadata": {},
+ "source": [
+ "# RL"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "b2fd95e0-6312-4f4c-929b-e0aa03a29669",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[1]].index\n",
+ " print('***')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[0]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "aa36f30c-0a35-4688-922d-4969f8db38b3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/evonik_songbird_metadata.txt', index_col = 0)\n",
+ "metadata['chemical'] = np.where(metadata['Subject'].isin(['sub1', 'sub2', 'sub10', 'sub12', 'sub13']), 'SLES', 'RL')\n",
+ "metadata = metadata.sort_values('Subject')\n",
+ "metadata = metadata[(metadata['Time_Point'] == 'post') & (metadata['chemical'] == 'RL') & (metadata['Subject'] != 'sub3') & (metadata['Subject'] != 'sub4') & (metadata['Subject'] != 'sub7')]\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/evonik_all_taxonomy_reformatted.biom').to_dataframe().T\n",
+ "table = table.loc[metadata.index.tolist(), syncom_strains]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "6d035310-3444-459b-9774-5e78a4242ec1",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['post_left_sub11_S16_WoL_index_filtered',\n",
+ " 'post_left_sub5_S12_WoL_index_filtered',\n",
+ " 'post_left_sub6_S13_WoL_index_filtered',\n",
+ " 'post_left_sub8_S14_WoL_index_filtered',\n",
+ " 'post_left_sub9_S110_WoL_index_filtered'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -0.346499 | \n",
+ " 0.746428 | \n",
+ " -0.194093 | \n",
+ " 0.151023 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " -0.076048 | \n",
+ " 0.943033 | \n",
+ " -0.463871 | \n",
+ " 0.439137 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " 0.497989 | \n",
+ " 0.644627 | \n",
+ " -0.174774 | \n",
+ " 0.251172 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " 0.822257 | \n",
+ " 0.457119 | \n",
+ " -0.438598 | \n",
+ " 0.807692 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " 0.928363 | \n",
+ " 0.405768 | \n",
+ " -0.307996 | \n",
+ " 0.617433 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " -0.700531 | \n",
+ " 0.522202 | \n",
+ " -1.043407 | \n",
+ " 0.622962 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " 1.669434 | \n",
+ " 0.170354 | \n",
+ " -0.110073 | \n",
+ " 0.442065 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " -1.047233 | \n",
+ " 0.354098 | \n",
+ " -1.786511 | \n",
+ " 0.807928 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -0.346499 \n",
+ "log(M.luteus/C.afermentans) -0.076048 \n",
+ "log(S.aureus/C.afermentans) 0.497989 \n",
+ "log(S.capitis/C.afermentans) 0.822257 \n",
+ "log(S.epidermidis/C.afermentans) 0.928363 \n",
+ "log(S.hominis/C.afermentans) -0.700531 \n",
+ "log(S.warneri/C.afermentans) 1.669434 \n",
+ "log(S.mitis/C.afermentans) -1.047233 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.746428 \n",
+ "log(M.luteus/C.afermentans) 0.943033 \n",
+ "log(S.aureus/C.afermentans) 0.644627 \n",
+ "log(S.capitis/C.afermentans) 0.457119 \n",
+ "log(S.epidermidis/C.afermentans) 0.405768 \n",
+ "log(S.hominis/C.afermentans) 0.522202 \n",
+ "log(S.warneri/C.afermentans) 0.170354 \n",
+ "log(S.mitis/C.afermentans) 0.354098 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -0.194093 \n",
+ "log(M.luteus/C.afermentans) -0.463871 \n",
+ "log(S.aureus/C.afermentans) -0.174774 \n",
+ "log(S.capitis/C.afermentans) -0.438598 \n",
+ "log(S.epidermidis/C.afermentans) -0.307996 \n",
+ "log(S.hominis/C.afermentans) -1.043407 \n",
+ "log(S.warneri/C.afermentans) -0.110073 \n",
+ "log(S.mitis/C.afermentans) -1.786511 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) 0.151023 \n",
+ "log(M.luteus/C.afermentans) 0.439137 \n",
+ "log(S.aureus/C.afermentans) 0.251172 \n",
+ "log(S.capitis/C.afermentans) 0.807692 \n",
+ "log(S.epidermidis/C.afermentans) 0.617433 \n",
+ "log(S.hominis/C.afermentans) 0.622962 \n",
+ "log(S.warneri/C.afermentans) 0.442065 \n",
+ "log(S.mitis/C.afermentans) 0.807928 "
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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N26cHnnkETk6OurcuXMaP358mfX9SrvReyzh5OQkR0fHctuWDl9L/u/CtY6XrKtWUsMzzzxT7nVLj6Bs0KBBmTYODg5l1mkrT0WfV926dctsPFG6r+DgYOXn52vt2rVau3at7Ozs5OPjo9dee00eHh4W59auXVuFhYXKz89X7dq1/7BeAAAAALcBx4ZS655/3A63t2O/r899p73LY9VzXfG7KoRr0KCB8vLylJGRYRHEpaenKy8vzxx0NGjQQLm5ucrKyrII4kqCk6sZDAbl5OSU2THTz89Pq1ev1ldffVXpEG7z5s16/PHHLaakSlemJl5df8OGDXXu3LlK9VFaSUg3c+ZMubm5Xbdt06ZNNWfOHEnSL7/8oo0bN2rp0qWqUaOGwsLClJaWpn379un99983n2Nvb68OHTpoz549On/+vMW6Zzfqxx9/1I8//qjIyEjzZgSSyqxFdy0VuUepbChXFUpqiI6OLndtvKrcffVmn9e1DBgwQAMGDFBOTo4SEhL03nvvafjw4dqxY4dFCJmWlqa6desSwAEAAAAA7mp31dywDh06SJI2btxocbzkc8n3JZsslN7RccuWLWWuWbLz6alTpyyOBwUF6ZFHHtGyZcvK7HZZYtu2bdet187Orsy87V27dpUJ3Pz9/fXTTz+VmcJYGd7e3nJycpLJZJKbm1u5f5WnRYsWCgsLU5MmTXTs2JVhozt27FCtWrUUEBBg0Xb06NEqLCzUX/7yF4upmCWys7PLnRJaWulns2bNGqveY1Xy8/OTvb29kpKSyu3/6o0hblRJcHetkYCVfV5/xNHRUYGBgXrllVeUlZVl3pG3RFJSknkTEQAAAAAA7lZ31Ug4f39/derUSZGRkcrMzJS7u7sOHz6s6Oho+fv7y8/PT5IUEBAgb29vRUREKD093bw76ueffy7JcmTU448/LunKOmNXBw329vZavHixhg8frgEDBuiFF15Qu3btVKdOHZ04cUKbNm3SDz/8YF5rbN26dZo6darmzJmjfv36SZK6dOmimJgYRUVFqV27djp+/LhiY2PLjJwaNmyYtmzZojFjxigkJERubm767bfftHfvXgUHB1coVCrZ7XT69OlKT09Xt27d1KBBA128eFH/+c9/5ODgoEmTJunYsWOKiIhQz5491bx5c9WsWVP//ve/lZycrFGjRkm6MhU1ICCgzFROb29vzZgxQxERERo4cKAGDRqkFi1aKC8vT4cOHdLf//539ezZ0/w+hg4dqn379un48eOSrqyv1qxZM/P6fE5OTtqyZYuOHDlSpfdoTc2aNVNoaKjeffddnT59Wp06dZKTk5MuXLigxMREubi4mDcPuVEPPfSQHB0dtXnzZj3yyCOqU6eOHnrooZt+XuWZPn266tSpI29vbzk7O+vcuXNatmyZmjRpYvHnoKioSIcPH9bgwYMr3RcAAAAAANXBXRXC2dnZacmSJVq0aJFWr16txYsXy9nZWS+99JImTpxoDtdq1KihmJgYzZ07V8uWLVN+fr68vb01f/58DRw40GIB+gceeEDt27fXl19+qeeee86iv4cfflgbNmzQypUrtW3bNq1cuVL5+fl68MEH1bFjR73xxhvXrTc0NFTZ2dlavXq1li9frscee0x//etfFRUVZdHOyclJn332maKiovTpp58qJSVF9evXl4eHhxo1alTh59S/f381adJEy5cv1xtvvKHLly/rvvvuk6urqzlMcXZ2VrNmzfTxxx/r119/lZ2dnf70pz/p7bff1qBBg/Tbb7/pm2++UURERLl9vPDCC/Lw8NCKFSu0ZMkSpaSkyMHBQa1atdJLL71ksZtnabVq1dLSpUsVERGh6dOny8HBQU8++aTee+899e/fv8ru0drGjx+vli1b6pNPPtG6detUWFioxo0by9PTU+7u7hW+Xu3atfXOO+9o0aJFGjZsmAoKCsyh7s0+r9LatWundevWaevWrcrIyFDDhg31+OOPa+LEiRZTaRMSEpSZmak+ffpUqh8AAAAAAKoLu+Li4mJbF3Gn2LRpk15//XWtWrVKPj4+5uP//Oc/9frrr2vnzp2VCr2qo61btyo8PFx79+695q6ZqP4mT56spKQkffrppzd8TlJSkrp27aovv/yyzAYVAAAAAKxr+/btWr16tU6n5d95i/mjrDt4Ywb3Fo01b948bd++XdKVZb/udHfVSLiK2Lhxoy5duqRHHnlE0pXppnFxcWrXrp1FACdJPXr0UFxcnJYvX67JkyfbotzbTq9evdSrVy9blwEbOn36tLZs2aKVK1fauhQAAAAANyg+Pl6pqamSndMfNwZugfj4eEmEcNVa3bp1tWLFCp08eVKXL19W48aN1a9fv3LXCrOzs9OsWbO0e/duG1QK3J7Onj2rGTNm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9esVGhqq9evXq1GjRvL397d6CNe8eXPdd999kiRPT0+L77Zu3apvv/1WsbGx5qm0HTt21P33369x48Zp165dCgwMrFB/iYmJmjRpkoKDg83HunXrZtEmPz9f//73vzVp0iTzsbNnz173Gd6Ip556yuJzQUGB2rdvryeeeEK7du1SUFCQmjdvrlatWkmSWrRoYfFMZs2apTZt2mj58uXm8LFz587q37+/3n///TIh3IABAzR27NgydaSnp2vt2rVydnaWJNWtW1dDhw7VV199pc2bN6tmzSt/xFJSUjR79mz9/PPPatmypbKzsxUZGcbZSI8AACAASURBVKkePXpY/M78/PzUo0cPRUdHa9GiRebjubm5eu2118zPt2PHjjpy5Ig2bdqk8ePHy8HBQa6urpKuBG+l3/+NPK+rDRo0SMOGDZMkderUSadOndI//vEPzZ49W3Z2djp48KDuuecevfnmm2WeU2lt2rTRBx98oNzcXNWuXbvM9wBuby4uLhU+58yZM7p8+bKK8/OvfP79eK1ataqwsptTp04dNWnSRPeocvcIAAAAVFS1DeFKpm727dvX4nhwcLBmz56thIQEBQQEmBex79mzp0W7p59+ukwId/78ednb2193Wqm9vb369u2r9evXKyQkROvXr9czzzwje3v7qritStu5c6caNGggPz8/FRQUmI/7+fnJ3t5e+/btq3AI5+7urg8++ECFhYXq2LGjHn300TL3uXfvXmVmZpYJ525WVlaWli9fri+++EJnz5612AzDZDJd99yTJ0/qxIkTeuONN1RUVKSioiLzdwEBAVq2bJl+++03i6my16q/bdu25gBOklq2bClJ8vf3NwdwVx9PTk5Wy5YtdfDgQWVkZKhv374W76NWrVry9fXV119/bdGPvb19mXUIjUaj9u7de917LVHR51V6OrDRaFRubq4uXrwoZ2dneXh4KCMjQ2FhYerbt6+8vLzUsGHDcvtu1KiRCgsLdfHiRTVt2vSG6gVw+wgJCanwOeHh4Tp89Jjk+Pu/F7IvSZJyHZyqsrTKy7kkFxcXzZs3z9aVAAAA4C5SbUO49PR0OTg46N57LafA1K9fXw4ODuYpk+np6apdu7Z5mmKJkhFlV8vNzZWDg4Ps7Oyu23f//v0VFxenJUuW6PTp0+rXr99N3s3NS0lJUVpamtq2bVvu96mpqRW+5vvvv68lS5Zo5cqVioyMVIMGDdSrVy+9+uqr5uceHx8vT09Pix1JH3zwQSUnJ1fuRn73P//zP9q/f7/GjRuntm3bql69eiouLtbAgQPL7E5bWsk6aO+8847eeeedctukp6dbhHBXB21XKx3IlozyuNbxkjXcSmoIDQ0t97qlf2N169YtM2XUwcHhhjeJqOjzatCgQZm+JJnbtmvXTtHR0Vq5cqXCwsJUUFAgV1dXTZgwoUxYWDL6rfRajACqOceGUuvf/wfXsS+u/L11z2u3v5VK6gEAAABuoWobwjVo0EB5eXnKyMiwCOLS09OVl5dnDhkaNGig3NxcZWVlWQRxpReslySDwaCcnBzl5eVdd4fNli1bysPDQ9HR0fL09DSPgqqskhCjdOBSkeDMYDDovvvuU0xMzDW/r2hfDRs21PTp0zV9+nSdPXtW//rXv7RgwQL99ttvmjdvngoLC7Vjxw6NGjXK4jx/f3998skn+s9//mOeQlkRGRkZ2rVrl8aPH6+RI0eaj586deqGzi+519DQ0GtuAFE6hP2j4LWiSmqYOXOm3NzcqvTapd3s87qWoKAgBQUFKS8vT4mJiYqOjlZoaKg2bdpkMbUrPT1d0v/dMwAAAAAAd6Nquztqhw4dJEkbN260OF7yueT7kk0WvvjC8v+Kb9mypcw1S4KFGwkvRo4cqc6dO5t30rwZJVP4jh8/bnF8x44dZdqWhIOlRx117txZKSkpqlGjhtzc3Mr89dBDD0m6Ej7Vrl27TF9ffvnldWt88MEHNWzYMHl6eurYsWOSpP/3//6fUlJSykzlHDZsmBwdHTVr1ixlZ2eXuVZBQYG++uqra/ZVo0YNFRcXlwlC16xZc90aS7Ro0ULNmjXT8ePHy30Wbm5u1w1Zq4K3t7ecnJxkMpmuWUNFXevd3+zzupF+O3TooAkTJqigoEA///yzxfenT59Wo0aNrjldFQAAAACAu0G1HQnn7++vTp06KTIyUpmZmXJ3d9fhw4cVHR0tf39/+fn5SbqyBpi3t7ciIiKUnp5u3h31888/l2Q5Aurxxx+XJB08eNC84P+1dO/eXd27d//DOqdMmaL169fryy+/NAdhpTk7O6tjx46KjY1V/fr11aRJE+3du1fbtm0r0/aRRx6RJC1fvlwBAQHm0K13797asGGDRo4cqWHDhqlt27ays7PT2bNntWfPHr300kvy9vaWnZ2d+vTpo3/84x9q3ry5WrdurcOHD2vz5s0W/WRmZurll19W79695eLiIkdHR3333XdKTEzUK6+8Iknatm2b2rZtW+a+mjVrpnfffVevvfaann32Wb3wwgsyGo0qLi7WDz/8oNWrV6tVq1Z64oknyn1GTk5O8vHxUVxcnAwGg5o0aaKdO3dq586df/i8pSvv9K233lJISIjGjBmjZ555Rs7OzkpNTdXx48d14cIFvf322zd0rcqqV6+epk2bpunTpys9PV3dunVTgwYNdPHiRf3nP/+Rg4ODxWYWN6JOnTpq1qyZvvrqK/n5+emee+5R48aNdf/999/U8yrPwoUL9euvv5o390hLS1NcXJzuvffeMptCHDx40PxnBwAAAACAu1W1DeHs7Oy0ZMkSLVq0SKtXr9bixYvl7Oysl156SRMnTjSHazVq1FBMTIzmzp2rZcuWKT8/X97e3po/f74GDhyoe+65x3zNBx54QO3bt9eXX36p55577pbez/z58zVr1iy9++67Kiws1BNPPKEFCxaof//+Fu169eql/fv36+OPP9bixYtVXFys48ePq2bNmoqNjdWKFSu0adMmLV68WA4ODmrSpIk6dOhgEZRNnTpVdnZ2Wr58ubKzs/X4448rJibGYupm7dq15ebmpvXr1ys5OVlFRUVq2rSpwsLCNGLECBUXF2vbtm0aPHhwufcTFBSkzz//XB9++KE+/vhj/frrr7K3t9fDDz+sXr16mXe0vZYFCxYoIiJCkZGRkq7sFvrhhx9ec3ppaf7+/vr73/+umJgYvf3228rKypLBYFDr1q317LPP3tA1blb//v3VpEkTLV++XG+88YYuX76s++67T66urtd8bn9k1qxZmjNnjkaPHq38/HyNHz9eEyZMuOnnVZqHh4c++eQTzZs3T6mpqapfv748PDw0c+ZMi/XzTp8+rR9//FGvvvpqpfoBAAAAAKC6sCsuLi62dRG3o02bNun111/XqlWr5OPjYz7+z3/+U6+//rp27typRo0a2bDC29uhQ4c0cOBAbd269abXxMOda9GiRdqwYYO2bdt2wzsEJyUlqWvXrtcdHQrg9hYeHq7Dv5y/rTdmcG/RmN1RAQAAcEtV25FwFbFx40ZdunTJPJXz4MGDiouLU7t27SwCOEnq0aOH4uLitHz5ck2ePNkW5d4RPDw8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a/7wHEny9vaWk5OTTCZTuc/iRoK5m+Xn5yd7e3slJSWV2//VG0PcqJLg7lojASv7vP6Io6OjAgMD9corrygrK0vJyckW3yclJVV6kxEAAAAAAKqLajcSzt/fX506dVJkZKQyMzPl7u5u3gXU399ffn5+kq6EUt7e3oqIiFB6erp5d9TPP/9ckuXop8cff1zSlbXErg4TPv/8c61Zs0Z9+vSRm5ub6tatq+TkZH3yySdKTU3Va6+9Zm67bt06TZ06VXPmzFG/fv0kSV26dFFMTIyioqLUrl07HT9+XLGxsWVGRrm5ualFixaaN2+eCgsLde+992r79u367rvvbvi5DBs2TP/617/04osv6uWXX9ajjz6qvLw8JScna9euXZoxY4aaNm0qZ2dndezYUbGxsapfv76aNGmivXv3atu2bRbXO3bsmCIiItSzZ081b95cNWvW1L///W8lJydr1KhRkq5MRQ0ICCgzldPb21szZsxQRESEBg4cqEGDBqlFixbKy8vT/2fv3uN7rv//j99nzGkOb4c5pINFG82GdqjZGIYiJbJKFpUPS1qUJqd8PyE261OOLR+LHD6orDJRM51Qn1HEJ6LyjsQw7ajZxub3h/b+eW8zG15eM7fr5dLF5f16P9+v1+P1fL/3tu6eh127dmnVqlW67777bO9VaGiotm3bZgsGb7/9dt188822tfucnZ31ySefaM+ePWXqi8IdXSdNmqSMjAz16NFD9evX18mTJ/Xjjz/KyclJo0ePLnPfXo6bb75ZI0eOVHR0tA4fPix/f385OzsrJSVFO3bskKurq21jkbJq0aKFatasqXXr1ql169aqUaOGWrRoccX9VZJJkyapRo0a6tixoxo3bqxjx47p7bffVvPmze1+RgoKCrR79249+uijl30tAAAAAAAqg0oXwjk4OGjBggWaM2eOVq9erXnz5qlx48Z64oknFB4ebgvXqlSpopiYGM2cOVNvv/22zpw5o44dO2rWrFkKCQmxW2S+adOm8vHx0aZNm/Twww/bjgcFBSklJUWff/65li9frqysLDk7O8vDw0MxMTHq2rVrqbWOHDlS2dnZWr16tRYtWqQ2bdrozTff1Ny5c+3aOTo6KiYmRlOnTtWUKVPk5OSkPn366JVXXtHw4cPL1C/Ozs5auXKlYmJitGLFCh09elS1atVSixYtFBAQYLfm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p8vX19fuuJeXlyQpIiJCYWFhuuuuu1S3bt0y15qcnKyHH35YkhQWFqZWrVopNTVVX375pbKzs1WnTh2lp6fL0dFR4eHhatiwobKysvTRRx/p0Ucf1YcfflhspFp0dLTat2+vqKgonTx5Um+88YZCQ0MVHx+vevXqFavhzjvvVGRkpMaNG6dnnnlGQUFBknTR6ZuLFi3SwoULFR4erjvvvFM5OTn69ddf7UIYSdq0aZOqV6+uwMBASefDKel8aHS5ytIXQUFBWr16tR555BH17t1bQ4YMsb3++PHjevjhh1W7dm2NGTNGzZo109atWxUVFaX09HSNHj3a7nqzZs3S3XffrRkzZuivv/6yHc/Ly9OYMWP0+OOPKywsTB988IFmzJihtLQ0bdy4UWFhYapfv77mz5+vZ599VomJibagdt++fXrsscfk6uqqyZMnq379+vr00081duxY5eTkaODAgXY1jB8/Xl27dtXrr7+u5ORkzZo1Sy+99JKWLl0qSZo3b57GjBmjWrVq2aYOOzs7l7m/LhQdHS1vb29Nnz5dWVlZio6O1jPPPKP169fL0dFRf/31l5566im1bdtWU6dOVd26dXXixAlt3bpVubm5dufy9fXVG2+8oVOnTtnqAQAzHKvqqNh6Zfu7ObmqoySVuf317FhVR9UxuwgAAIAbQKUO4TZv3qykpCRNnjxZgwcPliR16tRJtWvX1muvvaYtW7YoMDBQX3/9tXbs2KFp06bZgo9OnTrJyclJr7/+ut05d+7cKUnF1kvz9vbWmDFjNG/ePIWFhcnBwUGurq4KDAzU4MGDdfPNN5da65w5c5SRkaF169bptttusx2/cAqfq6urXnnlFdvj/Px8de7cWffff7/ee+89TZgwwe6czZo10+zZs22PW7VqpZCQEK1atUojRowoVoOzs7NtpNgtt9yi9u3bl1rzjh071KlTJz311FO2YxdO0S2UkJCgzp07q3r16pKko0ePSpJatGhR6vlLU5a+aNCggRo0aCBJatSokd39zJs3Tzk5OYqLi5OLi4skyd/fX2fOnFFsbKyGDh2q+vXr29q3atVKs2bNKlZHbm6uxo4dawsUO3bsqC+//FKxsbHasGGD7X13cXHRgw8+qI0bN2rQoEGSpKioKFksFi1btky1atWSJAUEBCgtLU1vvvmmBgwYYDeCMigoSBMnTrQ9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PKLmzZsrMzNTVqtV//vf/zR37tzydGO5OTg46P/+7/8UFhZm64fGjRsrLS1N+/fvV0pKil599dVyn7d169bavn27vvzySzVs2FAWi0UtWrS44v4qauXKlUpKSlKXLl3UrFkznT59WitXrlS1atVsQXyhH374QR4eHoYHmwAAAAAAVGTlDuEcHBy0YMECzZkzR6tXr9a8efPUuHFjPfHEEwoPD7eFa1WqVFFMTIxmzpypt99+W2fOnFHHjh01a9YshYSE2C1a37RpU/n4+GjTpk16+OGHbceDgoKUkpKizz//XMuXL1dWVpacnZ3l4eGhmJgYde3atdRamzRpojVr1mj+/Pl66623lJKSImdnZ912220KDAy02/1Skl588UV9//33ioiIUE5Ojnx8fDR58uQS1/0q1LhxYy1fvlzTp0/XlClTVLNmTQUHB2vy5MnF1n8bMGCAmjdvrkWLFmnixInKyclRo0aN5OHhUWrQZ6Q77rhDixcvVmRkpMaNG6d69erpgQce0L333qvJkyeX+lpfX18lJiZq8eLFys3NVdOmTTVo0CDbfX/22Wfq3r27XdBZqH379oqPj9fixYv10UcfacGCBSooKNDNN9+swMBAhYaGlnrtSZMmydHRUTExMcrNzVX79u0VGxurZ555pkz37e7urri4OM2fP1/R0dFKT09XvXr15OrqWmyDDqMEBARo1apViomJ0auvvqpTp07JYrHI3d1dDz300GWdc/z48ZoyZYrCw8OVm5urhx56SDNnzrzi/iqqTZs22rJli2bPnq0///xTtWvXVps2bbRo0SK7jSr++usv/fe//7ULzAEAAAAAuBE5nCtpvqeB4uPjNXbsWP3nP//RXXfdZTv+6aefauzYsfrqq6/UsGHDa1mSkpKS9MQTT2j+/Pm20Ve4MikpKercubNiYmLsdqDFjWXNmjWaPn26vvrqK7vgvTR//PGHunfvrk2bNhVbtxEAADNERERo928nbpxNCUpyA27M4NnSRVFRUWZXAgCoRMo9Eq481q5dq9TUVLVu3VrS+WlpsbGx8vb2tgvgJKlXr16KjY3VokWLbGtL4frVuHFj/fTTT2aXARPl5+fr3//+t0aMGFHmAA64HhSuWck/2gAAAJiH38lwPTI0hKtVq5aWLFmiQ4cOKScnRy4uLurfv3+Ja585ODho6tSp2rx5s5El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ktzc3LR+/XpFR0crICBAHTt21NChQ2W1Wkt9bX5+vhYsWKBevXrJ09NTPj4+6tevn9asWWP3utTUVH333Xfq0aOHJCkxMVE///yzRowYYRfAXehSu5qlpqZqypQpuu+++9S+fXsFBARo2LBh2rNnj61N4XTgs2fPatmyZXJzc7Ob1nzs2DGNHz9eAQEB8vDwUK9evbRkyRK76xT2z9q1a/Xqq6/K399f7dq1kyS9/PLL8vb21v79+xUaGiovLy8FBgbazrF161YNGDBAXl5euv/+++2m4hY6cOCAwsPD5efnJw8PD/Xt21fx8fF2bQrvY/v27aV+jrp166Z9+/Zp27ZttnstfL/K0l8X3m9ZPg979uzR8OHDdc8998jDw0OdO3fWyJEjlZGRYWvTsGFD+fv7a9WqVaW+nwAAAAAAVHbX3Ui4goIChYWFaceOHXr22Wfl6empXbt2acGCBdq/f79iY2Pl4OCggoICjRgxQnv37tWoUaPUtm1b7dy5U8OHDy92zt27dys9PV2+vr52x728vCRJERERCgsL01133aW6deuWu+bx48era9euev3115WcnKxZs2bppZde0tKlS21tJk2apI8++khPPvmkOnXqJKvVqjfffFM//PCD3n//fdWoUcPWds+ePTpy5IhGjhypWrVq6Y033tCzzz6rRx99VL/88osmTJig7OxszZgxQ+Hh4frwww8vWWN0dLS8vb01ffp0ZWVlKTo6Ws8884zWr18vR0fHEl/z/9i78/iarv3/4++TcBJpEjlCaHERNEEkNSQqiTmlpUhjqFaC0h+pmuvGdDt8q9cQtEVE5JqKanmoGqtNhSrahtaQ3qt0iJkaKok5IcnvDzfnOhkIchzk9Xw8PDRr77P2Z69zQvO21l5z585VfHy8hgwZonr16unq1av6/fffLUIYSUpMTJSDg4OaNWsm6UY4Jd0Ije5WWlqa7O3tNWTIELm7u+vChQtatWqVevTooc8//1y1atVSy5YttWzZMr344otq3769evfubX79qVOn1LVrVz322GMaPny4Hn/8cW3fvl3R0dFKS0vTsGHDLK43ZcoUPf3005o4caIuXbpkbs/MzNTw4cPVs2dPRUZGasWKFZo4caJSU1P19ddfKzIyUm5ubpo1a5Zef/11bdy40Rzq7t+/Xy+99JI8PT315ptvys3NTV9++aVG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eFGxsbF66aWXtHr1anl4eBR5bH18fDR+/HidO3dOEydO1NChQ1W+fHn97W9/09SpU/XLL7/o/fffl4uLi/k9kKQxY8boiy++UN++fRUQEKBTp05p+vTpioiI0MqVK+Xk5GQ+d9++fZoyZYr69+8vd3d3LV++XOPGjVO1atXk7++vli1bauTIkZo6dareeust1atXT5JUq1atIo9XrlOnTmnUqFHq27evhgwZooSEBE2bNk0eHh4KDQ2VJM2dO1fx8fEaMmSI6tWrp6tXr+r3339Xenq6RV/16tWTk5OTtmzZku/7Co+2P0vZa17Zov05iTt3spS9JBVpjP8sZS8XaxcEAAAA4LYe2hBu69atSkpK0ptvvqnw8HBJUlBQkB577DFNmDBB27ZtU7NmzfTtt99q165deu+998yzzIKCgmQ0GjVt2jSLPnfv3i1JqlOnjkV748aNNXz4cMXExCgyMlIGg0Genp5q1qyZwsPDzTO8CtO0aVN98sknysrKkr29vb7//ns988wzSkpK0vfff69q1arp3//+t9LT09W0aVPz61577TXzf+fk5JjDvzFjxmjcuHEWyyvT0tIUGxtrMYMs9wH9rq6uiouLM8/Y8/DwULdu3bRlyxY9//zzkqTx48erbt26mjt3rvm85s2bq0uXLvrggw/yhXDdunWzqK8wycnJOnnypHkpau4mFpUrV77ta2+lKGNTt25dc+jm4+NjDk5PnDihOXPm6JVXXlFUVJS5n0aNGqldu3ZasGCBRo0aZW6/1diaTCbNmDFDBoNBknT8+HHNnDlTXbt21bhx4yTd+Lzt3r1b69atM4dwu3bt0qpVq/TWW2+pZ8+e5n7r1KmjF154QZ9//rlFe1pampYtW6aKFStKkvz9/ZWUlKS1a9fK399f5cqVU40aNSTdCN6eeuqpOx6vm681b948c5AXGBionTt3au3ateYQbteuXQoKClLfvn3Nr7t5CXcue3t7eXt7a9euXfmO4dHl6elp6xJu68SJE/lmTT9Mcq5dkySdKV36tufa68b9RkVFKTU1VdKNP7vuhaenpyIjI++pDwAAAKCkeWhDuNxldp06dbJoDw0N1YQJE5SUlKRmzZqZl8E999xzFud16NAhXwh3+vRp2dvbq2zZsvmuFxkZqW7dumnr1q3avXu3du7cqYULF2rZsmWKj4+/5Syfpk2b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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='Control', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'Control']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'Control', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='Control', kind='box',\n",
+ " hue_order=['left', 'right'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_sles/fig_sles.svg', format='svg')\n",
+ "# stats.to_csv('./out_c_afermentans/stats_day7_rl.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "95f2acab-fbed-4ba2-9ff2-87334e09af9d",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "qiime2-2020.6-system",
+ "language": "python",
+ "name": "qiime2-2020.6-system"
+ },
+ "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.10"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/figure_generation_invitro_afermentans_reordered.ipynb b/figure_generation_invitro_afermentans_reordered.ipynb
new file mode 100644
index 0000000..192774d
--- /dev/null
+++ b/figure_generation_invitro_afermentans_reordered.ipynb
@@ -0,0 +1,1124 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "7998a5a1-e3de-42b7-980c-626c1ae24168",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# ----------------------------------------------------------------------------\n",
+ "# SkinCom Analysis - Perform t-test & boxplots for log-ratios\n",
+ "# Author: Sherlyn Weng\n",
+ "# Version: 1.0.0\n",
+ "# Mmaintainer: Sherlyn Weng\n",
+ "# Email: y1weng@ucsd.edu\n",
+ "# This code is adapted from https://github.com/knightlab-analyses/reference-frames\n",
+ "# ----------------------------------------------------------------------------"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "id": "005db807-d8b9-4eb4-893b-ec07aba48ec3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "import pandas as pd\n",
+ "import seaborn as sns\n",
+ "import matplotlib.pyplot as plt\n",
+ "import matplotlib as mpl\n",
+ "from biom import load_table\n",
+ "from scipy.stats import ttest_rel, wilcoxon, ttest_ind, pearsonr, spearmanr\n",
+ "from skbio.stats.composition import multiplicative_replacement\n",
+ "import matplotlib.gridspec as gridspec\n",
+ "\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "%matplotlib inline\n",
+ "\n",
+ "import warnings\n",
+ "warnings.filterwarnings('ignore')\n",
+ "\n",
+ "\"\"\"\n",
+ "Here, we have implemented an extended version of scipy's paired t-test function.\n",
+ "see https://github.com/scipy/scipy/blob/master/scipy/stats/mstats_basic.py#L1085\n",
+ "\n",
+ "This should really be pushed to scipy -- any volunteers?\n",
+ "\"\"\"\n",
+ "import numpy as np\n",
+ "from scipy.stats import t\n",
+ "from scipy.special import betainc\n",
+ "from collections import namedtuple\n",
+ "\n",
+ "\n",
+ "Ttest_relResult = namedtuple('Ttest_relResult', \n",
+ " ('statistic', 'pvalue', 'lower_CI', 'upper_CI', 'ddof'))\n",
+ "\n",
+ "\n",
+ "def ttest_rel(x, y):\n",
+ " \n",
+ " D = x - y\n",
+ " n = len(D)\n",
+ " \n",
+ " sd = np.std(D, ddof=1) \n",
+ " se = sd / np.sqrt(n)\n",
+ " mu = np.mean(D)\n",
+ " T = mu / se\n",
+ " ddof = n-1\n",
+ " ci = se * t.ppf( 0.05 / 2, ddof) \n",
+ " lower = mu - np.abs(ci)\n",
+ " upper = mu + np.abs(ci)\n",
+ " \n",
+ " prob = betainc(0.5*ddof, 0.5, ddof/(ddof + T*T))\n",
+ " return Ttest_relResult(T, prob, lower, upper, int(ddof))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "2e265a3f-520c-43bc-955b-20b179fe1cee",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[0]].index\n",
+ " print('hellooo')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[1]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5242c6a2-b6b2-497e-aa34-225f3a9c1cab",
+ "metadata": {},
+ "source": [
+ "## Input Directory"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "0f656bb7-fbf6-4b0e-909b-d94835646df4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "input_dir = \"../20231128_run_songbird_skincom\""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f9b78015-1a9a-4d8e-97d0-e7ff85a1e82c",
+ "metadata": {},
+ "source": [
+ "## Variables"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1164688b-1357-4d73-bedb-66dc5b71386a",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "## SLES"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "id": "d993c044-e503-4682-9279-dbde03602d26",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "hellooo\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -4.546796 | \n",
+ " 0.002646 | \n",
+ " -3.477390 | \n",
+ " -1.097931 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " 1.786337 | \n",
+ " 0.117204 | \n",
+ " -0.013707 | \n",
+ " 0.098391 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " -12.891296 | \n",
+ " 0.000004 | \n",
+ " -4.310889 | \n",
+ " -2.974538 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " 0.706425 | \n",
+ " 0.502753 | \n",
+ " -0.041647 | \n",
+ " 0.077132 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " 1.257191 | \n",
+ " 0.249005 | \n",
+ " -0.074636 | \n",
+ " 0.244093 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " 9.084779 | \n",
+ " 0.000040 | \n",
+ " 0.452786 | \n",
+ " 0.771429 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " 8.768258 | \n",
+ " 0.000051 | \n",
+ " 0.333996 | \n",
+ " 0.580661 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " -7.348948 | \n",
+ " 0.000156 | \n",
+ " -0.141701 | \n",
+ " -0.072711 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -4.546796 \n",
+ "log(M.luteus/C.afermentans) 1.786337 \n",
+ "log(S.aureus/C.afermentans) -12.891296 \n",
+ "log(S.capitis/C.afermentans) 0.706425 \n",
+ "log(S.epidermidis/C.afermentans) 1.257191 \n",
+ "log(S.hominis/C.afermentans) 9.084779 \n",
+ "log(S.warneri/C.afermentans) 8.768258 \n",
+ "log(S.mitis/C.afermentans) -7.348948 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.002646 \n",
+ "log(M.luteus/C.afermentans) 0.117204 \n",
+ "log(S.aureus/C.afermentans) 0.000004 \n",
+ "log(S.capitis/C.afermentans) 0.502753 \n",
+ "log(S.epidermidis/C.afermentans) 0.249005 \n",
+ "log(S.hominis/C.afermentans) 0.000040 \n",
+ "log(S.warneri/C.afermentans) 0.000051 \n",
+ "log(S.mitis/C.afermentans) 0.000156 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -3.477390 \n",
+ "log(M.luteus/C.afermentans) -0.013707 \n",
+ "log(S.aureus/C.afermentans) -4.310889 \n",
+ "log(S.capitis/C.afermentans) -0.041647 \n",
+ "log(S.epidermidis/C.afermentans) -0.074636 \n",
+ "log(S.hominis/C.afermentans) 0.452786 \n",
+ "log(S.warneri/C.afermentans) 0.333996 \n",
+ "log(S.mitis/C.afermentans) -0.141701 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) -1.097931 \n",
+ "log(M.luteus/C.afermentans) 0.098391 \n",
+ "log(S.aureus/C.afermentans) -2.974538 \n",
+ "log(S.capitis/C.afermentans) 0.077132 \n",
+ "log(S.epidermidis/C.afermentans) 0.244093 \n",
+ "log(S.hominis/C.afermentans) 0.771429 \n",
+ "log(S.warneri/C.afermentans) 0.580661 \n",
+ "log(S.mitis/C.afermentans) -0.072711 "
+ ]
+ },
+ "execution_count": 43,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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L730kk6fPm31Hjt37tSgQYPk6+srHx8fvfzyyzp8+LBFm8mTJ6t169YymUwaNmyYfH191bFjR82ZM8ccCJ45c0Zt2rSRJC1atMj83Rd9X6UZr+vf95dfftHEiRPl5+en9u3ba8qUKcrIyLBo+8UXX+i5556Tn5+ffH191bVrV82aNcuiTUhIiGrWrKm1a9fe7OsEAAAAAKDSq7QHMxQUFCgsLEyJiYkaM2aMvLy8dOjQIS1evFjHjx9XXFycHBwcVFBQoFGjRuno0aMaO3asWrZsqQMHDmjkyJFWzzx8+LBSU1MVEBBww3779Omj0aNH69y5c3r44Yd19uxZffvtt4qNjbUKeCpaeHi4srOztXXrVq1evdris/z8fI0cOVJHjhzRyJEj5enpKZPJpAULFuinn37SypUrVaVK2TLZP//5zzp16pReffVVNWjQQKmpqTp06JBSU1Mt2sXHx6tNmzYyGAySpD179sjNzU1eXl7lftekpCQ1a9ZMPXv2VO3atXX27FmtWLFCzz//vLZs2SInJyeFh4fL09NTb7/9tl5//XW1adPGvBx2z549CgsLU0BAgGbNmqXq1atrzZo1GjlypJYtW6agoCCL/saNG6dnn31WL7/8svLz883Xjxw5oqSkJIWHh6tmzZp6//33NWbMGA0cOFD/+c9/NHXqVGVmZmr27NkaP3681q9fb7537dq1mjZtmp5++mkNHTpUBQUF+uijjzR48GCtWbPGIkDNyclReHi4BgwYoOHDh2vfvn1asmSJXFxcNHbsWNWrV08fffSRXnnlFT333HPq16+fJOmhhx4q9Xhdb+zYserRo4f69++v48eP67333pMkzZ49W5L03Xff6dVXX9ULL7ygiRMnytHRUWfOnNH3339v8RwnJyf5+vpq586dGjt2bLm/b9xYjoODzlV1VFzt+yVJ56s66j471wQAAAAAsFZpQ7jdu3crISFB06dP16BBgyRJgYGBqlWrlmbNmqU9e/YoODhYu3btUmJioiIjI83BRWBgoJycnDR//nyLZx44cECS9Nhjj92w3+DgYNWtW1fr169XeHi41q9fr7p16yooKMjmIVzjxo31wAMPSJJ8fHwsPtu6dau+/fZbLVu2zLyUtl27dnrwwQc1ZswY7dq1SyEhIWXqLzExURMnTlRoaKj5WpcuXSza5Obm6t///rcmTpxo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hIRi+4uOjparq6t+/PFHI8suleDgYAUHB9/yc8+cOSM3Nzft3LnTciwtLU0LFixQ79691aZNG7m7u6tr166aNGmSDh06dF3jFOWHH37QoEGD1LZtW7m6uio6Ovqm9V3WrFmzpsxcX3p6ury9vRUXF2frUgAAAAAAsDmWo/4lISFB7733nubNm2c5dv78eQUFBSkrK0vPP/+8XF1dlZGRoaNHj2rLli06ceKEGjZsaMOqS2/KlCk2OXfr1q2qXr26fH19JUnHjh3Tc889p9TUVA0aNEivvPKKHB0ddezYMW3cuFFDhgzRnj17rnu8K02cOFEXL17UvHnz5OTkpHvuueem9FsWrV27VjVq1CgUJttC9erV9eyzzyoiIkIdO3ZUpUqVbF0SAAAAAAA2Qwj3lxUrVqhevXrq2LGj5dhnn32mEydOaPXq1fLy8rIc79Kli4YPH668vDxblHpDmjZtapNzY2Nj1blzZ1WqVEm5ubl66aWXlJ6erg8//FAuLi6Wdj4+PgoKClJsbOx1j1XQL7/8ooEDB8rPz++m9JednS0HB4eb0ld5179/fy1cuFCxsbHq2bOnrcsBAAAAAMBmbovlqAVlZGRo1qxZCggIkLu7uwICAhQeHq7MzEyrdmlpaZowYYJ8fHzUpk0bDRs2TMeOHZOrq6vmz59vaZedna3o6Gj16tXL6vyUlBRJUr169Yqso0KFkt2+8+fP64033pCvr698fX01atQonTlzxqpNTk6OFi1apK5du8rd3V1+fn6aPHmykpOTrdp17txZI0eO1KeffqrHHntMrVq1Uq9evfT1119LuhwmBgYGqk2bNnrmmWd04sQJq/MLLimNj4+Xq6urNm/erDlz5sjPz09t27bV0KFDZTabiz03NzdXixYtUvfu3eXh4SFvb2/17t1b69evtzovKSlJ3377rbp27SpJiouL008//aQRI0ZYBXBXutZOZUlJSZoyZYoeffRRtW7dWn5+fho2bJgOHjxoaZO/HDgnJ0crV66Uq6ur1bLm06dPa/z48fLz85O7u7u6d++u5cuXW42Tf382btyoN998U+3atVOrVq0kSa+//rq8vLx05MgRBQcHy9PTU/7+/pY+du3apb59+8rT01OPPfaY1VLcfEePHlVoaKh8fX3l7u6uXr16KSYmxqpN/nXs2bOn2O9R586ddfjwYe3evdty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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/data/syncom_sles_md.tsv', index_col = 0)\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/data/syncom_sles.biom').to_dataframe().T\n",
+ "\n",
+ "# load multinomial ranks (differentials)\n",
+ "beta = pd.read_csv(f'{input_dir}/out_sles/differentials.tsv', sep='\\t', index_col = 0)\n",
+ "beta = beta.iloc[1:]\n",
+ "\n",
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'treatment']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'treatment', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='treatment', kind='box',\n",
+ " hue_order=['reference', 'SLES'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_sles/fig_sles.svg', format='svg')\n",
+ "stats.to_csv('./out_c_afermentans/stats_invitro_sles.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ef86565d-5578-45fd-8423-4ad797746748",
+ "metadata": {},
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[0]].index\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[1]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)# RL"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "ac689ee4-cdd1-4996-a62a-f96b95fefbbf",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def paired_t_test(category, md, df):\n",
+ " \"\"\" Performs paired t-test on a dataframe with complementing\n",
+ " sample metadata.\n",
+ "\n",
+ " Parameters\n",
+ " ----------\n",
+ " category : str\n",
+ " Category to test in the dataframe df\n",
+ " md : pd.DataFrame\n",
+ " Sample metadata specifying groupings\n",
+ " df : pd.Dataframe\n",
+ " Counts of microbes across all samples\n",
+ " \n",
+ " Returns\n",
+ " -------\n",
+ " T : float\n",
+ " T-statistic\n",
+ " prob : float\n",
+ " p-value\n",
+ " lower : float\n",
+ " lower 95% CI bound\n",
+ " upper : float\n",
+ " upper 95% CI bound\n",
+ " ddof : int\n",
+ " degrees of freedom\n",
+ " \"\"\"\n",
+ " cats = list(md[category].value_counts().index)\n",
+ " src = md[md[category] == cats[0]].index\n",
+ " print('***')\n",
+ " print(src)\n",
+ " dest = md[md[category] == cats[1]].index\n",
+ " return ttest_rel(df.loc[dest].values, df.loc[src].values)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "43dcf082-3703-40f0-b5af-ca7175ace397",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n",
+ "***\n",
+ "Index(['Comm-1_S4_L001', 'Comm-1_S4_L002', 'Comm-2_S14_L001',\n",
+ " 'Comm-2_S14_L002', 'Comm-3_S23_L001', 'Comm-3_S23_L002',\n",
+ " 'Comm-4_S32_L001', 'Comm-4_S32_L002'],\n",
+ " dtype='object', name='sampleid')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " 24hControl_vs_24hChemical_tstat | \n",
+ " 24hControl__vs_24hChemical_pvalue | \n",
+ " 24hControl_vs_24hChemical_upperCI | \n",
+ " 24hControl_vs_24hChemical_lowerCI | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " log(C.acnes/C.afermentans) | \n",
+ " -5.159104 | \n",
+ " 0.001311 | \n",
+ " -4.112857 | \n",
+ " -1.527606 | \n",
+ "
\n",
+ " \n",
+ " log(M.luteus/C.afermentans) | \n",
+ " 0.827653 | \n",
+ " 0.435172 | \n",
+ " -0.027550 | \n",
+ " 0.057221 | \n",
+ "
\n",
+ " \n",
+ " log(S.aureus/C.afermentans) | \n",
+ " -9.432206 | \n",
+ " 0.000031 | \n",
+ " -4.040212 | \n",
+ " -2.420525 | \n",
+ "
\n",
+ " \n",
+ " log(S.capitis/C.afermentans) | \n",
+ " -3.635776 | \n",
+ " 0.008334 | \n",
+ " -0.396925 | \n",
+ " -0.084086 | \n",
+ "
\n",
+ " \n",
+ " log(S.epidermidis/C.afermentans) | \n",
+ " 2.843834 | \n",
+ " 0.024907 | \n",
+ " 0.082282 | \n",
+ " 0.894311 | \n",
+ "
\n",
+ " \n",
+ " log(S.hominis/C.afermentans) | \n",
+ " 3.933570 | \n",
+ " 0.005650 | \n",
+ " 0.197734 | \n",
+ " 0.793762 | \n",
+ "
\n",
+ " \n",
+ " log(S.warneri/C.afermentans) | \n",
+ " 2.485341 | \n",
+ " 0.041881 | \n",
+ " 0.017821 | \n",
+ " 0.715997 | \n",
+ "
\n",
+ " \n",
+ " log(S.mitis/C.afermentans) | \n",
+ " 1.308089 | \n",
+ " 0.232158 | \n",
+ " -0.234270 | \n",
+ " 0.814365 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 24hControl_vs_24hChemical_tstat \\\n",
+ "log(C.acnes/C.afermentans) -5.159104 \n",
+ "log(M.luteus/C.afermentans) 0.827653 \n",
+ "log(S.aureus/C.afermentans) -9.432206 \n",
+ "log(S.capitis/C.afermentans) -3.635776 \n",
+ "log(S.epidermidis/C.afermentans) 2.843834 \n",
+ "log(S.hominis/C.afermentans) 3.933570 \n",
+ "log(S.warneri/C.afermentans) 2.485341 \n",
+ "log(S.mitis/C.afermentans) 1.308089 \n",
+ "\n",
+ " 24hControl__vs_24hChemical_pvalue \\\n",
+ "log(C.acnes/C.afermentans) 0.001311 \n",
+ "log(M.luteus/C.afermentans) 0.435172 \n",
+ "log(S.aureus/C.afermentans) 0.000031 \n",
+ "log(S.capitis/C.afermentans) 0.008334 \n",
+ "log(S.epidermidis/C.afermentans) 0.024907 \n",
+ "log(S.hominis/C.afermentans) 0.005650 \n",
+ "log(S.warneri/C.afermentans) 0.041881 \n",
+ "log(S.mitis/C.afermentans) 0.232158 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_upperCI \\\n",
+ "log(C.acnes/C.afermentans) -4.112857 \n",
+ "log(M.luteus/C.afermentans) -0.027550 \n",
+ "log(S.aureus/C.afermentans) -4.040212 \n",
+ "log(S.capitis/C.afermentans) -0.396925 \n",
+ "log(S.epidermidis/C.afermentans) 0.082282 \n",
+ "log(S.hominis/C.afermentans) 0.197734 \n",
+ "log(S.warneri/C.afermentans) 0.017821 \n",
+ "log(S.mitis/C.afermentans) -0.234270 \n",
+ "\n",
+ " 24hControl_vs_24hChemical_lowerCI \n",
+ "log(C.acnes/C.afermentans) -1.527606 \n",
+ "log(M.luteus/C.afermentans) 0.057221 \n",
+ "log(S.aureus/C.afermentans) -2.420525 \n",
+ "log(S.capitis/C.afermentans) -0.084086 \n",
+ "log(S.epidermidis/C.afermentans) 0.894311 \n",
+ "log(S.hominis/C.afermentans) 0.793762 \n",
+ "log(S.warneri/C.afermentans) 0.715997 \n",
+ "log(S.mitis/C.afermentans) 0.814365 "
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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T40aNVJOTo4OHTqkf/zjH+ratavl8xg4cKD27dun48ePS7q6v1qDBg0s+/O5ublpy5YtOnLkSJk+oz01aNBAkZGRevvtt3X69Gm1a9dObm5uunjxohISEuTp6Wk5PKSk6tevL1dXV23evFlNmzZVtWrVVL9+/dser+JMmTJF1apVU0BAgDw8PHT+/HktXbpUdevWtfpzUFBQoMOHD6t///633BcAAAAAABXBXRXCOTk5afHixZo/f75Wr16thQsXysPDQy+88ILGjh1rCdcqVaqk2NhYzZo1S0uXLlVubq4CAgI0Z84c9e3b12oD+gceeECtW7fW559/rmeeecaqv4ceekgbNmzQypUrtW3bNq1cuVK5ubl68MEH1bZtW7322ms3rDcyMlKZmZlavXq1li9frkceeUR/+9vftGDBAqt2bm5u+uSTT7RgwQJ9/PHHSkpKUs2aNeXr66vatWuXepx69+6tunXravny5Xrttdd05coV3XffffLy8rKEKR4eHmrQoIE+/PBD/frrr3JyctKf/vQnvfnmm+rXr59+++03ffXVV4qOji62j+eee06+vr5asWKFFi9erKSkJLm4uKhJkyZ64YUXrE7zLKpKlSpasmSJoqOjNWXKFLm4uOjxxx/XO++8o969e5fZM9rb6NGj1bhxY3300Udat26d8vPzVadOHfn5+cnHx6fU96tatareeustzZ8/X4MGDVJeXp4l1L3d8SqqVatWWrdunbZu3aq0tDTVqlVLjz76qMaOHWu1lHbv3r1KT09Xjx49bqkfAAAAAAAqCqfCwsJCRxdxp9i0aZNeffVVrVq1Si1btrRc/9e//qVXX31VO3fuvKXQqyLaunWroqKi9PXXX1/31ExUfBMmTNCZM2f08ccfl/g9Z86cUceOHfX555/bHFBxN9u+fbukq0vdi4qKitLhXy7Y5WAGn0Z1NHv27FLXBAAAAACwdlfNhCuNjRs36vLly2ratKmkq8tN4+Li1KpVK6sATpK6dOmiuLg4LV++XBMmTHBEueVOt27d1K1bN0eXAQc6ffq0tmzZopUrVzq6lAohPj5eUvkKvMpjTQAAAABQXhHCXUf16tW1YsUKnTx5UleuXFGdOnXUq1evYvcKc3Jy0vTp07V7924HVAqUT+fOndPUqVMVEBDg6FIAAAAAAHA4QrjrCAsLK9XsjmbNmqlZs2Z2rAi4swQGBlpOGgYAAAAA4G5XydEFAAAAAAAAABUdIRwAAAAAAABgZ4RwAAAAAAAAgJ0RwgEAAAAAAAB2xsEMAHAHSE5OVnJysqKiomxeM5lMUp5z2XeamyWTyVRsn+Z+DQZD2fcLAAAAABUQM+EAAAAAAAAAO2MmHADcAQwGgwwGg2bPnm3zWlRUlA7/cqHsO63iKs9GdYrt09wvAAAAAKBkmAkHAAAAAAAA2BkhHAAAAAAAAGBnhHAAAAAAAACAnRHCAQAAAAAAAHZGCAcAAAAAAADYGSEcAAAAAAAAYGeVHV0AAODmOnfu7OgSbJTHmgAAAACgvCKEA4A7QFhYmKNLsFEeawIAAACA8orlqAAAAAAAAICdEcIBAAAAAAAAdkYIBwAAAAAAANgZIRwAAAAAAABgZ4RwAAAAAAAAgJ1xOioAVARZl6Vjn5Wsbeblq/+9Wfusy5Lq3FZZAAAAAICrCOEA4A7n6elZqvbJyVUkSQaD4SYt65T63gAAAACA4hHCAcAdLiIiwtElAAAAAABugj3hAAAAAAAAADsjhAMAAAAAAADsjBAOAAAAAAAAsDNCOAAAAAAAAMDOCOEAAAAAAAAAOyOEAwAAAAAAAOyMEA4AAAAAAACwM0I4AAAAAAAAwM4I4QAAAAAAAAA7I4QDAAAAAAAA7IwQDgAAAAAAALAzQjgAAAAAAADAzgjhAAAAAAAAADur7OgCAADXFxsbq2+//VaSZDAYLNc9PT0VERHhqLIAAAAAAKVECAcA5ZjJZFLi6dNyKSxUZdMvkqTzlZ0dXBUAAAAAoLQI4QCgnHMpLNSDefkakpomSYqrea+DKwIAAAAAlBZ7wgEAAAAAAAB2RggHAAAAAAAA2BkhHAAAAAAAAGBnhHAAAAAAAACAnRHCAQAAAAAAAHZGCAcA5cz27du1ffv2Mm8LAAAAAHCcyo4uAABgLT4+XpIUFhZWpm0BAAAAAI7DTDgAAAAAAADAzgjhAAAAAAAAADsjhAMAAAAAAADsjBAOAAAAAAAAsDNCOAAAAAAAAMDOCOEAAAAAAAAAO6vs6AIAANaSk5OVnJysqKgomUwm5Ts5Wb2eUclJF00my+sGg8FBlQIAAAAASoqZcAAAAAAAAICdEcIBQDljMBjk6emp2bNny9PTU86FhVavuxUUWr3OTDgAAAAAKP8I4QAAAAAAAAA7I4QDAAAAAAAA7IwQDgAAAAAAALAzQjgAAAAAAADAzgjhAAAAAAAAADsjhAMAAAAAAADsrLKjCwAAWOvcubNd2gIAAAAAHIcQDgDKmbCwMLu0BQAAAAA4ToVajrpgwQIZjUa79zNv3jz16tXL6prRaJTRaNS0adOKfc/rr79uaXMzEydO1OOPP35Lte3atUsLFiy4pffa06ZNm+Tt7a2MjAzLtZMnT2ratGnq1KmTfHx85Ofnp/DwcL377ru6ePFimfbdrVs3eXt7y2g06syZM2V27/IkOztbCxYs0N69ex1diiRp37598vf316+//uroUgAAAAAAcLgKFcL9Ec6dO6f3339f48aNs3mtRo0a2rJli7Kzs62uX7lyRVu3blWNGjXsXt/u3bu1cOFCu/dTWtu2bVO7du3k5uYmSfr888/Vs2dPffXVV3r++ee1bNkyLV68WN26ddPWrVv1xhtvlEm/SUlJmjRpkho3bqz3339fq1evVp06dcrk3uVNdna2Fi5cqH379jm6FElSYGCgfH199e677zq6FAAAAAAAHI4QrpRWrlwpDw8PdejQwea1jh076sqVK9q2bZvV9W3btunKlSt37bKxK1euaPfu3Za9q06fPq1XX31VDz/8sDZs2KBBgwapTZs2ateunYYPH66tW7eqd+/eZdL3iRMnlJubqx49eqh169by8/OTi4vLbd0zJyenTGq7Gzz33HPauHGjzp8/7+hSAAAAAABwqAodwmVmZmrWrFkKDQ2Vl5eXQkNDFRMToytXrli1S0tL0+TJkxUYGCh/f38NHTpUJ06ckNFotFramZOTo3Xr1qlHjx7F9ufu7q7HH39c69ats7q+bt06Pf7446pZs+YtPcfevXtlNBptlhmeOXNGRqPR0t/EiRO1cuVKSf9bHnvt8tfs7GzNmzdPnTt3lpeXl4KDg/Xmm29aLREtes9rFR2Py5cva8qUKerQoYO8vLzUtm1bDRgwQIcOHbJ63+7du5WTk2NZYrtixQplZmZq6tSpxc4OrFKlyk2X43733XcaP368HnvsMfn4+Khjx46aNGmSLl26ZGkzceJEPffcc5KkMWPGyGg0auDAgZbXDxw4oKFDh6pVq1by8fFR3759tWfPHqt+zEucjxw5ooiICAUEBGjIkCGSpMcff1yRkZH617/+pe7du8vb21s9evTQV199JelqYBsWFiZ/f3+98MILOn36tM1z7Ny5UwMGDJC/v7/8/Pz04osv6vDhw1ZtJk6cqFatWslkMmnIkCHy9/dXhw4dNGvWLEsgeObMGbVu3VqStHDhQstnb/68SjJe1z7vzz//rPHjxysgIEDt2rXTpEmTlJ6ebtX2s88+0zPPPKOAgAD5+/urc+fOmjFjhlWb0NBQVa9eXWvXrr3RxwkAAAAAQIVXYQ9mKCgoUEREhBISEjRq1Cj5+Pjo0KFDWrx4sY4fP664uDg5OTmpoKBAI0aM0NGjRzV69Gg1b95cBw4c0PDhw23uefjwYaWkpCgwMPC6/fbq1UsjR47UuXPn9OCDD+rs2bP65ptvFBsbaxPwlLXIyEhlZ2dr69atWr16tdVr+fn5Gj58uI4cOaLhw4fL29tbJpNJ8+bN048//qiVK1eqUqXSZbJ/+ctfdOrUKb388suqV6+eUlJSdOjQIaWkpFi1i4+PV+vWrWUwGCRJe/bskYeHh3x8fG75WRMTE9WkSRN1795dNWvW1NmzZ7VixQo9++yz2rJli1xcXBQZGSlvb2+9+eabevXVV9W6dWvLctg9e/YoIiJCgYGBmjFjhqpWrao1a9Zo+PDhWrZsmYKDg636GzNmjJ5++mm9+OKLys/Pt1w/cuSIEhMTFRkZqerVq+vdd9/VqFGj1L9/f/33v//V5MmTlZmZqZkzZ2rs2LFav3695b1r167VlClT9OSTT2rw4MEqKCjQBx98oIEDB2rNmjVWAWpOTo4iIyPVr18/DR06VPv27dOSJUvk5uam0aNHq06dOvrggw/00ksv6ZlnnlGfPn0kSQ888ECJx+tao0ePVrdu3dS3b18dP35c77zzjiRp5syZkqRvv/1WL7/8sp577jmNHz9ezs7OOnPmjL777jur+7i4uMjf3187d+7U6NGjb/nzvtvlODnpXGVnxdW8V5J0vrKz7nFwTQAAAACA0qmwIdzu3bu1d+9eTZ06VQMGDJAkBQUFqUaNGpoxY4b27NmjkJAQ7dq1SwkJCYqOjrYEF0FBQXJxcdHcuXOt7nngwAFJ0iOPPHLdfkNCQlS7dm2tX79ekZGRWr9+vWrXrq3g4GC7h3ANGzbUfffdJ0ny8/Ozem3r1q365ptvtGzZMstS2rZt2+r+++/XqFGjtGvXLoWGhpaqv4SEBI0fP17h4eGWa506dbJqk5ubq//85z8aP3685dq5c+duOIYl8cQTT1h9nZeXp9atW+uxxx7Trl27FBYWpoYNG6pJkyaSpEaNGlmNyfTp09W8eXMtX77cEj62b99evXv31rvvvmsTwvXp00cjR460qSM1NVVr166Vh4eHJKl69eoaOHCgvvjiC23evFmVK1/9I5aUlKQZM2bo559/VuPGjZWZmamYmBh16dLF6vssKChIXbp00aJFizR//nzL9ezsbL3yyiuW8W3btq2OHDmiTZs2afTo0XJxcZGXl5ekq8Fb0c+/JON1rX79+mnQoEGSpHbt2unUqVP65z//qRkzZpYAtlgAACAASURBVMjJyUkHDx7UPffco9dff91mnIpq3ry53nvvPWVnZ6tq1ao2r+PGPD099csvvygnJ0dnf79WpUoVnT17VlFRUfL09FRERIRDawQAAAAA3FyFXY5qXrrZs2dPq+vmwMj8unkT+65du1q1e/LJJ23ueeHCBTk7O99wWamzs7N69uyp9evXq6CgQOvXr9dTTz0lZ2fnW3+YMrBz5065u7srKChIeXl5ll9BQUFydna+pc38fXx89N577+n999/XDz/8YDVDzOzrr79Wenq6TTh3uzIyMvS3v/1NXbp0kY+Pj1q0aKHHHntMkmQymW743pMnT+rEiRPq3r27CgoKLGORn5+vkJAQHTlyRL/99pvVe65Xf4sWLSwBnCQ1btxYkhQcHGwJ4K69npiYKEk6ePCg0tLS1LNnT6vPo0qVKgoMDNT+/fut+nF2drbZh9BoNOrs2bMqidKOV9HlwEajUdnZ2Zblq76+vkpLS9O4ceP0+eef6/Lly9ftu3bt2srPz7dZ+oqSiYiIUKNGjZSdX6jsvKu/MpzcdCm7sg4fPXbT73cAAAAAQPlQYWfCpaamysXFRffee6/V9Zo1a8rFxcWyZDI1NVVVq1a1LFM0M88ou1Z2drZcXFzk5OR0w7579+6tuLg4LV68WKdPn1avXr1u82luX1JSklJSUtSiRYtiX09OTi71Pd99910tXrxYK1euVExMjNzd3dWtWze9/PLLlnGPj4+Xn5+f1YmkDz74oCWMulV//vOftX//fo0aNUotWrRQjRo1VFhYqL59+9qcTluUOQx666239NZbbxXbJjU11Wq/umuDtmsVDWSrVKlyw+vmPdzMNURGRhZ736LfY9WrV7dZMuri4lLiQyJKO17u7u42fUmytG3VqpUWLVqklStXaty4ccrLy5OXl5fGjBljExaaZ78V3YsRpeRa63+/b/b7Pxoc+8wxtQAAAAAASq3ChnDu7u7KyclRWlqaVRCXmpqqnJwcS8jg7u6u7OxsZWRkWAVxxc3aMRgMysrKUk5Ozg1P2GzcuLF8fX21aNEi+fn5WWZB3SpziFE0cClNcGYwGHTfffcpNjb2uq+Xtq9atWppypQpmjJlis6dO6d///vfmjt3rn777TfNnj1b+fn52rFjh4YNG2b1vuDgYH300Uf6/vvvLUsoSyMtLU27du3S6NGjNXToUMv1U6dOlej95meNjIy87gEQRUPYmwWvpWWuYdq0afL29i7Texd1u+N1PWFhYQoLC1NOTo4SEhK0aNEiRUZGatOmTfL09LS0S01NlfS/ZwYAAAAA4G5UYZejtmnTRpK0ceNGq+vmr82vmw9Z+Owz6xklW7ZssbmnOVgoSXgxdOhQtW/f3nKS5u2oV6+eJOn48eNW13fs2GHT1hwOFp111L59eyUlJalSpUry9va2+VW/fn1JV8OnqlWr2vT1+eef37DGBx98UIMGDZKfn5+OHTsmSfp//+//KSkpyWYp56BBg+Tq6qrp06crMzPT5l55eXn64osvrttXpUqVVFhYaBOErlmz5oY1mjVq1EgNGjTQ8ePHix0Lb2/vG4asZSEgIEBubm4ymUzXraG0rvfZ3+54laTfNm3aaMyYMcrLy9PPP/9s9frp06dVu3Zt1apV6zp3AAAAAACg4quwM+GCg4PVrl07xcTEKD09XT4+Pjp8+LAWLVqk4OBgBQUFSbp6kEJAQICio6OVmppqOR31008/lWQ9A+rRRx+VdHU/L/OG/9fTuXNnde7c+aZ1Tpw4UevXr9fnn39uCcKK8vDwUNu2bbVs2TLVrFlTdevW1ddff61t27bZtG3atKkkafny5QoJCbGEbt27d9eGDRs0dOhQDRo0SC1atJCTk5POnTunPXv26IUXXlBAQICcnJzUo0cP/fOf/1TDhg3VrFkzHT58WJs3b7bqJz09XS+++KK6d+8uT09Pubq66ttvv1VCQoJeeuklSdK2bdvUokULm+dq0KCB3n77bb3yyit6+umn9dxzz8loNKqwsFA//PCDVq9erSZNmlj2LCs6Rm5ubmrZsqXi4uJkMBhUt25d7dy5Uzt37rzpeEtXP9M33nhDERERGjFihJ566il5eHgoOTlZx48f18WLF/Xmm2+W6F63qkaNGpo8ebKmTJmi1NRUderUSe7u7rp06ZK+//57ubi4WB1mURLVqlVTgwYN9MUXXygoKEj33HOP6tSpo/vvv/+2xqs48+bN06+//mo53CMlJUVxcXG69957bQ6FOHjwoOXPDgAAAAAAd6sKG8I5OTlp8eLFmj9/vlavXq2FCxfKw8NDL7zwgsaOHWsJ1ypVqqTY2FjNmjVLS5cuVW5urgICAjRnzhz17dtX99xzj+WeDzzwgFq3bq3PP/9czzzzzB/6PHPmzNH06dP19ttvKz8/X4899pjmzp2r3r17W7Xr1q2b9u/frw8//FALFy5UYWGhjh8/rsqVK2vZsmVasWKFNm3apIULF8rFxUV169ZVmzZtrIKySZMmycnJScuXL1dmZqYeffRRxcbGWi3drFq1qry9vbV+/XolJiaqoKBA9erV07hx4zRkyBAVFhZq27Zt6t+/f7HPExYWpk8//VTvv/++PvzwQ/36669ydnbWQw89pG7dullOtL2euXPnKjo6WjExMZKunhb6/vvvX3d5aVHBwcH6xz/+odjYWL355pvKyMiQwWBQs2bN9PTTT5foHrerd+/eqlu3rpYvX67XXntNV65c0X333ScvL6/rjtvNTJ8+XTNnztTw4cOVm5ur0aNHa8yYMbc9XkX5+vrqo48+0uzZs5WcnKyaNWvK19dX06ZNs9o/7/Tp0/rxxx/18ssv31I/AAAAAABUFE6FhYWFji6iPNq0aZNeffVVrVq1Si1btrRc/9e//qVXX31VO3fuVO3atR1YYfl26NAh9e3bV1u3br3tPfFw55o/f742bNigbdu2lfiE4DNnzqhjx443nB16t4mKitLhXy7878I1BzP4NKqj2bNnO6YwAAAAAECJVdiZcKWxceNGXb582bKU8+DBg4qLi1OrVq2sAjhJ6tKli+Li4rR8+XJNmDDBEeXeEXx9fW32lcPdJSMjQx9//LGmTp1a4gAO1rZv317qtmFhYfYqBwAAAABwGwjhJFWvXl0rVqzQyZMndeXKFdWpU0e9evUqdk8uJycnTZ8+Xbt373ZApcCd48yZMxo2bJi6d+/u6FLuWPHx8aVuSwgHAAAAAOUTIZyu/qW1NH9xbdasmZo1a2bHioA7H39OAAAAAAD4n0qOLgAAAAAAAACo6AjhAAAAAAAAADsjhAMAAAAAAADsjBAOAAAAAAAAsDNCOAAAAAAAAMDOOB0VAMqp5ORkJScnX/0iz1mq4mrdIDdLJpNJUVFRMplMMhgMf3yRAAAAAIASYSYcAAAAAAAAYGeEcABQThkMBnl6esrT09N2FpwkVXGVp6enZs+eLU9PT2bCAQAAAEA5RggHAAAAAAAA2BkhHAAAAAAAAGBnhHAAAAAAAACAnRHCAQAAAAAAAHZGCAcAAAAAAADYWWVHFwAAKF7nzp0lSfHx8SVuCwAAAAAonwjhAKCcCgsLk1SyEM7cFgAAAABQPrEcFQAAAAAAALAzQjgAAAAAAADAzgjhAAAAAAAAADsjhAMAAAAAAADsjBAOAAAAAAAAsDNORwWAO0HWZanw998f++x/11THURUBAAAAAEqBEA4AyjlPT09JUnJysiTJYDD8/kody2sAAAAAgPKNEA4AyrmIiAhHlwAAAAAAuE3sCQcAAAAAAADYGSEcAAAAAAAAYGeEcAAAAAAAAICdEcIBAAAAAAAAdkYIBwAAAAAAANgZIRwAAAAAAABgZ4RwAAAAAAAAgJ0RwgEAAAAAAAB2RggHAAAAAAAA2BkhHAAAAAAAAGBnhHAAAAAAAACAnRHCAQAAAAAAAHZGCAcAAAAAAADYGSEcAAAAAAAAYGeVHV0AAAAAAABAUbGxsTKZTDbXk5OTJUkGg6FU9/P09FRERESZ1AbcCkI4AAAAAABQ7phMJv330CE9kJdvdf1iZWdJUmXTLyW+1/nf3wM4EiEcAAAAAAAolx7Iy9eQ1DSra3E175Ukm+s3Yn4P4EjsCQcAAAAAAADYGSEcAAAAAAAAYGeEcAAAAAAAAICdEcIBAAAAAAAAdkYIBwAAAAAA7GL79u3avn27o8soVxiTuxenowIAAAAAALuIj4+XJIWFhTm4kvKDMbl7MRMOAAAAAAAAsDNCOAAAAAAAAMDOCOEAAAAAAAAAOyOEAwAAAAAAAOyMEA4AAAAAAACwM0I4AAAAAAAAwM4qO7oAAAAAAABQMSUnJys5OVlRUVGlfq/JZJJrJacyqSOjkpMumky3VEdZM5lMMhgMji4DDsBMOAAAAAAAAMDOmAkHAAAAAADswmAwyGAwaPbs2aV+b1RUlNK/TSiTOtwKCvWgp+ct1VHWysNsPDgGM+EAAAAAAAAAOyOEAwAAAAAAAOyMEA4AAAAAAACwM0I4AAAAAAAAwM4I4QAAAAAAAAA7I4QDAAAAAAAA7KyyowsAAAAAAAAVU+fOnR1dQrnDmNy9COEAAAAAAIBdhIWFObqEcocxuXuxHBUAAAAAAACwswoRwi1YsEBGo9Hu/cybN0+9evWyunb58mXFxMToiSeekK+vr1q3bq0nn3xSkydP1rlz5+xe050iNjZWISEhKiwstFw7evSooqKi9Nhjj8nLy0sBAQHq27evli5dqvT09DLre8WKFerYsaNatGjxh3yfOMrFixe1YMEC/fDDD44uRZK0fv16tW/fXllZWY4uBQAAAAAAh2M5agmdO3dO77//vubPn2+5lpGRob59+yo7O1tDhgyR0WhUZmamfv75Z3322Wc6ffq0HnzwQQdWXX7Ex8erU6dOcnJykiR98sknmj59uh5++GGNGDFCjRo1UnZ2tg4ePKgPP/xQSUlJmjx58m33e/ToUc2cOVPPPvusunfvrsqVK+63/KVLl7Rw4ULVq1dPjzzyiKPLUc+ePRUbG6vly5drzJgxji4HAAAAAACHqriJRBlbuXKlPDw81KFDB8u1f//73zp9+rQ+/vhjtWrVynK9Y8eOGj58uAoKChxRqo2cnBy5uLg4rP/ExEQdOXJEUVFRkqSEhAS9+eabCg0N1fz581WlShVL2/bt22vIkCE6cOBAmfT9008/SZL69OmjFi1alMk9HT2edwpnZ2f1799fS5Ys0bBhw1StWjVHlwQAAAAAgMNUiOWoRWVmZmrWrFkKDQ2Vl5eXQkNDFRMToytXrli1S0tL0+TJkxUYGCh/f38NHTpUJ06ckNFo1IIFCyztcnJytG7dOvXo0cPq/SkpKZIkDw+PYuuoVOnGw3v58mVNmzZNXbt2lZ+fn4KDgzV06FAdOXLEqt26detkNBp15swZq+t79+6V0WjU3r17LdcGDhyop556Sl999ZV69+4tb29vLV26VJKUmpqqt956y7L887HHHtPf/vY35ebm3vCeknTmzBkZjUatW7fOcu3UqVMaP368goOD5eXlpeDgYA0ZMkQnT560eu+2bdtkMBjUunVrSdKyZctUqVIlvfHGG1YBnFmNGjUUHBx8w7H78ssvFRERoZCQEPn4+KhLly6aOXOmMjIyrMbiL3/5iySpV69eMhqNmjhxouX1nTt3asCAAfL395efn59efPFFHT582KqfiRMnqlWrVjpy5IgGDhwoPz8/vf7665Iko9Got956Sx9//LE6deokHx8f9enTR0ePHlVeXp7mzZun9u3bq2XLlho1apQuX75s8xwbNmxQ79695evrq5YtWyoyMlInTpywamP+TA8ePKj+/fvL19dXHTt21LJlyyxB7969exUeHi5JmjRpkoxGo9XnVZLxuvZ5TSaThgwZIn9/f3Xo0EGzZs1STk6OVdtVq1apR48e8vPzU0BAgLp166Zly5ZZtenevbvS0tL02Wef3fDzBAAAAACgoqtwM+EKCgoUERGhhIQEjRo1Sj4+Pjp06JAWL16s48ePKy4uTk5OTiooKNCIESN09OhRjR49Ws2bN9eBAwc0fPhwm3sePnxYKSkpCgwMtLru6+srSYqKilJERIRatmype++9t8S1pqSkyNnZWWPHjlXt2rWVnp6uDRs2qH///lq/fr2aNGlyS2Nw/vx5vfbaa4qIiNCf/vQn1ahRQ7/99puef/55paSkaOTIkfL09NThw4e1aNEiJSYmas6cOaXuZ9iwYapRo4YmT54sDw8PJSUlaf/+/TbBTnx8vDp27ChnZ2fl5+frm2++kZeXl+6///5bej7pagDYsmVL9evXTzVq1NDJkye1dOlSfffdd1q1apUkadq0adq8ebOWLFmimJgYPfTQQ6pVq5Ykae3atZoyZYqefPJJDR48WAUFBfrggw80cOBArVmzxmrvuOzsbI0ZM0YDBw5UZGSkVXC4fft21a9fXxMmTFBeXp5iYmI0cuRIBQUFKTc3V9HR0Tp//rxmzpypqVOnatGiRZb3zp8/X0uWLFH//v01btw4ZWRkaPHixXr22Wf16aefqk6dOpa2v/76qyZMmKDBgwdr7Nixio+P19y5c1WnTh2Fh4erRYsWiomJ0YQJEzRy5EiFhoZKkho2bFji8TLLyclRZGSk+vXrp6FDh2rfvn1asmSJ3NzcNHr0aEnS5s2bFR0drREjRigwMFD5+fk6ceKELly4YHUvDw8PeXp6aufOnXr66adv+fMGgIoiNjZWJpPpD+83OTlZkmQwGP7wvh3F09NTERERji4DAHCbzld2VlxN679nn6vsLEk21292n3vKtDKg9CpcCLd7927t3btXU6dO1YABAyRJQUFBqlGjhmbMmKE9e/YoJCRE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8+fP68qVKwXap6enKz4+/qartfz8/PTLL7+ocePGatmyZYF/8ocC+Ws9cOCATp06dcMtrz4+Pjpy5EiBQDD/KZtt2rSRo6OjzGZzobUUJZgzgo+Pj7777jurU1RzcnIK/ZxuJO8ghC5duujIkSOSpD///FOHDh0qsJVzwIABqlOnjubPn6+//vqrQF9XrlxRbGzsDcezs7OzOqxCkjZu3KicnJyb1lq5cmV5eXnp559/VrNmzQr9LPKv4LzdGjdurPvvv19Hjx697vehKIF0fg4ODoWuOLuV+boZe3t7eXh4aNKkSZKko0ePWr1+8uRJ2dvb3zDMBgAAAACgrCv2SjhfX1+1b99eYWFhSktLk7u7uw4ePKglS5bI19dXHTp0kHQ1AGvTpo1mzZqllJQUy+mon376qSTrlUU+Pj6Srj437drncH366af68MMP1bt3b7Vs2VJVqlTRqVOntGbNGiUlJemVV16xtI2KitLkyZM1Z84c9e3bV5I0fvx47dq1S88++6yCgoL04IMPKj09XSdOnNBXX32l999/X/b29pY+zpw5o/Hjx+vpp5+2nI5ar169666WkqQhQ4Zo48aN+tvf/qaXXnpJtWrV0ubNm3X8+HGrdlWrVtWUKVM0bdo0paSkqFu3bpZVaD/99JMcHBwKnNZ6J4wePVpffvmlhgwZotGjR6tSpUpas2ZNkbY4BgYGyt/fX4888oiqV6+uI0eO6IsvvrA8Z2/btm2qVauWPD09re6rVq2alixZolGjRumpp55SUFCQWrZsqXLlyunYsWPauHGjcnNzFRAQIElatGiRFi9erFWrVlm+K506ddInn3wiZ2dnubi46Mcff9T69euLfHrulClT9NxzzykoKEgDBw5Uw4YNlZqaKrPZrP/+979atGhRcaax2Ozs7PR///d/Cg4OtsxD3bp1lZSUpKNHjyohIUFvvPFGsftt2rSp9uzZo6+//lq1a9eWyWRSo0aNbnm+8lu3bp3i4uLUqVMnNWjQQJcuXdK6detUoUIFSxCfZ//+/XJzczM82AQAAAAAoDQrdghnZ2enpUuXauHChdqwYYMWL16sunXr6vnnn1dISIglXCtXrpwiIiI0d+5cvffee7p8+bLatGmjefPmKTAw0Oqh9fXr15eXl5e2b9+u/v37W677+/srISFBX375pdasWaO0tDQ5OjrKzc1N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3W0/a5HffvtNHTt21ODBg2Vvb69jx45p/vz5OnHihGbMmCHp+jvJli9frtWrV2vRokVycHBQ7dq1JUlz5szR/Pnz1b9/f40ePVrZ2dmKjo7WCy+8oHXr1snV1dV4r99//12TJk1SeHi46tevr0ceecR4bsmSJfLy8tLUqVOVlpam9957T6NHj1aNGjX0t7/9TTNnztRPP/2kDz74QE5OTpo4caLx2gkTJujLL7/UkCFDFBAQoD/++EOzZ89WWFiYEhIS5ODgYGz7448/asaMGRo2bJiqV6+uVatWadKkSapfv778/f3VoUMHjR07VjNnztTkyZPVrFkzSTIuHy7LeBX5448/NG7cOA0ZMkSjRo1SYmKiZs2aJVdXV/Xq1UuStHDhQsXGxmrUqFFq1qyZrly5ol9++cUsgG3WrJkcHBy0fft2s+//w+B3G2vFVXXWORtrSVJcVWf9bmMtp3KuCwAAAADw1yOEK2bnzp1KSkrSW2+9pdDQUElSYGCgHnnkEU2bNk27du1S27ZttWPHDh04cEDvvvuu+vbta2xna2urWbNmmfR58OBBSVLTpk1Njrds2VJvvPGGoqKiFB4eLisrK7m5ualt27YKDQ01zhy7lS5duujNN9+UJLVp00bfffed1qxZo8jISD333HOSpICAAG3btk2ff/55qSFc48aN5ezsLFtb21suPU1OTlZGRobGjRsnDw8P4/Fnn33WpN2RI0d07tw541LUos0m6tSpU6ZnK82rr75q/H1hYaExwJwwYYImTZokFxcXeXp6GkM3Ly8vY8B59uxZLViwQC+99JIiIiKM/fj5+albt25atGiRxo0bZzyekZGh6Ohok9l5RZsfGAwGzZkzR1ZWVpKkM2fOaO7cuerTp48mTZok6fr34uDBg/r888+NIdyBAwe0du1aTZ48WQMGDDD227RpUz3//PP67LPPTI5nZGQoPj5etWrVkiT5+/srKSlJGzZskL+/v6pVq6aGDRtKuv45Fv/8yjJeN94rLi7OGOS1adNG+/bt04YNG4wh3IEDBxQYGKghQ4YYr7txqXURa2treXh46MCBA2bnKpqYmBglJydLktLT05WRkSFrJyelSiq8elWSlFq5sqx1/Tt443fvfuDm5qbw8PDyLgMAAAAwevLtr8u7hLvy3f/rVt4l4D5DCFdM0fK9nj17mhzv1auXpk2b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ueee06hRo0zHgo8UFBRoyZIlbbZNnTpV2dnZhhLBVw4ePKjhw4crJCREQUH/veFg9uzZuv/++w0mg68cP35czzzzjCoqKtTa2qpbbrlFmZmZGjdunOloMKCgoED79+/XokWLTEeBDxw/flwTJ05UVVWVAgMDFRsbq2nTpmnw4MGmo8FHmpqalJ+fr3feeUedOnVSWlqapk+frk6dOpmOBj9BCQcAAAAAAAB4GbejAgAAAAAAAF5GCQcAAAAAAAB4GSUcAAAAAAAA4GWUcAAAAAAAAICXUcIBAAAAAAAAXkYJBwAAAAAAAHgZJRwAAABwAU6nU1lZWV4fp76+Xs8884zuuOMOxcfH69tvv73kOdu3b1d8fLyOHz9+wWPef/99xcfHX3Gut99+W4mJiVd8PgAA+K8g0wEAAACAa91bb72lsrIy/elPf1LXrl3VtWtX05EAAEAHo4QDAAAADNu/f7/i4uKuatYaAADwb9yOCgAAAFym06dPKz8/X3fddZfsdrvGjRunHTt2tDnmk08+UWpqqux2uyZMmKDi4uKL3mKamZmpVatWqaysTPHx8crMzJQknTx5Urm5uRo4cKD69++vxx9/XN98881F8xUVFSk5OVkJCQnKysrSsWPHLvme6urqNGvWLA0ZMkR2u11paWl699132xyzbds23XfffXI4HMrMzNSBAwc8+2pqajR58mQNHjxYDodD6enp+tvf/tbm/OHDh2vp0qWaOXOmkpKSNHToUC1fvrzNMfv27dMjjzwiu92u1NRUbd68WYmJiXr77bc9xxw+fFi/+c1vNHDgQA0cOFC//vWvVV1dfcn3CACAP6CEAwAAAC7TggUL9N5772nu3LkqKipS3759NXHiRH333XeSpH/961+aOnWqhg0bpg0bNigzM1MLFy686DULCgo0ZswYJSYm6tNPP1VBQYGkM8+j27lzp5YuXap169apc+fOeuqpp9TQ0HDe6+zcuVNOp1Pjxo3zlHGLFy++6Nhut1tPPfWUysrKNHfuXL377rtyOp0KDg72HHP69Gm9/vrrmjt3rtauXav//Oc/ysvL8+x3uVwaOnSo3njjDW3YsEEjR45Udna2Kisr24y1cuVK9e3bV+vXr9fEiRO1cOFC/f3vf5cktba2aurUqQoMDNSbb76pefPmacmSJTp9+rTn/Pr6ej366KPq1KmTVq9erbVr1yoqKkpPPPGE6uvrL/o+AQDwB5RwAAAAwGVwuVxau3atcnJyNGzYMMXFxWn27Nnq1q2bCgsLJUlr1qxRz5495XQ6FRsbq1/+8pfKyMi46HUjIiIUGhqq4OBgRUVFKSIiQtXV1fr444/10ksvaeDAgYqPj9fChQtVV1enjRs3nvc6q1at0qBBgzR58mT17t1bGRkZSklJuejYW7duVXl5uQoKCjR06FD17NlTd999t0aMGOE5prm5WTNnzlT//v1ls9n05JNPavv27WptbZUk2Ww2PfTQQ4qPj1dMTIwmT56sn//85/rggw/ajDV48GA98sgjiomJUWZmpmJiYrRt2zZJ0pYtW7Rv3z4tWLBAt912mxITEzVjxgw1Nzd7zi8uLpbb7dbLL78sm82muLg4zZkzRy6X65yZdwAA+COeCQcAAABchpqaGjU1NSkpKcmzLTAwUA6HwzPrq6qqSna7XRaLxXNMQkJCu8eqrKxUQECAHA6HZ1t4eLj69u2rvXv3XvCc5OTkNtscDof+8pe/XHCcr776SlFRUYqLi7vgMSEhIYqNjfW8tlqtampq0vfff6+IiAi5XC4tWbJEn3zyiY4cOaLm5mY1Njae83y7H762Wq2elV2rqqpktVrVvXt3z3673a6AgP/OGdi9e7e+/fbbNp+/dGaG3P/eHgsAgL+ihAMAAADa4X8Lth9uc7vd593fXm63u13jX+qcKxnnrKCgtl8Zzo5/dibc/PnzVVpaqtzcXMXExCg0NFS5ublqamq65HXOXuNyPrfW1lbZbDa98sor5+zr0qXLJd8HAACmcTsqAAAAcBl+9rOfKTg4WJ9//rlnW0tLi8rLyz0zyeLi4vSPf/yjzXlffvllu8fq06ePWltbVV5e7tlWV1enf/7znxectdanTx/t3LmzzbYfvv6h22+/XUeOHDnn+W3t8cUXX+iBBx5QamqqbDabevTooZqamnZdIy4uTocPH9bhw4c923bt2uUp6c5mrampUWRkpGJiYtr8iYiIuOL8AAD4CiUcAAAAcBnCwsL00EMPadGiRdq8ebMqKyuVl5enY8eO6eGHH5YkZWRkqKamRvPnz1dVVZVKSkr05z//WdKFZ7CdT69evXTPPfdo5syZ2rFjh/bs2aOcnBxdf/31GjVq1HnPyczM1NatW/X666+rurpab775pjZt2nTRcQYNGqSEhARlZ2ertLRUBw4c0JYtW/Thhx+2K+umTZu0e/du7dmzR9OnT1djY+Nlny+deV5c79695XQ6VVFRofLycs2bN09BQUGez23UqFHq1q2bpkyZos8++0wHDhxQWVmZ5s2bxwqpAIAfBUo4AAAA4DJNnz5daWlpmjFjhkaPHq09e/Zo2bJlslqtkqRbbrlFBQUF+vjjjzV69GitWLFCTz/9tCSpU6dO7Rrr5ZdfVv/+/TV58mSNHTtWDQ0NWr58uTp37nze4x0Oh/Lz87VmzRrdf//9KikpUXZ29kXHCAgI0LJly5SUlKTp06fr3nvvVX5+fptVSS/F6XSqW7dumjBhgiZOnKiEhAQNGDCgXe81ICDAsxrqr371K+Xm5mrSpEmyWCyezy00NFSFhYXq2bOnpk2bprS0NOXm5urkyZO64YYb2jUeAAAmWNxX8vAIAAAAAJdl5cqVWrx4scrKytosNICLq6io0OjRo/XWW2+pX79+puMAAHDVWJgBAAAA6ECFhYWy2+2KjIzUzp07tXTpUqWnp1PAXcKmTZsUGhqqmJgYHTx4UPPmzZPNZtPtt99uOhoAAB2CEg4AAADoQPv379drr72mEydOqEePHsrIyPDckooLO3XqlBYtWqR///vfuuGGG3TnnXdqxowZHbLaLAAA/oDbUQEAAAAAAAAvY048AAAAAAAA4GWUcAAAAAAAAICXUcIBAAAAAAAAXkYJBwAAAAAAAHgZJRwAAAAAAADgZZRwAAAAAAAAgJf9P3VZUzSTY5YfAAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# load md\n",
+ "metadata = pd.read_table(f'{input_dir}/data/syncom_rl_md.tsv', index_col = 0)\n",
+ "\n",
+ "#load samples\n",
+ "table = load_table(f'{input_dir}/data/syncom_rl.biom').to_dataframe().T\n",
+ "\n",
+ "# load multinomial ranks (differentials)\n",
+ "beta = pd.read_csv(f'{input_dir}/out_rl/differentials.tsv', sep='\\t', index_col = 0)\n",
+ "beta = beta.iloc[1:]\n",
+ "\n",
+ "# table normalization by column\n",
+ "table = table.loc[:, table.sum(axis=0)>0]\n",
+ "table = table.apply(lambda x: x / x.sum(), axis=1)\n",
+ "\n",
+ "reference_species = 'Corynebacterium afermentans'\n",
+ "\n",
+ "def balance_f(x):\n",
+ " lr = [np.log(x['Cutibacterium acnes']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Micrococcus luteus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus aureus']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus capitis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus epidermidis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus hominis']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Staphylococcus warneri']+0.001) - np.log(x[reference_species]+0.001),\n",
+ " np.log(x['Streptococcus mitis']+0.001) - np.log(x[reference_species]+0.001)\n",
+ " ]\n",
+ " cols = [\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)'\n",
+ " ]\n",
+ " return pd.Series(lr, index=cols)\n",
+ "\n",
+ "balances = table.apply(balance_f, axis = 1)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[0]\n",
+ "tstats = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[1]\n",
+ "tpvals = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[2]\n",
+ "tlower = balances.apply(f, axis=0)\n",
+ "\n",
+ "f = lambda x: paired_t_test(category='treatment', md=metadata, df=x)[3]\n",
+ "tupper = balances.apply(f, axis=0)\n",
+ "\n",
+ "stats = pd.DataFrame(\n",
+ " {\n",
+ " '24hControl_vs_24hChemical_tstat': tstats,\n",
+ " '24hControl__vs_24hChemical_pvalue': tpvals,\n",
+ " '24hControl_vs_24hChemical_upperCI': tlower,\n",
+ " '24hControl_vs_24hChemical_lowerCI': tupper\n",
+ " }\n",
+ ")\n",
+ "\n",
+ "data = pd.merge(balances, metadata, left_index=True, right_index=True)\n",
+ "\n",
+ "subdata = data[[\n",
+ " 'log(C.acnes/C.afermentans)',\n",
+ " 'log(M.luteus/C.afermentans)',\n",
+ " 'log(S.aureus/C.afermentans)',\n",
+ " 'log(S.capitis/C.afermentans)',\n",
+ " 'log(S.epidermidis/C.afermentans)',\n",
+ " 'log(S.hominis/C.afermentans)',\n",
+ " 'log(S.warneri/C.afermentans)',\n",
+ " 'log(S.mitis/C.afermentans)',\n",
+ " 'treatment']]\n",
+ "\n",
+ "df = pd.melt(subdata, id_vars = 'treatment', var_name = 'balance')\n",
+ "\n",
+ "# get the palette color name\n",
+ "deep_palette = sns.color_palette(\"Set1\")\n",
+ "\n",
+ "# Extract the first two colors\n",
+ "color1 = deep_palette[0]\n",
+ "color2 = deep_palette[1]\n",
+ "\n",
+ "#, notch=True\n",
+ "sns.set(style=\"white\", font_scale=1.5, font=\"sans-serif\", palette=\"Set1\")\n",
+ "\n",
+ "# get a label for outlier,figure out why there is error bar \n",
+ "# customize which counts as outlier\n",
+ "g = sns.catplot(x='value', y='balance', data=df, hue='treatment', kind='box',\n",
+ " hue_order=['reference', 'RL'], n_boot = 1000,\n",
+ " height = 10, aspect = 1.8, legend = False, whis = [0,100])\n",
+ "g.set_xlabels('log fold change', fontsize=14)\n",
+ "g.set_ylabels('', fontsize=14)\n",
+ "plt.legend(fontsize = 20, frameon=False)\n",
+ "# plt.legend(loc='lower right', labels=['Control', 'Treatment'])\n",
+ "plt.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "plt.xticks(fontsize=12)\n",
+ "\n",
+ "ax = plt.gca()\n",
+ "leg = ax.legend(fontsize=20, frameon=False, loc='lower right')\n",
+ "leg.legendHandles[0].set_linewidth(8)\n",
+ "leg.legendHandles[0].set_color(color1)\n",
+ "leg.legendHandles[1].set_linewidth(8)\n",
+ "leg.legendHandles[1].set_color(color2)\n",
+ "leg.get_frame().set_linewidth(0)\n",
+ "#plt.xticks(rotation=60)\n",
+ "\n",
+ "# g.savefig('./out_rl/fig_rl.svg', format='svg')\n",
+ "stats.to_csv('./out_c_afermentans/stats_invitro_rl.csv')\n",
+ "stats"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "474a775a-0c73-4754-b887-2529decd1843",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "qiime2-2020.6-system",
+ "language": "python",
+ "name": "qiime2-2020.6-system"
+ },
+ "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.10"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}