{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Basic single trial fNIRS finger tapping classification \n", "\n", "This notebook sketches the analysis of a finger tapping dataset with multiple subjects. A simple Linear Discriminant Analysis (LDA) classifier is trained to distinguish left and right fingertapping." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:01:54.125408Z", "iopub.status.busy": "2024-09-02T16:01:54.124967Z", "iopub.status.idle": "2024-09-02T16:01:55.702088Z", "shell.execute_reply": "2024-09-02T16:01:55.701595Z" } }, "outputs": [], "source": [ "import cedalion\n", "import cedalion.nirs\n", "from cedalion.datasets import get_multisubject_fingertapping_snirf_paths\n", "import numpy as np\n", "import xarray as xr\n", "import matplotlib.pyplot as p\n", "\n", "from sklearn.preprocessing import LabelEncoder\n", "from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.metrics import accuracy_score\n", "\n", "xr.set_options(display_max_rows=3, display_values_threshold=50)\n", "np.set_printoptions(precision=4)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Loading raw CW-NIRS data from a SNIRF file\n", "\n", "This notebook uses a finger-tapping dataset in BIDS layout provided by [Rob Luke](https://github.com/rob-luke/BIDS-NIRS-Tapping). It can can be downloaded via `cedalion.datasets`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Cedalion's `read_snirf` method returns a list of `Recording` objects. These are containers for timeseries and adjunct data objects." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:01:55.704931Z", "iopub.status.busy": "2024-09-02T16:01:55.704388Z", "iopub.status.idle": "2024-09-02T16:01:59.372821Z", "shell.execute_reply": "2024-09-02T16:01:59.372327Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Downloading file 'multisubject-fingertapping.zip' from 'https://doc.ml.tu-berlin.de/cedalion/datasets/multisubject-fingertapping.zip' to '/home/runner/.cache/cedalion'.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Unzipping contents of '/home/runner/.cache/cedalion/multisubject-fingertapping.zip' to '/home/runner/.cache/cedalion/multisubject-fingertapping.zip.unzip'\n" ] }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fnames = get_multisubject_fingertapping_snirf_paths()\n", "subjects = [f\"sub-{i:02d}\" for i in [1, 2, 3, 4, 5]]\n", "\n", "# store data of different subjects in a dictionary\n", "data = {}\n", "for subject, fname in zip(subjects, fnames):\n", " records = cedalion.io.read_snirf(fname)\n", " rec = records[0]\n", " display(rec)\n", "\n", " # Cedalion registers an accessor (attribute .cd ) on pandas DataFrames.\n", " # Use this to rename trial_types inplace.\n", " rec.stim.cd.rename_events(\n", " {\"1.0\": \"control\", \"2.0\": \"Tapping/Left\", \"3.0\": \"Tapping/Right\"}\n", " )\n", "\n", " dpf = xr.DataArray(\n", " [6, 6],\n", " dims=\"wavelength\",\n", " coords={\"wavelength\": rec[\"amp\"].wavelength},\n", " )\n", "\n", " rec[\"od\"] = -np.log(rec[\"amp\"] / rec[\"amp\"].mean(\"time\")),\n", " rec[\"conc\"] = cedalion.nirs.beer_lambert(rec[\"amp\"], rec.geo3d, dpf)\n", "\n", " data[subject] = rec" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Illustrate the dataset of one subject" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:01:59.374971Z", "iopub.status.busy": "2024-09-02T16:01:59.374815Z", "iopub.status.idle": "2024-09-02T16:01:59.378259Z", "shell.execute_reply": "2024-09-02T16:01:59.377830Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "display(data[\"sub-01\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Frequency filtering and splitting into epochs" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:01:59.380160Z", "iopub.status.busy": "2024-09-02T16:01:59.379867Z", "iopub.status.idle": "2024-09-02T16:01:59.800885Z", "shell.execute_reply": "2024-09-02T16:01:59.800401Z" } }, "outputs": [], "source": [ "for subject, rec in data.items():\n", " # cedalion registers the accessor .cd on DataArrays\n", " # to provide common functionality like frequency filters...\n", " rec[\"conc_freqfilt\"] = rec[\"conc\"].cd.freq_filter(\n", " fmin=0.02, fmax=0.5, butter_order=4\n", " )\n", "\n", " # ... or epoch splitting\n", " rec[\"cfepochs\"] = rec[\"conc_freqfilt\"].cd.to_epochs(\n", " rec.stim, # stimulus dataframe\n", " [\"Tapping/Left\", \"Tapping/Right\"], # select events\n", " before=5, # seconds before stimulus\n", " after=20, # seconds after stimulus\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot frequency filtered data\n", "Illustrate for a single subject and channel the effect of the bandpass filter." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:01:59.803343Z", "iopub.status.busy": "2024-09-02T16:01:59.803000Z", "iopub.status.idle": "2024-09-02T16:02:00.057718Z", "shell.execute_reply": "2024-09-02T16:02:00.057209Z" } }, "outputs": [ { "data": { "image/png": "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ixahX79+2LZtG5o1a+Z2vZYsWYKJEye6fOzTTz/FSy+9hPnz56NVq1bIzMzE1q1b/f8wiIiILnIMEhAREV3krFYroqOjUa1atTKHF+Tn5+P1119H06ZNAQBDhw7F+++/j6NHjyI+Ph4tW7ZE7969sXz5cgwfPhz79+/HRx99hEOHDqF+/foAgKlTpyI1NRXvvPMOnnrqKZfv89tvv2Hr1q0YMGCAy8czMjJQt25dXH/99YiKikLDhg3RqVMnPz4FIiIiAjjcgIiIiLxQrVo1e4AAAOrUqYNGjRohPj7e6b5jx44BADZv3gylFJo3b474+Hj7beXKldi/f7/b91myZAm6d++OpKQkl4/feuutOH/+PJo0aYJx48Zh0aJFKCgoCNB/SUREdPFiJgERERF5LCoqyulvi8Xi8j6bzQYAsNlsiIyMxKZNmxAZGen0PMfAQnFLlizBzTff7PbxBg0aYPfu3fjmm2+wbNky3HfffXjuueewcuXKEutDREREnmOQgIiIiBAdHe1UbDBQ2rdvj8LCQhw7dgzXXnutR685c+YMli9fjtmzZ5f6vNjYWAwePBiDBw/GX//6V1xxxRXYtm0bOnToEIhVJyIiuigxSEBERERo1KgR1q1bh/T0dMTHx7tN8/dW8+bNMXLkSIwePRovvPAC2rdvj99//x3fffcdrrzySpc1B1JTU9GsWTM0adLE7XLfffddFBYWonPnzqhWrRref/99xMbG4rLLLgvIehMREV2sWJOAiIiIMHXqVERGRqJly5aoXbs2MjIyArbsd955B6NHj8aUKVOQkpKCwYMHY926dWjQoIHL5y9evLjUoQYAUKNGDcyZMwfdu3dHmzZt8O233+J///sfatasGbD1JiIiuhhZlFKqvFeCiIiICAAKCwuRnJyML7/8krMVEBERlQNmEhAREVHYOHHiBCZPnoyrr766vFeFiIjoosRMAiIiIiIiIiICwEwCIiIiIiIiIirCIAERERERERERAWCQgIiIiIiIiIiKMEhARERERERERAAYJCAiIiIiIiKiIgwSEBEREREREREABgmIiIiIiIiIqAiDBEREREREREQEgEECIiIiIiIiIiry/2i7e+3ExzRmAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rec = data[\"sub-01\"]\n", "channel = \"S5D7\"\n", "\n", "f, ax = p.subplots(2, 1, figsize=(12, 4), sharex=True)\n", "ax[0].plot(rec[\"conc\"].time, rec[\"conc\"].sel(channel=channel, chromo=\"HbO\"), \"r-\", label=\"HbO\")\n", "ax[0].plot(rec[\"conc\"].time, rec[\"conc\"].sel(channel=channel, chromo=\"HbR\"), \"b-\", label=\"HbR\")\n", "ax[1].plot(\n", " rec[\"conc_freqfilt\"].time,\n", " rec[\"conc_freqfilt\"].sel(channel=channel, chromo=\"HbO\"),\n", " \"r-\",\n", " label=\"HbO\",\n", ")\n", "ax[1].plot(\n", " rec[\"conc_freqfilt\"].time,\n", " rec[\"conc_freqfilt\"].sel(channel=channel, chromo=\"HbR\"),\n", " \"b-\",\n", " label=\"HbR\",\n", ")\n", "ax[0].set_xlim(1000, 1200)\n", "ax[1].set_xlabel(\"time / s\")\n", "ax[0].set_ylabel(\"$\\Delta c$ / $\\mu M$\")\n", "ax[1].set_ylabel(\"$\\Delta c$ / $\\mu M$\")\n", "ax[0].legend(loc=\"upper left\")\n", "ax[1].legend(loc=\"upper left\");" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:00.059891Z", "iopub.status.busy": "2024-09-02T16:02:00.059496Z", "iopub.status.idle": "2024-09-02T16:02:00.074240Z", "shell.execute_reply": "2024-09-02T16:02:00.073772Z" }, "scrolled": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'concentration' (epoch: 60, chromo: 2, channel: 28,\n",
       "                                   reltime: 196)> Size: 5MB\n",
       "<Quantity([[[[-1.9479e-02 -1.9950e-02 -2.0945e-02 ... -1.9397e-01 -2.1930e-01\n",
       "    -2.4552e-01]\n",
       "   [-1.0442e-02 -1.1375e-02 -1.2845e-02 ... -2.5376e-01 -2.5998e-01\n",
       "    -2.6454e-01]\n",
       "   [-1.2500e-02 -8.8897e-03 -5.8428e-03 ... -2.1148e-01 -2.2557e-01\n",
       "    -2.3975e-01]\n",
       "   ...\n",
       "   [ 9.5644e-02  1.0075e-01  1.0499e-01 ... -3.2907e-01 -3.4702e-01\n",
       "    -3.6405e-01]\n",
       "   [ 2.0733e-02  2.2404e-02  2.3932e-02 ... -2.9462e-01 -2.9954e-01\n",
       "    -3.0371e-01]\n",
       "   [ 1.4324e-03  2.0415e-03  4.1027e-03 ... -3.0974e-01 -3.2710e-01\n",
       "    -3.4287e-01]]\n",
       "\n",
       "  [[ 1.4641e-02  6.4301e-03 -1.6853e-03 ... -6.5363e-02 -6.2839e-02\n",
       "    -5.7220e-02]\n",
       "   [ 2.0950e-03  5.5313e-03  8.9983e-03 ... -4.8858e-02 -5.4990e-02\n",
       "    -6.0070e-02]\n",
       "   [ 4.5053e-02  4.2005e-02  3.9300e-02 ... -4.3936e-02 -4.3039e-02\n",
       "    -4.0861e-02]\n",
       "...\n",
       "   [ 2.8454e-01  2.9324e-01  3.0016e-01 ...  1.0617e-01  1.1339e-01\n",
       "     1.2119e-01]\n",
       "   [ 3.4306e-01  3.9592e-01  4.4809e-01 ... -1.8578e-01 -1.7872e-01\n",
       "    -1.7142e-01]\n",
       "   [ 6.1801e-01  6.1059e-01  6.0291e-01 ...  1.8868e-01  1.9003e-01\n",
       "     1.9076e-01]]\n",
       "\n",
       "  [[ 6.5167e-02  5.7419e-02  4.9134e-02 ...  3.1521e-02  3.2053e-02\n",
       "     3.1760e-02]\n",
       "   [ 3.6845e-02  3.4700e-02  3.1450e-02 ... -3.0447e-02 -2.7677e-02\n",
       "    -2.3868e-02]\n",
       "   [ 4.8888e-02  3.9980e-02  3.2743e-02 ...  3.0387e-02  3.4824e-02\n",
       "     3.9630e-02]\n",
       "   ...\n",
       "   [ 5.8174e-02  5.3107e-02  4.7739e-02 ... -8.1364e-03 -6.2961e-03\n",
       "    -5.3040e-03]\n",
       "   [ 1.5154e-01  1.6202e-01  1.7299e-01 ...  2.6186e-02  3.2992e-02\n",
       "     3.8859e-02]\n",
       "   [ 1.5938e-01  1.5348e-01  1.4687e-01 ...  3.8222e-02  4.2833e-02\n",
       "     4.6774e-02]]]], 'micromolar')>\n",
       "Coordinates: (3/6)\n",
       "  * chromo      (chromo) <U3 24B 'HbO' 'HbR'\n",
       "  * channel     (channel) object 224B 'S1D1' 'S1D2' 'S1D3' ... 'S8D8' 'S8D16'\n",
       "    ...          ...\n",
       "    trial_type  (epoch) object 480B 'Tapping/Left' ... 'Tapping/Right'\n",
       "Dimensions without coordinates: epoch
" ], "text/plain": [ " Size: 5MB\n", "\n", "Coordinates: (3/6)\n", " * chromo (chromo) \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'concentration' (epoch: 300, chromo: 2, channel: 28,\n",
       "                                   reltime: 196)> Size: 26MB\n",
       "<Quantity([[[[-1.9479e-02 -1.9950e-02 -2.0945e-02 ... -1.9397e-01 -2.1930e-01\n",
       "    -2.4552e-01]\n",
       "   [-1.0442e-02 -1.1375e-02 -1.2845e-02 ... -2.5376e-01 -2.5998e-01\n",
       "    -2.6454e-01]\n",
       "   [-1.2500e-02 -8.8897e-03 -5.8428e-03 ... -2.1148e-01 -2.2557e-01\n",
       "    -2.3975e-01]\n",
       "   ...\n",
       "   [ 9.5644e-02  1.0075e-01  1.0499e-01 ... -3.2907e-01 -3.4702e-01\n",
       "    -3.6405e-01]\n",
       "   [ 2.0733e-02  2.2404e-02  2.3932e-02 ... -2.9462e-01 -2.9954e-01\n",
       "    -3.0371e-01]\n",
       "   [ 1.4324e-03  2.0415e-03  4.1027e-03 ... -3.0974e-01 -3.2710e-01\n",
       "    -3.4287e-01]]\n",
       "\n",
       "  [[ 1.4641e-02  6.4301e-03 -1.6853e-03 ... -6.5363e-02 -6.2839e-02\n",
       "    -5.7220e-02]\n",
       "   [ 2.0950e-03  5.5313e-03  8.9983e-03 ... -4.8858e-02 -5.4990e-02\n",
       "    -6.0070e-02]\n",
       "   [ 4.5053e-02  4.2005e-02  3.9300e-02 ... -4.3936e-02 -4.3039e-02\n",
       "    -4.0861e-02]\n",
       "...\n",
       "   [-1.8642e-01 -1.8383e-01 -1.8031e-01 ...  9.3582e-03  1.1076e-02\n",
       "     1.3423e-02]\n",
       "   [-2.8335e-01 -2.7513e-01 -2.6600e-01 ... -1.3274e-02 -4.6116e-03\n",
       "     2.3699e-03]\n",
       "   [-3.7102e-01 -3.6417e-01 -3.5820e-01 ...  1.8997e-01  1.9610e-01\n",
       "     2.0283e-01]]\n",
       "\n",
       "  [[ 6.9413e-02  6.7628e-02  6.5086e-02 ...  2.3354e-02  8.2493e-03\n",
       "    -6.5091e-03]\n",
       "   [ 9.3748e-02  7.1599e-02  4.8922e-02 ...  6.0441e-03  3.1716e-02\n",
       "     4.8579e-02]\n",
       "   [ 1.3260e-01  1.2931e-01  1.2489e-01 ...  1.8629e-01  1.6657e-01\n",
       "     1.4594e-01]\n",
       "   ...\n",
       "   [ 3.5046e-02  3.1738e-02  2.8594e-02 ...  9.8597e-02  1.0093e-01\n",
       "     1.0222e-01]\n",
       "   [ 8.7634e-02  8.3598e-02  8.0126e-02 ...  1.1028e-01  1.0263e-01\n",
       "     9.5370e-02]\n",
       "   [-3.3306e-02 -3.6382e-02 -3.7580e-02 ...  4.1337e-03  3.1121e-03\n",
       "     5.3934e-04]]]], 'micromolar')>\n",
       "Coordinates: (3/6)\n",
       "  * chromo      (chromo) <U3 24B 'HbO' 'HbR'\n",
       "  * channel     (channel) object 224B 'S1D1' 'S1D2' 'S1D3' ... 'S8D8' 'S8D16'\n",
       "    ...          ...\n",
       "    trial_type  (epoch) object 2kB 'Tapping/Left' ... 'Tapping/Right'\n",
       "Dimensions without coordinates: epoch
" ], "text/plain": [ " Size: 26MB\n", "\n", "Coordinates: (3/6)\n", " * chromo (chromo) " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f, ax = p.subplots(5, 6, figsize=(12, 10))\n", "ax = ax.flatten()\n", "for i_ch, ch in enumerate(blockaverage.channel):\n", " for ls, trial_type in zip([\"-\", \"--\"], blockaverage.trial_type):\n", " ax[i_ch].plot(\n", " blockaverage.reltime,\n", " blockaverage.sel(chromo=\"HbO\", trial_type=trial_type, channel=ch),\n", " \"r\",\n", " lw=2,\n", " ls=ls,\n", " )\n", " ax[i_ch].plot(\n", " blockaverage.reltime,\n", " blockaverage.sel(chromo=\"HbR\", trial_type=trial_type, channel=ch),\n", " \"b\",\n", " lw=2,\n", " ls=ls,\n", " )\n", " ax[i_ch].grid(1)\n", " ax[i_ch].set_title(ch.values)\n", " ax[i_ch].set_ylim(-0.3, 0.6)\n", "\n", "p.tight_layout()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Training a LDA classifier with Scikit-Learn" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:02.502001Z", "iopub.status.busy": "2024-09-02T16:02:02.501846Z", "iopub.status.idle": "2024-09-02T16:02:02.516979Z", "shell.execute_reply": "2024-09-02T16:02:02.516546Z" } }, "outputs": [], "source": [ "# start with the frequency-filtered, epoched and baseline-corrected concentration data\n", "# discard the samples before the stimulus onset\n", "epochs = all_epochs_blcorrected.sel(reltime=all_epochs_blcorrected.reltime >=0)\n", "# strip units. sklearn would strip them anyway and issue a warning about it.\n", "epochs = epochs.pint.dequantify()\n", "\n", "# need to manually tell xarray to create an index for trial_type\n", "epochs = epochs.set_xindex(\"trial_type\")" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:02.519188Z", "iopub.status.busy": "2024-09-02T16:02:02.518877Z", "iopub.status.idle": "2024-09-02T16:02:02.534430Z", "shell.execute_reply": "2024-09-02T16:02:02.534018Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'concentration' (epoch: 300, chromo: 2, channel: 28,\n",
       "                                   reltime: 157)> Size: 21MB\n",
       "array([[[[-3.6270e-02, -1.8064e-02,  2.0471e-03, ..., -6.8976e-02,\n",
       "          -9.4304e-02, -1.2053e-01],\n",
       "         [ 4.6475e-03,  1.1837e-02,  1.9097e-02, ..., -1.5186e-01,\n",
       "          -1.5808e-01, -1.6264e-01],\n",
       "         [ 2.4496e-03,  1.2294e-02,  2.3849e-02, ..., -1.3250e-01,\n",
       "          -1.4658e-01, -1.6077e-01],\n",
       "         ...,\n",
       "         [-4.3450e-02, -3.0909e-02, -1.6201e-02, ..., -3.4983e-01,\n",
       "          -3.6779e-01, -3.8482e-01],\n",
       "         [ 2.2952e-02,  3.4524e-02,  4.6622e-02, ..., -2.6465e-01,\n",
       "          -2.6958e-01, -2.7375e-01],\n",
       "         [-4.2557e-03,  1.3953e-02,  3.3226e-02, ..., -2.5881e-01,\n",
       "          -2.7617e-01, -2.9194e-01]],\n",
       "\n",
       "        [[ 1.5914e-02,  1.3944e-02,  1.0925e-02, ..., -7.7108e-02,\n",
       "          -7.4584e-02, -6.8965e-02],\n",
       "         [-1.2916e-02, -9.4326e-03, -4.7285e-03, ..., -5.5005e-02,\n",
       "          -6.1136e-02, -6.6217e-02],\n",
       "         [-6.1391e-03, -2.1726e-03, -2.9566e-05, ..., -8.1372e-02,\n",
       "          -8.0476e-02, -7.8297e-02],\n",
       "...\n",
       "         [ 1.5353e-01,  1.5630e-01,  1.5688e-01, ...,  6.7293e-02,\n",
       "           6.9011e-02,  7.1357e-02],\n",
       "         [ 2.4956e-01,  2.4903e-01,  2.4447e-01, ...,  7.8465e-02,\n",
       "           8.7128e-02,  9.4109e-02],\n",
       "         [ 4.8391e-01,  4.8248e-01,  4.7416e-01, ...,  3.1090e-01,\n",
       "           3.1703e-01,  3.2376e-01]],\n",
       "\n",
       "        [[-1.5826e-02, -1.2935e-02, -5.2803e-03, ...,  2.3303e-03,\n",
       "          -1.2774e-02, -2.7533e-02],\n",
       "         [-1.3622e-02, -1.8221e-02, -2.3395e-02, ...,  1.1320e-02,\n",
       "           3.6992e-02,  5.3854e-02],\n",
       "         [-3.5104e-02, -3.3747e-02, -3.9994e-02, ...,  7.3406e-02,\n",
       "           5.3683e-02,  3.3055e-02],\n",
       "         ...,\n",
       "         [ 1.1524e-02,  1.4339e-02,  1.6261e-02, ...,  9.8163e-02,\n",
       "           1.0049e-01,  1.0178e-01],\n",
       "         [-5.6057e-02, -5.8393e-02, -5.9799e-02, ...,  6.0866e-02,\n",
       "           5.3214e-02,  4.5954e-02],\n",
       "         [ 3.0087e-02,  3.2592e-02,  3.6472e-02, ..., -5.2316e-03,\n",
       "          -6.2531e-03, -8.8259e-03]]]])\n",
       "Coordinates: (3/6)\n",
       "  * chromo      (chromo) <U3 24B 'HbO' 'HbR'\n",
       "  * channel     (channel) object 224B 'S1D1' 'S1D2' 'S1D3' ... 'S8D8' 'S8D16'\n",
       "    ...          ...\n",
       "  * trial_type  (epoch) object 2kB 'Tapping/Left' ... 'Tapping/Right'\n",
       "Dimensions without coordinates: epoch\n",
       "Attributes:\n",
       "    units:    micromolar
" ], "text/plain": [ " Size: 21MB\n", "array([[[[-3.6270e-02, -1.8064e-02, 2.0471e-03, ..., -6.8976e-02,\n", " -9.4304e-02, -1.2053e-01],\n", " [ 4.6475e-03, 1.1837e-02, 1.9097e-02, ..., -1.5186e-01,\n", " -1.5808e-01, -1.6264e-01],\n", " [ 2.4496e-03, 1.2294e-02, 2.3849e-02, ..., -1.3250e-01,\n", " -1.4658e-01, -1.6077e-01],\n", " ...,\n", " [-4.3450e-02, -3.0909e-02, -1.6201e-02, ..., -3.4983e-01,\n", " -3.6779e-01, -3.8482e-01],\n", " [ 2.2952e-02, 3.4524e-02, 4.6622e-02, ..., -2.6465e-01,\n", " -2.6958e-01, -2.7375e-01],\n", " [-4.2557e-03, 1.3953e-02, 3.3226e-02, ..., -2.5881e-01,\n", " -2.7617e-01, -2.9194e-01]],\n", "\n", " [[ 1.5914e-02, 1.3944e-02, 1.0925e-02, ..., -7.7108e-02,\n", " -7.4584e-02, -6.8965e-02],\n", " [-1.2916e-02, -9.4326e-03, -4.7285e-03, ..., -5.5005e-02,\n", " -6.1136e-02, -6.6217e-02],\n", " [-6.1391e-03, -2.1726e-03, -2.9566e-05, ..., -8.1372e-02,\n", " -8.0476e-02, -7.8297e-02],\n", "...\n", " [ 1.5353e-01, 1.5630e-01, 1.5688e-01, ..., 6.7293e-02,\n", " 6.9011e-02, 7.1357e-02],\n", " [ 2.4956e-01, 2.4903e-01, 2.4447e-01, ..., 7.8465e-02,\n", " 8.7128e-02, 9.4109e-02],\n", " [ 4.8391e-01, 4.8248e-01, 4.7416e-01, ..., 3.1090e-01,\n", " 3.1703e-01, 3.2376e-01]],\n", "\n", " [[-1.5826e-02, -1.2935e-02, -5.2803e-03, ..., 2.3303e-03,\n", " -1.2774e-02, -2.7533e-02],\n", " [-1.3622e-02, -1.8221e-02, -2.3395e-02, ..., 1.1320e-02,\n", " 3.6992e-02, 5.3854e-02],\n", " [-3.5104e-02, -3.3747e-02, -3.9994e-02, ..., 7.3406e-02,\n", " 5.3683e-02, 3.3055e-02],\n", " ...,\n", " [ 1.1524e-02, 1.4339e-02, 1.6261e-02, ..., 9.8163e-02,\n", " 1.0049e-01, 1.0178e-01],\n", " [-5.6057e-02, -5.8393e-02, -5.9799e-02, ..., 6.0866e-02,\n", " 5.3214e-02, 4.5954e-02],\n", " [ 3.0087e-02, 3.2592e-02, 3.6472e-02, ..., -5.2316e-03,\n", " -6.2531e-03, -8.8259e-03]]]])\n", "Coordinates: (3/6)\n", " * chromo (chromo) \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'concentration' (epoch: 300, features: 8792)> Size: 21MB\n",
       "array([[-0.0363, -0.0181,  0.002 , ..., -0.0126, -0.0093, -0.0072],\n",
       "       [ 0.109 ,  0.0983,  0.0847, ..., -0.0343, -0.036 , -0.0378],\n",
       "       [-0.0203, -0.0267, -0.0325, ..., -0.0187, -0.0155, -0.0115],\n",
       "       ...,\n",
       "       [ 0.029 ,  0.0078, -0.0164, ..., -0.0117, -0.0013,  0.0085],\n",
       "       [-0.2281, -0.2284, -0.2273, ...,  0.0104,  0.0108,  0.0135],\n",
       "       [ 0.2505,  0.2608,  0.2643, ..., -0.0052, -0.0063, -0.0088]])\n",
       "Coordinates: (3/7)\n",
       "    source      (features) object 70kB 'S1' 'S1' 'S1' 'S1' ... 'S8' 'S8' 'S8'\n",
       "    detector    (features) object 70kB 'D1' 'D1' 'D1' 'D1' ... 'D16' 'D16' 'D16'\n",
       "    ...          ...\n",
       "  * reltime     (features) float64 70kB 0.0 0.128 0.256 ... 19.71 19.84 19.97\n",
       "Dimensions without coordinates: epoch\n",
       "Attributes:\n",
       "    units:    micromolar
" ], "text/plain": [ " Size: 21MB\n", "array([[-0.0363, -0.0181, 0.002 , ..., -0.0126, -0.0093, -0.0072],\n", " [ 0.109 , 0.0983, 0.0847, ..., -0.0343, -0.036 , -0.0378],\n", " [-0.0203, -0.0267, -0.0325, ..., -0.0187, -0.0155, -0.0115],\n", " ...,\n", " [ 0.029 , 0.0078, -0.0164, ..., -0.0117, -0.0013, 0.0085],\n", " [-0.2281, -0.2284, -0.2273, ..., 0.0104, 0.0108, 0.0135],\n", " [ 0.2505, 0.2608, 0.2643, ..., -0.0052, -0.0063, -0.0088]])\n", "Coordinates: (3/7)\n", " source (features) object 70kB 'S1' 'S1' 'S1' 'S1' ... 'S8' 'S8' 'S8'\n", " detector (features) object 70kB 'D1' 'D1' 'D1' 'D1' ... 'D16' 'D16' 'D16'\n", " ... ...\n", " * reltime (features) float64 70kB 0.0 0.128 0.256 ... 19.71 19.84 19.97\n", "Dimensions without coordinates: epoch\n", "Attributes:\n", " units: micromolar" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X = epochs.stack(features=[\"chromo\", \"channel\", \"reltime\"])\n", "display(X)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:02.553684Z", "iopub.status.busy": "2024-09-02T16:02:02.553350Z", "iopub.status.idle": "2024-09-02T16:02:02.560015Z", "shell.execute_reply": "2024-09-02T16:02:02.559593Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'trial_type' (epoch: 300)> Size: 2kB\n",
       "array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "       0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n",
       "       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])\n",
       "Coordinates:\n",
       "  * trial_type  (epoch) object 2kB 'Tapping/Left' ... 'Tapping/Right'\n",
       "Dimensions without coordinates: epoch
" ], "text/plain": [ " Size: 2kB\n", "array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])\n", "Coordinates:\n", " * trial_type (epoch) object 2kB 'Tapping/Left' ... 'Tapping/Right'\n", "Dimensions without coordinates: epoch" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "y = xr.apply_ufunc(LabelEncoder().fit_transform, X.trial_type)\n", "display(y)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:02.561632Z", "iopub.status.busy": "2024-09-02T16:02:02.561485Z", "iopub.status.idle": "2024-09-02T16:02:02.748225Z", "shell.execute_reply": "2024-09-02T16:02:02.747755Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.8888888888888888\n" ] } ], "source": [ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, stratify=y)\n", "classifier = LinearDiscriminantAnalysis(n_components=1).fit(X_train, y_train)\n", "y_pred = classifier.predict(X_test)\n", "print(f\"Accuracy: {accuracy_score(y_test, y_pred)}\")" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2024-09-02T16:02:02.751434Z", "iopub.status.busy": "2024-09-02T16:02:02.750626Z", "iopub.status.idle": "2024-09-02T16:02:03.002826Z", "shell.execute_reply": "2024-09-02T16:02:03.002309Z" } }, "outputs": [ { "data": { "image/png": "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+okPRzMy9ODYsRp4zz1K/fRTjRs+XFNmzizW7+y5c3pt6VL9c8ECbVq7VsdPnNAzzzwjSXrmmWc0ePBge7LNzMzU7bfffsX3DwAobtOmTerfv7+CgoIcijJJunDhgp577jl16tRJtWvXVlBQkEaMGKHvv//ecwFXcFUq1994Y4n7+Prrr7VlyxbVrFmz1DiOHj2qBx98UAMHDlRqaqrGjRunKVOmFOt39uxZvfbaa/rnP/+pTZs26fjx41fO9TfffMX3DwCuxuncHta0aVN7YpCkiRMnasOGDXrvvffUo0cPe3twcLDmzp0ri8Widu3aad++fZo7d67GjBlj73PHHXdo8uTJkqS2bdtqy5Ytmjt3rvr06VPq/p955hn169dPkhQbG6sbb7xRhw8fVvv27bVw4UJFRkba42vbtq2Sk5P10UcfOYzx4YcfOpzeJUmL//EPvbVqlS4UFCg/P1/XXXed3ighKV+y9J//VLvWrTX7hRckSe3atNE3336r6QsWOPS7cOGClr76qlq3bClJiho1StN+61OnTh35+PgoLy+P08cA4BqcOXNGXbp00ejRo/XAAw84bDt79qx2796tF154QV26dNHJkycVHR2t++67Tzt37vRQxBVblc31ixfrrbfe0oULF/4v17/xRqlxLF26VO3atdPs2bMlSe3atdM333xTrGi/cOGCli5dqtatW0uSoqKiNG3aNEml5Hp+wAFQzjgS7WGFhYWaPn26OnfurIYNG6pOnTrauHGjjh8/7tDvtttuk8Visa+HhYXp0KFDKiwsdGj7vbCwMB24yp2sO3fubP93kyZNJEnZ2dmSpLS0NN16660O/S9fNwxD//73vx1O75Kkofffr9SNG7V1/XoN7t9ff3n4YT3wWwIvSdqRI7qlSxfHfXXrVqyfr4+PvYCWpCYBAfZ4AQCuERkZqVdeeUWDBg0qts3f318JCQkaPHiw2rVrp9tuu00LFy7Url27iuUuXFRlc/3QoUpNTdXWrVs1ePBg/eUvfyn2o8vvpaWl6ZZbbrnivqSLp4lfKqAvxUyuB1CRUER72Ouvv665c+fq2Wef1RdffKHU1FRFREQoPz/fJeP/PhmX5PenXV3qW1RUJOli0rz89b+/NkuSduzYofz8fN15550O7f5+fmoTEqKbOnXSOwsXKmnrVr192fVfl497tX1dHu+lmEvq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r15t1KxZ03j77beN//73v0Z0dLRRu3Zt4+jRo54OrVI4deqU/XMoyZgzZ46xZ88e49ixY4ZhGMarr75q+Pv7G2vXrjX27dtnPPLII0aTJk2M3NxcD0decT322GOGv7+/kZiY6PD38+zZs/Y+zCvchRxuHjn56sixJSN3Xh250P0ooiuY5cuXG5JKXH7v2LFjRr9+/QwfHx+jQYMGRlRUlHH+/HkPRV05jBw5ssR5/fLLL+19mFfnvfHGG0aLFi0Mb29v46abbrI/PgFX9+WXX5b4mRw5cqRhGBcfQfHSSy8ZgYGBhtVqNe666y5j3759ng26givt7+fy5cvtfZhXuAs53Dxysjnk2OLInVdHLnQ/i2EYhjuOcAMAAAAAUNVwd24AAAAAAEyiiAYAAAAAwCSKaAAAAAAATKKIBgAAAADAJIpoAAAAAABMoogGAAAAAMAkimgAAAAAAEyiiAYAAAAAwCSKaAAAAAAATKKIBtxk1KhRGjhwYKnbW7ZsKYvFIovFIh8fH7Vs2VKDBw/WF198UWL/c+fOqX79+mrQoIHOnTvnpqgBAIBZ5HqgeqKIBjxo2rRpyszMVFpamv7xj3+oXr16+uMf/6jp06cX6/v++++rY8eO6tChg9auXeuBaEtXWFiooqIiT4cBAECFQ64Hqh6KaMCD/Pz8FBgYqObNm+uuu+7SsmXL9MILL+jFF19UWlqaQ9+3335bw4YN07Bhw/T2229fdezExETdeuutql27turVq6c77rhDx44ds29fv369br75ZtWqVUuNGjXSoEGD7NtOnjypESNGqH79+vL19VVkZKQOHTpk375ixQrVq1dPH330kTp06CCr1apjx44pPz9fzz77rJo2baratWurR48eSkxMvPaJAgCgkiLXA1UPRTRQwTz55JMyDEMffvihve3IkSPaunWrBg8erMGDBys5OVnfffddqWMUFBRo4MCB6tWrl/bu3autW7dq7NixslgskqT//Oc/GjRokPr166c9e/bo888/180332x//ahRo7Rz506tX79eW7dulWEYuvfee3XhwgV7n7NnzyouLk5vvfWW9u/fr8aNG2v06NHasmWLVq9erb179+qhhx7SPffc45CUAQCo7sj1QCVnAHCLkSNHGgMGDCh1e4sWLYy5c+eWuC0gIMB47LHH7OvPP/+8MXDgQPv6gAEDjClTppQ69s8//2xIMhITE0vcHhYWZgwdOrTEbQcPHjQkGVu2bLG3/fTTT4aPj4/x7rvvGoZhGMuXLzckGampqfY+hw8fNiwWi3HixAmH8e6++24jJiam1FgBAKisyPUXketR3XAkGqiADMOw/5JcWFio+Ph4DRs2zL592LBhio+PV2FhYYmvb9CggUaNGqWIiAj1799f8+fPV2Zmpn17amqq7r777hJfe+DAAdWoUUM9evSwtzVs2FDt2rXTgQMH7G3e3t7q3LmzfX337t0yDENt27ZVnTp17EtSUpKOHDlStokAAKCKItcDlVcNTwcAwNHPP/+sH3/8USEhIZKkTz/9VCdOnNCf//xnh36FhYXauHGjIiMjSxxn+fLleuKJJ7RhwwatWbNGU6dOVUJCgm677Tb5+PiUun/DMEptv5TsJcnHx8dhvaioSF5eXtq1a5e8vLwcXlunTp0rv2kAAKoRcj1QuXEkGqhg5s+fr+uuu87+yIy3335bDz/8sFJTUx2WoUOHXvWmI926dVNMTIySk5PVsWNHrVy5UpLUuXNnff755yW+pkOHDiooKND27dvtbT///LMOHjyoG2644Yr7KiwsVHZ2ttq0aeOwBAYGOjkLAABUXeR6oHLjSDTgRjk5OUpNTXVoa9CggZo3by5JOnXqlLKysnThwgWlp6frnXfe0VtvvaW4uDi1adNGP/74o/79739r/fr16tixo8M4I0eOVL9+/fTjjz/q+uuvd9iWnp6uZcuW6b777lNQUJDS0tJ08OBBjRgxQpL00ksv6e6771br1q318MMPq6CgQJ988omeffZZhYaGasCAARozZoz+/ve/y8/PT5MnT1bTpk01YMCAUt9r27ZtNXToUI0YMUKvv/66unXrpp9++klffPGFOnXqpHvvvdcFMwoAQMVCrifXoxry3OXYQNU2cuRIQ1KxZeTIkYZhXLzZyKU2b29vo3nz5sbgwYONL774wj7Ga6+9ZtSrV8/Iz88vNv6FCxeMBg0aGK+//nqxbVlZWcbAgQONJk2aGN7e3kaLFi2MF1980SgsLLT3ef/9942uXbsa3t7eRqNGjYxBgwbZt/3yyy/G8OHDDX9/f8PHx8eIiIgwDh48aN++fPlyw9/fv9h+8/PzjRdffNFo2bKlUbNmTSMwMNC4//77jb1795ZlCgEAqNDI9eR6VE8WwyjloggAAAAAAOCAa6IBAAAAADCJIhoAAAAAAJMoogEAAAAAMIkiGgAAAAAAkyiiAQAAAAAwiSIaAAAAAACTKKIBAAAAADCJIhoAAAAAAJMoogEAAAAAMIkiGgAAAAAAkyiiAQAAAAAw6f8DKRXDKACG5LcAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f, ax = p.subplots(1, 2, figsize=(12, 3))\n", "for trial_type, c in zip([\"Tapping/Left\", \"Tapping/Right\"], [\"r\", \"g\"]):\n", " kw = dict(alpha=0.5, fc=c, label=trial_type)\n", " ax[0].hist(classifier.decision_function(X_train.sel(trial_type=trial_type)), **kw)\n", " ax[1].hist(classifier.decision_function(X_test.sel(trial_type=trial_type)), **kw)\n", "\n", "ax[0].set_xlabel(\"LDA score\")\n", "ax[1].set_xlabel(\"LDA score\")\n", "ax[0].set_title(\"train\")\n", "ax[1].set_title(\"test\")\n", "ax[0].legend(ncol=1, loc=\"upper left\")\n", "ax[1].legend(ncol=1, loc=\"upper left\");" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.8" } }, "nbformat": 4, "nbformat_minor": 2 }