{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "64103f44", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import os\n", "import matplotlib.pyplot as plt\n", "import h5py\n", "import shutil\n", "\n", "from klusta.launch import klusta as klaunch" ] }, { "cell_type": "code", "execution_count": 2, "id": "0ebece1e", "metadata": {}, "outputs": [], "source": [ "# session location\n", "session_path = 'Z:\\\\Andrey\\\\data\\\\GB048\\\\2021-07-01_14-29-14'\n", "MCS_h5_name = [x for x in os.listdir(session_path) if x.startswith('GB')][0]" ] }, { "cell_type": "markdown", "id": "b9e743ef", "metadata": {}, "source": [ "## Conversion of MCS .h5 to .dat file\n", "\n", "http://neurosuite.sourceforge.net/formats.html\n" ] }, { "cell_type": "code", "execution_count": 28, "id": "3397fb7b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Channels: 16, samples: 88865000\n", "100 percent complete\r" ] } ], "source": [ "chunk_size = 25000 # 1 second at sampling rate 25kHz\n", "dest_file = os.path.join(session_path, 'all.dat')\n", "if os.path.exists(dest_file):\n", " os.remove(dest_file)\n", "\n", "with h5py.File(os.path.join(session_path, MCS_h5_name), 'r') as f:\n", " ds = f['Data']['Recording_0']['AnalogStream']['Stream_1']['ChannelData']\n", " print(\"Channels: %s, samples: %s\" % (ds.shape[0], ds.shape[1]))\n", " \n", " chunks_no = int(np.ceil(ds.shape[1]/chunk_size))\n", " for i in range(chunks_no):\n", " idx = i * chunk_size\n", " data = np.array(ds[:, idx:idx + chunk_size]).astype(np.int16)\n", " with open(dest_file, 'ab') as f:\n", " data.T.flatten().tofile(f)\n", " \n", " print(\"%s percent complete\\r\" % str(round(100*(i + 1)/float(chunks_no))), end='')" ] }, { "cell_type": "markdown", "id": "07710b0c", "metadata": {}, "source": [ "## Copy Neurosuite settings files" ] }, { "cell_type": "code", "execution_count": 13, "id": "a308cdf5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Z:\\\\Andrey\\\\data\\\\GB048\\\\2021-07-01_14-29-14\\\\all.prb'" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ns_settings_file = 'Z:\\\\Andrey\\\\data\\\\GB048\\\\all.xml'\n", "kwik_params_file = 'Z:\\\\Andrey\\\\data\\\\GB048\\\\all.prm'\n", "kwik_probes_file = 'Z:\\\\Andrey\\\\data\\\\GB048\\\\all.prb'\n", "\n", "shutil.copy(ns_settings_file, session_path)\n", "shutil.copy(kwik_params_file, session_path)\n", "shutil.copy(kwik_probes_file, session_path)" ] }, { "cell_type": "markdown", "id": "2115955a", "metadata": {}, "source": [ "## Run spikesorting with Klusta\n", "\n", "https://klusta.readthedocs.io/en/latest/sorting/" ] }, { "cell_type": "code", "execution_count": null, "id": "fde0887f", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Detecting spikes : 32%|███████████████▊ | 1145/3609 [25:40<1:00:59, 1.49s/it]" ] } ], "source": [ "prm_file = os.path.join(session_path, 'all.prm')\n", "\n", "os.chdir(session_path)\n", "klaunch(prm_file, output_dir=session_path, overwrite=True, legacy_output=True)" ] }, { "cell_type": "code", "execution_count": null, "id": "f74190fd", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "16cce152", "metadata": {}, "source": [ "## How to read / write .spk files" ] }, { "cell_type": "code", "execution_count": 61, "id": "ac1bc5e2", "metadata": {}, "outputs": [], "source": [ "path_from = os.path.join('D:\\\\', 'data', '005363', 'all.spk.3')\n", "path_to = os.path.join('D:\\\\', 'data', '005363', 'all.spk.3.new')" ] }, { "cell_type": "code", "execution_count": 58, "id": "451f29cd", "metadata": {}, "outputs": [], "source": [ "a1 = np.fromfile(path, dtype=np.int16)" ] }, { "cell_type": "code", "execution_count": 59, "id": "aa5058d3", "metadata": {}, "outputs": [], "source": [ "channels_no = 8\n", "samples_no = 50\n", "spikes_no = int(a1.shape[0]/(channels_no*samples_no))\n", "\n", "a2 = a1.reshape([spikes_no, samples_no, channels_no])" ] }, { "cell_type": "code", "execution_count": 56, "id": "db823975", "metadata": {}, "outputs": [], "source": [ "# write to .spk\n", "a2.flatten().tofile(path_to)" ] }, { "cell_type": "code", "execution_count": 60, "id": "2d8721c3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ]" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(a2[6])" ] }, { "cell_type": "markdown", "id": "fadeb4d6", "metadata": {}, "source": [ "## How to read MCS .h5 / write .dat files" ] }, { "cell_type": "code", "execution_count": 39, "id": "b7536d61", "metadata": {}, "outputs": [], "source": [ "# http://neurosuite.sourceforge.net/formats.html\n", "\n", "path_to_h5 = 'Z:\\\\Michael\\\\FreeBehaving\\\\Raw_Dardo\\\\Neurons\\\\01-07-2021\\\\GB048_2021-07-01T14-29-14.h5'" ] }, { "cell_type": "code", "execution_count": 38, "id": "d3e670ba", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(16, 88865000)\n" ] } ], "source": [ "seconds = 60\n", "chunk_size = 25000 # 1 second\n", "\n", "with h5py.File(path_to_h5, 'r') as f:\n", " ds = f['Data']['Recording_0']['AnalogStream']['Stream_1']['ChannelData']\n", " print(ds.shape) # channels x samples\n", " \n", " for i in range(seconds):\n", " idx = i * chunk_size\n", " data = np.array(ds[:, idx:idx + chunk_size]).astype(np.int16)\n", " with open('all.dat', 'ab') as f:\n", " data.T.flatten().tofile(f)" ] }, { "cell_type": "code", "execution_count": null, "id": "634e5759", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.6" } }, "nbformat": 4, "nbformat_minor": 5 }