Exemple #1
0
@author: guime
"""

import HFB_process as hf
import cifar_load_subject as cf
import numpy as np
import mne
import matplotlib.pyplot as plt
import pandas as pd
import scipy.stats as stats
import seaborn as sns
from pathlib import Path, PurePath

#%% Load visual table
path = cf.cifar_ieeg_path()
fname = 'cross_subjects_visual_BP_channels.csv'
fpath = path.joinpath(fname)
df = pd.read_csv(fpath)

#%%

columns = ['Id', 'visual', 'R', 'F', 'P']
chan_table = pd.DataFrame(columns=columns)
subjects = df['subject_id'].unique().tolist()
chan_table['Id'] = subjects
for sub_id in subjects:
    chan_table['visual'].loc[chan_table['Id'] == sub_id] = len(
        df.loc[df['subject_id'] == sub_id])
    sub_df = df.loc[df['subject_id'] == sub_id]
    for cat in ['R', 'F', 'P']:
Exemple #2
0
    
    home = Path('~').expanduser()
    lionel_path = home.joinpath('HFB_data', sub_id)
    os.mkdir(lionel_path)
    
    fname = sub_id + '_visual_HFB_all_categories.mat'
    fpath = datadir.joinpath(fname)
    HFB_visual = loadmat(fpath)
    HFB_visual_path = lionel_path.joinpath(fname)
    savemat(HFB_visual_path, HFB_visual)
    # shutil(HFB_visual_path, lionel_path)
    
    fname = sub_id + '_BP_montage_HFB_raw.fif'
    fpath = datadir.joinpath(fname)
    HFB  = mne.io.read_raw_fif(fpath, preload=True)  
    dfelec = subject.df_electrodes_info()
    X = HFB.copy().get_data()
    raw_HFB = sub_id + '_BP_montage_HFB_raw.mat'
    raw_HFB_path = lionel_path.joinpath(raw_HFB)
    savemat(raw_HFB_path, dict(data=X) )
    elec_file = 'electrodes_info.csv'
    elec_path = lionel_path.joinpath(elec_file)
    dfelec.to_csv(elec_path, index=False)
    
path = cf.cifar_ieeg_path()
fname = 'visual_channels_BP_montage.csv'
fpath = path.joinpath(fname)
HFB_path = home.joinpath('HFB_data')
shutil.copy(fpath, HFB_path)

Exemple #3
0
# -Check that there are output visual_data X is correct with HFB_visual (i.e. check that
# permutation works)
# - Create a module for category specific electrodes
# - Rearrange HFB module consequently
#%%

subjects = [
    'AnRa', 'AnRi', 'ArLa', 'BeFe', 'DiAs', 'FaWa', 'JuRo', 'NeLa', 'SoGi'
]
proc = 'preproc'
sfreq = 250
tmin_crop = -0.5
tmax_crop = 1.75
fname = 'visual_channels_BP_montage.csv'
ieeg_path = cf.cifar_ieeg_path(home='~')
visual_chan_table_path = ieeg_path.joinpath(fname)
df = pd.read_csv(visual_chan_table_path)
df_sorted = pd.DataFrame(columns=df.columns)

ts = [0] * len(subjects)
for s in range(len(subjects)):
    sub_id = subjects[s]
    subject = cf.Subject(name=sub_id)
    datadir = subject.processing_stage_path(proc=proc)
    visual_chan = subject.pick_visual_chan()
    HFB = hf.visually_responsive_HFB(sub_id=sub_id)
    ts[s], time = fun.ts_all_categories(HFB,
                                        tmin_crop=tmin_crop,
                                        tmax_crop=tmax_crop)
    df_sorted = df_sorted.append(