diff --git a/kftools/data/fetchers.py b/kftools/data/fetchers.py index 198c442..5cb7ede 100644 --- a/kftools/data/fetchers.py +++ b/kftools/data/fetchers.py @@ -1,8 +1,8 @@ +from curses import raw import os,sys,glob,shutil,numpy as np, pandas as pd import requests, zipfile,gdown from datetime import datetime -#from eegnb import DATA_DIR - +from mne.io.snirf import read_raw_snirf from kftools import data # dictionary format : kftools -> type -> experiments -> site -> subjects @@ -32,10 +32,10 @@ def load_info(info_file=None): def fetch_file(data_dir=None,info_file=None,site='snic',task='ft',subid='sub001',sesid='ses01', - filetype='kp-nii-evs', download_method='gdown'): + filetype='kp-nii-evs', download_method='gdown', load_raw=True): """ - Pull selected data files. + Pull selected data files and load into dictionary as mne.raw objects Usage: ------ @@ -50,8 +50,8 @@ def fetch_file(data_dir=None,info_file=None,site='snic',task='ft',subid='sub001' """ - - + raw_dict = {} # dictionary containing mne raw objects + if 'NoneType' in str(type(data_dir)): data_dir = os.path.expanduser('~/.kftools') if not os.path.isdir(data_dir): os.makedirs(data_dir) @@ -66,12 +66,14 @@ def fetch_file(data_dir=None,info_file=None,site='snic',task='ft',subid='sub001' assert eval(k) in df_info[k].values idxstoget = df_info.query(qstr).index.values - for idx in idxstoget: + for n, idx in enumerate(idxstoget): dlcode,fname = df_info.loc[idx][['dlcode', 'fname']].values fname = os.path.join(data_dir, fname) if not os.path.isfile(fname): pull_file(dlcode,fname,download_method) - + if load_raw and 'snf' in filetype: + raw_dict[n] = read_raw_snirf(fname) + return raw_dict def pull_file(dlcode,destination,download_method): diff --git a/kftools/data/info.txt b/kftools/data/info.txt index bff2efb..b7fbb19 100644 --- a/kftools/data/info.txt +++ b/kftools/data/info.txt @@ -21,9 +21,9 @@ snic_sub006_reo_ses02_1116-1655_kp-nii-hbo.nii.gz 1v6sbXiDtELiidKeJlOqtT1L5Rdmyp snic_sub006_reo_ses02_1116-1655_kp-nii-hbr.nii.gz 1kOI6GiljhcqeeSzbnLmAKFFOT1UHeN-M snic_sub006_reo_ses03_1117-1740_kp-nii-hbo.nii.gz 1UnXDo19JFth23X7VdDVM04pftMLbFCXy snic_sub006_reo_ses03_1117-1740_kp-nii-hbr.nii.gz 1MmrtuMry25o7yJEtJ-rFRLA1MCUxUyZM -snic_sub006_reo_ses01_1101-1810_kp-snf-hmb.snirf 11fZdBlJDfAtPNtneSat8b4H3I-BxE14l +snic_sub006_reo_ses01_1101-1810_kp-snf-hbm.snirf 11fZdBlJDfAtPNtneSat8b4H3I-BxE14l snic_sub006_reo_ses01_1101-1810_kp-snf-mom.snirf 1Av65sSi-PlVdPcfyZ0u37WrsN1pHLORR -snic_sub006_reo_ses02_1116-1655_kp-snf-hmb.snirf 1mk3u81bo676Sk4j1w8Qi36DxHiUF8u4D +snic_sub006_reo_ses02_1116-1655_kp-snf-hbm.snirf 1mk3u81bo676Sk4j1w8Qi36DxHiUF8u4D snic_sub006_reo_ses02_1116-1655_kp-snf-mom.snirf 1mOsq2wWPgXJFJx-bNpBrTzn5yDF1YYuX -snic_sub006_reo_ses03_1117-1740_kp-snf-hmb.snirf 1TPqZbkqqHHAq68A6GlmrB3NyyY1dNZ2h +snic_sub006_reo_ses03_1117-1740_kp-snf-hbm.snirf 1TPqZbkqqHHAq68A6GlmrB3NyyY1dNZ2h snic_sub006_reo_ses03_1117-1740_kp-snf-mom.snirf 1ff4pc5WRnqwL9w18vzetl5GHDFZ5DuTu