{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"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.7.3"
},
"colab": {
"name": "analysis_tutorial.ipynb",
"provenance": [],
"collapsed_sections": [],
"toc_visible": true,
"machine_shape": "hm"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "5Duv5WIoj1gJ",
"colab_type": "text"
},
"source": [
"[![G-Node GIN](https://gin.g-node.org/img/favicon.png)](https://gin.g-node.org/hiobeen/Mouse_hdEEG_ASSR_Hwang_et_al/)\n",
"**👈🏼 Click to open in G-Node GIN repository!**\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"# 1. Dataset information\n",
"\n",
"A set of high-density EEG (electroencephalogram) recording obtained from awake, freely-moving mice (*mus musculus*) (n = 6). Details of experimental method are described in the original research article using the same dataset [Hwang et al., 2019, *Brain Structure and Function*].\n",
"\n",
"* Title: High-density EEG recording in mice for auditory steady-state response with optogenetic stimulation in the basal forebrain\n",
"* Authors: Eunjin Hwang, Hio-Been Han, Jeong-Yeong Kim, & Jee Hyun Choi [corresponding: jeechoi@kist.re.kr]\n",
"* Version: 1.0.0\n",
"* Related publication: [Hwang et al., 2019, *Brain Structure and Function*](https://link.springer.com/article/10.1007/s00429-019-01845-5).\n",
"* Dataset repository: G-Node GIN (DOI will be provided soon) https://gin.g-node.org/hiobeen/Mouse_hdEEG_ASSR_Hwang_et_al/\n",
"\n",
"**Step-by-step tutorial is included, fully functioning with _Google Colaboratory_ environment.**\n",
"[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1LRmR0fxqWFvwxaNIJxMJkMQVblcuTazk)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "eX7UGiS9j1gL",
"colab_type": "text"
},
"source": [
"# 2. File organization\n",
"\n",
"Raw EEG data are saved in EEGLAB dataset format (*.set). Below are the list of files included in this dataset.\n",
"\n",
"**a) Meta data file (1 csv file)**\n",
"\n",
" [metadata.csv]\n",
" \n",
"**b) Electrode montage file (1 csv file)**\n",
"\n",
" [montage.csv]\n",
" \n",
"**c) EEG data files (6 set files, 6 fdt files)**\n",
"\n",
" [rawdata/epochs_animal1.set, rawdata/epochs_animal1.fdt]\n",
" [rawdata/epochs_animal2.set, rawdata/epochs_animal2.fdt]\n",
" [rawdata/epochs_animal3.set, rawdata/epochs_animal3.fdt]\n",
" [rawdata/epochs_animal4.set, rawdata/epochs_animal4.fdt]\n",
" [rawdata/epochs_animal5.set, rawdata/epochs_animal5.fdt]\n",
" [rawdata/epochs_animal6.set, rawdata/epochs_animal6.fdt]\n",
" \n",
"**d) Example python scripts**\n",
"\n",
" [analysis_tutorial.ipynb]\n",
" * written and tested on Google COLAB - Python 3 environment\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "03aQC9Wpj1gL",
"colab_type": "text"
},
"source": [
"# 3. How to get started (Python 3 without _gin_)\n",
"As the data are saved in EEGLAB format, you need to install appropriate module to access the data in Python3 environment. The fastest way would be to use read_epochs_eeglab()
function in *MNE-python* module. You can download the toolbox from the link below (or use pip install mne
in terminal shell).\n",
"\n",
"\n",
"*[MNE-python]* https://martinos.org/mne/stable/index.html"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "7yA0xrmPd1S_",
"colab_type": "text"
},
"source": [
"## Part 1. Accessing dataset"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "_XiRFJ2Vojh0",
"colab_type": "text"
},
"source": [
"### 1-1. Download dataset and MNE-python module\n",
"\n",
"The dataset has been uploaded on G-Node and can be accessed by git command, by typing git clone https://gin.g-node.org/hiobeen/Mouse_hdEEG_ASSR_Hwang_et_al
. However, it's currently not functioning because of the large size of each dataset (>100 MB). Instead, you can use *gin* command or custom function written below to copy dataset into your work environment. In *gin* repository, a python script download_sample.py
is provided. It doesn't require *git* or *gin* command, simply using request
module in Python 3. Try typing python download_sample.py
on terminal/command after changing desired directory. In this Notebook document, Demo 1-1 is composed of download_sample.py script. \n",
"\n",
"> Warning: Direct cloning using *git clone git@gin.g-node.org:/hiobeen/Mouse_hdEEG_ASSR_Hwang_et_al.git* may not work because of the large size of each dataset (>100 MB).\n",
"\n",
"To download dataset and install MNE-python module into your environment (local machine/COLAB), try running scripts below.\n",
"\n",
"> Note: Through this step-by-step demonstration, we will use data from one animal (#Animal 2). Unnecessary data files will not be downloaded to prevent long download time. To download whole dataset, change this part; dataset_to_download = [2]
into dataset_to_download = [1,2,3,4,5,6]
.\n",
"\n",
"Also, you need to install *MNE-Python* module using *pip* command to load EEGLAB-formatted EEG data. Install command using *pip* is located at the end of script download_sample.py
."
]
},
{
"cell_type": "code",
"metadata": {
"id": "SIt3f7C8Wzj8",
"colab_type": "code",
"outputId": "5969b86e-3554-4203-b659-3c53adcc78b4",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 493
}
},
"source": [
"# Demo 1-1. Setting an enviroment (download_sample.py)\n",
"from os import listdir, mkdir, path, system, getcwd\n",
"dir_origin = dir_origin = getcwd()+'/' # <- Change this in local machine\n",
"dir_dataset= 'dataset/'\n",
"print('\\n1)============ Start Downloading =================\\n')\n",
"print('Target directory ... => [%s%s]'%(dir_origin,dir_dataset))\n",
"\n",
"#!rm -rf /content/dataset/\n",
"import requests\n",
"def download( dataset_to_download = range(1,7), dir_dataset = dir_dataset ):\n",
" # Check directory\n",
" if not path.isdir('%s%s'%(dir_origin,dir_dataset)):\n",
" mkdir('%s%s'%(dir_origin,dir_dataset))\n",
" mkdir('%s%s/rawdata/'%(dir_origin,dir_dataset))\n",
"\n",
" # File names to be downloaded\n",
" file_ids = [ 'meta.csv', 'montage.csv' ]\n",
" for set_id in dataset_to_download:\n",
" file_ids.append( 'rawdata/epochs_animal%s.set'%set_id )\n",
" file_ids.append( 'rawdata/epochs_animal%s.fdt'%set_id )\n",
"\n",
" # Request & download\n",
" repo_url = 'https://gin.g-node.org/hiobeen/Mouse_hdEEG_ASSR_Hwang_et_al/raw/9a35f6b1a53f87a96d76b8b7912738cb7d8d3d36/'\n",
" for file_id in file_ids:\n",
" fname_dest = \"%s%s%s\"%(dir_origin, dir_dataset, file_id)\n",
" if path.isfile(fname_dest) is False:\n",
" print('...copying to [%s]...'%fname_dest)\n",
" file_url = '%s%s'%(repo_url, file_id)\n",
" r = requests.get(file_url, stream = True)\n",
" with open(fname_dest, \"wb\") as file:\n",
" for block in r.iter_content(chunk_size=1024):\n",
" if block: file.write(block)\n",
" else:\n",
" print('...skipping already existing file [%s]...'%fname_dest)\n",
"\n",
"# Initiate downloading\n",
"dataset_to_download = [2] # Partial download to prevent long download time\n",
"#dataset_to_download = [1,2,3,4,5,6] # Download of whole dataset\n",
"download(dataset_to_download)\n",
"print('\\n============= Download finished ==================\\n\\n')\n",
"\n",
"# List up 'dataset/' directory\n",
"print('\\n2)=== List of available files in google drive ====\\n')\n",
"print(listdir('%sdataset/'%dir_origin))\n",
"print('\\n============= End of the list ==================\\n\\n')\n",
"\n",
"# List up dataset/rawdata/*.set and ~/*.fdt files\n",
"print('\\n3)=== List of available files in google drive ====\\n')\n",
"print(listdir('%sdataset/rawdata/'%dir_origin))\n",
"print('\\n============= End of the list ==================\\n\\n')\n",
"\n",
"# Install mne-python module\n",
"system('pip install mne');\n",
"\n",
"# Make figure output directory\n",
"dir_fig = 'figures/'\n",
"if not path.isdir(dir_fig): mkdir('%s%s'%(dir_origin, dir_fig))"
],
"execution_count": 1,
"outputs": [
{
"output_type": "stream",
"text": [
"\n",
"1)============ Start Downloading =================\n",
"\n",
"Target directory ... => [/content/dataset/]\n",
"...skipping already existing file [/content/dataset/meta.csv]...\n",
"...skipping already existing file [/content/dataset/montage.csv]...\n",
"...skipping already existing file [/content/dataset/rawdata/epochs_animal2.set]...\n",
"...skipping already existing file [/content/dataset/rawdata/epochs_animal2.fdt]...\n",
"\n",
"============= Download finished ==================\n",
"\n",
"\n",
"\n",
"2)=== List of available files in google drive ====\n",
"\n",
"['rawdata', 'meta.csv', 'montage.csv']\n",
"\n",
"============= End of the list ==================\n",
"\n",
"\n",
"\n",
"3)=== List of available files in google drive ====\n",
"\n",
"['epochs_animal2.set', 'epochs_animal2.fdt']\n",
"\n",
"============= End of the list ==================\n",
"\n",
"\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "6sZDBA4On2hT",
"colab_type": "text"
},
"source": [
"### 1-2. Accessing meta-data table\n",
"\n",
"File *meta.csv* contains the demographic information of 6 mice. Using read_csv()
of *pandas* module, meta-datat able can be visualized as follow. \n",
"\n",
"\n"
]
},
{
"cell_type": "code",
"metadata": {
"id": "gmzqwpbdj1gM",
"colab_type": "code",
"outputId": "88cfed6c-99ff-4bd6-b0cb-802d2c679be0",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 235
}
},
"source": [
"## Demo 1-2. Display meta-data file\n",
"from pandas import read_csv\n",
"meta = read_csv('%s%smeta.csv'%(dir_origin, dir_dataset));\n",
"meta"
],
"execution_count": 2,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/html": [
"
\n", " | subject_name | \n", "file_name | \n", "n_trials | \n", "age_in_month | \n", "sex | \n", "
---|---|---|---|---|---|
0 | \n", "animal1 | \n", "epochs_animal1.set | \n", "589 | \n", "4 | \n", "Male | \n", "
1 | \n", "animal2 | \n", "epochs_animal2.set | \n", "557 | \n", "4 | \n", "Male | \n", "
2 | \n", "animal3 | \n", "epochs_animal3.set | \n", "349 | \n", "4 | \n", "Male | \n", "
3 | \n", "animal4 | \n", "epochs_animal4.set | \n", "493 | \n", "4 | \n", "Female | \n", "
4 | \n", "animal5 | \n", "epochs_animal5.set | \n", "956 | \n", "5 | \n", "Male | \n", "
5 | \n", "animal6 | \n", "epochs_animal6.set | \n", "959 | \n", "4 | \n", "Male | \n", "
get_eeg_data()
is defined below. To maintain original dimensionality order (cf. channel-time-trial in EEGLAB of Matlab), np.moveaxis()
was applied. \n"
]
},
{
"cell_type": "code",
"metadata": {
"id": "cJ9x13tYj1gT",
"colab_type": "code",
"outputId": "a327bc87-5ed4-41a2-cd3c-7d2a5db5af87",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 105
}
},
"source": [
"# Demo 1-3. Data loading and dimensionality check\n",
"from mne.io import read_epochs_eeglab as loadeeg\n",
"import numpy as np\n",
"def get_eeg_data(dataset_idx, CAL=1e-6):\n",
" f_name = '%s%srawdata/%s'%(dir_origin,dir_dataset,meta.file_name[dataset_idx])\n",
" EEG = loadeeg(f_name, verbose=False)\n",
" EEG.data = np.moveaxis(EEG.get_data(), 0, 2) / CAL\n",
" return EEG, f_name\n",
"\n",
"# Data loading\n",
"EEG, f_name = get_eeg_data( dataset_idx = 1 ) # idx = from 0 to 5 (1st to 6th)\n",
"\n",
"# Dimension check\n",
"print('File name : [%s]'%f_name)\n",
"print('File contains [%d channels, %4d time points, %3d trials]'%(EEG.data.shape))"
],
"execution_count": 3,
"outputs": [
{
"output_type": "stream",
"text": [
"/usr/local/lib/python3.6/dist-packages/numba/decorators.py:146: RuntimeWarning: Caching is not available when the 'parallel' target is in use. Caching is now being disabled to allow execution to continue.\n",
" warnings.warn(msg, RuntimeWarning)\n"
],
"name": "stderr"
},
{
"output_type": "stream",
"text": [
"File name : [/content/dataset/rawdata/epochs_animal2.set]\n",
"File contains [38 channels, 5200 time points, 557 trials]\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "86Njkq2-Hnl4",
"colab_type": "text"
},
"source": [
"Note that voltage calibration value (*CAL*) is set to 1e-6 in 0.11.0 version of [eeglab.py](https://github.com/mne-tools/mne-python/blob/master/mne/io/eeglab/eeglab.py])\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Xo_Pet6cj1ge",
"colab_type": "text"
},
"source": [
"### 1-4. Getting channel coordinates\n",
"\n",
"The EEG data are recorded with 38 electrode array, and two of the electrodes were used as ground and reference site - total 36 channel data are available. Coordinates of each electrode are in the file [data/montage.csv], and can be accessed and visualized by following script.\n"
]
},
{
"cell_type": "code",
"metadata": {
"id": "ii7vy4Jgj1gf",
"colab_type": "code",
"outputId": "27552f7c-87a4-42a5-ceec-63a53d11c6c4",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 354
}
},
"source": [
"# Demo 1-4. Import montage matrix\n",
"from matplotlib import pyplot as plt; plt.style.use('ggplot')\n",
"plt.rcParams['font.family']='sans-serif'\n",
"plt.rcParams['text.color']='black'; plt.rcParams['axes.labelcolor']='black'\n",
"plt.rcParams['xtick.color']='black' ;plt.rcParams['ytick.color']='black'\n",
"\n",
"from pandas import read_csv\n",
"montage_table = read_csv('%s%smontage.csv'%(dir_origin, dir_dataset))\n",
"elec_montage = np.array(montage_table)[:, 1:3]\n",
"\n",
"# Open figure handle\n",
"plt.figure(figsize=(4.5,5))\n",
"\n",
"# Plot EEG channels position (total 36 channels)\n",
"plt.plot( elec_montage[:36,0], elec_montage[:36,1], 'go' )\n",
"for chanIdx in range(36):\n",
" plt.text( elec_montage[chanIdx,0], elec_montage[chanIdx,1]+.2,\n",
" EEG.info['ch_names'][chanIdx][5:], ha='center', fontsize=8 )\n",
"\n",
"# Plot Ref/Gnd electrode position\n",
"plt.plot( elec_montage[36:,0], elec_montage[36:,1], 'rs' )\n",
"plt.text(0, 0.0, 'BP', fontsize=12, weight='bold', ha='center',va='center');\n",
"plt.text(0,-4.2, 'LP', fontsize=12, weight='bold', ha='center',va='center');\n",
"\n",
"plt.xlabel('ML coordinate (mm)'); plt.ylabel('AP coordinate (mm)');\n",
"plt.title('2D electrode montage');\n",
"plt.legend(['Active','Ref/Gnd'], loc='upper right', facecolor='w');\n",
"plt.gca().set_facecolor((1,1,1))\n",
"plt.grid(False); plt.axis([-5.5, 6.5, -7, 6])\n",
"\n",
"# Draw head boundary\n",
"def get_boundary():\n",
" return np.array([\n",
" -4.400, 0.030, -4.180, 0.609, -3.960, 1.148, -3.740, 1.646, -3.520, 2.105, -3.300, 2.525, -3.080, 2.908, -2.860, 3.255,\n",
" -2.640, 3.566, -2.420, 3.843, -2.200, 4.086, -1.980, 4.298, -1.760, 4.4799, -1.540, 4.6321, -1.320, 4.7567, -1.100, 4.8553,\n",
" -0.880, 4.9298, -0.660, 4.9822, -0.440, 5.0150, -0.220, 5.0312,0, 5.035, 0.220, 5.0312, 0.440, 5.0150, 0.660, 4.9822,\n",
" 0.880, 4.9298, 1.100, 4.8553, 1.320, 4.7567, 1.540, 4.6321,1.760, 4.4799, 1.980, 4.2986, 2.200, 4.0867, 2.420, 3.8430,\n",
" 2.640, 3.5662, 2.860, 3.2551, 3.080, 2.9087, 3.300, 2.5258,3.520, 2.1054, 3.740, 1.6466, 3.960, 1.1484, 4.180, 0.6099,\n",
" 4.400, 0.0302, 4.400, 0.0302, 4.467, -0.1597, 4.5268, -0.3497,4.5799, -0.5397, 4.6266, -0.7297, 4.6673, -0.9197, 4.7025, -1.1097,\n",
" 4.7326, -1.2997, 4.7579, -1.4897, 4.7789, -1.6797, 4.7960, -1.8697,4.8095, -2.0597, 4.8199, -2.2497, 4.8277, -2.4397, 4.8331, -2.6297,\n",
" 4.8366, -2.8197, 4.8387, -3.0097, 4.8396, -3.1997, 4.8399, -3.3897,4.8384, -3.5797, 4.8177, -3.7697, 4.7776, -3.9597, 4.7237, -4.1497,\n",
" 4.6620, -4.3397, 4.5958, -4.5297, 4.5021, -4.7197, 4.400, -4.8937,4.1800, -5.1191, 3.9600, -5.3285, 3.7400, -5.5223, 3.5200, -5.7007,\n",
" 3.3000, -5.8642, 3.0800, -6.0131, 2.8600, -6.1478, 2.6400, -6.2688,2.4200, -6.3764, 2.2000, -6.4712, 1.9800, -6.5536, 1.7600, -6.6241,\n",
" 1.5400, -6.6833, 1.3200, -6.7317, 1.1000, -6.7701, 0.8800, -6.7991,0.6600, -6.8194, 0.4400, -6.8322, 0.2200, -6.8385, 0, -6.840,\n",
" -0.220, -6.8385, -0.440, -6.8322, -0.660, -6.8194, -0.880, -6.7991,-1.100, -6.7701, -1.320, -6.7317, -1.540, -6.6833, -1.760, -6.6241,\n",
" -1.980, -6.5536, -2.200, -6.4712, -2.420, -6.3764, -2.640, -6.2688,-2.860, -6.1478, -3.080, -6.0131, -3.300, -5.8642, -3.520, -5.7007,\n",
" -3.740, -5.5223, -3.960, -5.3285, -4.180, -5.1191, -4.400, -4.89370,-4.5021, -4.7197, -4.5958, -4.5297, -4.6620, -4.3397, -4.7237, -4.1497,\n",
" -4.7776, -3.9597, -4.8177, -3.7697, -4.8384, -3.5797, -4.8399, -3.3897,-4.8397, -3.1997, -4.8387, -3.0097, -4.8367, -2.8197, -4.8331, -2.6297,\n",
" -4.8277, -2.4397, -4.8200, -2.2497, -4.8095, -2.0597, -4.7960, -1.8697,-4.7789, -1.6797, -4.7579, -1.4897, -4.7326, -1.2997, -4.7025, -1.1097,\n",
" -4.6673, -0.9197, -4.6266, -0.7297, -4.5799, -0.5397, -4.5268, -0.3497,-4.4670, -0.1597, -4.4000, 0.03025]).reshape(-1, 2)\n",
"boundary = get_boundary()\n",
"for p in range(len(boundary)-1): plt.plot(boundary[p:p+2,0],boundary[p:p+2,1], 'k-')\n",
"#plt.axis((-5))\n",
"plt.gcf().savefig(dir_fig+'fig1-4.png', format='png', dpi=300);"
],
"execution_count": 4,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\nsa2gxaQAAAAASUVORK5CYII=\n",
"text/plain": [
"