def load_data(dataset, norm='none'): datadir = './data' if os.name == 'posix' else 'd:\\sleep\\data' sleep = sleeploader.SleepDataset(datadir) sleep.load_object(str(dataset)) data, target, groups = sleep.get_all_data(groups=True) target[target == 4] = 3 target[target == 5] = 4 target[target > 5] = 0 if norm is 'all': print('Normalizing {} over whole set\n...'.format(dataset), end='') data = tools.normalize(data) elif norm == 'none': pass elif norm == 'group': print('Normalizing {} per patient\n...'.format(dataset), end='') data = tools.normalize(data, groups=groups) else: print('Normalizing {} with reference {}\n...'.format(dataset, norm), end='') compdata, _, _ = load_data(norm, norm='none') print('...', end='') data = tools.normalize(data, comp=compdata) target = keras.utils.to_categorical(target) return deepcopy(data), deepcopy(target), deepcopy(groups)
def load_data(datadir): sleep = sleeploader.SleepDataset(datadir) sleep.load_object() data, target, groups = sleep.get_all_data(groups=True) data = tools.normalize(data , groups=groups) # target[target==5] = 4 target[target==8] = 0 target = keras.utils.to_categorical(target) return data, target, groups
def prepare(datadir='edfx'): """ Download, prepare and save the EDF database """ download_edfx(datadir) convert_hypnograms(datadir) sleep = sleeploader.SleepDataset(datadir) sleep.load() truncate_eeg(sleep) return sleep
def load_data(datadir, filename='sleepdata', norm=None): sleep = sleeploader.SleepDataset(datadir) if not sleep.load_object(filename): sleep.load() data, target, groups = sleep.get_all_data(groups=True) del sleep gc.collect() target[target == 4] = 3 # S3+S4 = SWS = 3 target[target == 5] = 4 # REM = 4 target[target == 8] = 0 # Movement = 0 return data, target, groups
def load_data(dataset): datadir = './data' if os.name == 'posix' else 'd:\\sleep\\data' sleep = sleeploader.SleepDataset(datadir) sleep.load_object(str(dataset)) data, target, groups = sleep.get_all_data(groups=True) data = tools.normalize(data) # data = zscore(data,1) target[target==4] = 3 target[target==5] = 4 target[target>5] = 0 target = keras.utils.to_categorical(target) return data, target, groups
def load_data(tsinalis=False): sleep = sleeploader.SleepDataset(datadir) gc.collect() # sleep.load() # sleep.save_object() sleep.load_object() data, target, groups = sleep.get_all_data(groups=True) data = tools.normalize(data) target[target == 4] = 3 target[target == 5] = 4 target[target == 8] = 0 target = keras.utils.to_categorical(target) return deepcopy(data), deepcopy(target), deepcopy(groups)
def load_data(dataset): sleep = sleeploader.SleepDataset(datadir) sleep.load_object(dataset) data, target, groups = sleep.get_all_data(groups=True) data = data[0:5000] target = target[0:5000] groups = groups[0:5000] data = tools.normalize(data, groups=groups) target[target == 4] = 3 target[target == 5] = 4 target[target > 5] = 0 target = keras.utils.to_categorical(target) print(np.unique(groups)) return deepcopy(data), deepcopy(target), deepcopy(groups)
def load_data(dataset): datadir = './data' if os.name == 'posix' else 'd:\\sleep\\data' sleep = sleeploader.SleepDataset(datadir) sleep.load_object(str(dataset)) data, target, groups = sleep.get_all_data(groups=True) data = tools.normalize(data) target[target == 4] = 3 target[target == 5] = 4 target[target == 6] = 0 idx = np.where(target == 8)[0] data = np.delete(data, idx, axis=0) groups = np.delete(groups, idx) target = np.delete(target, idx) target = keras.utils.to_categorical(target) return data, target, groups
def load_data(): global sleep global data sleep = sleeploader.SleepDataset(datadir) if 'data' in vars(): del data; gc.collect() sleep.load_object() data, target, groups = sleep.get_all_data(groups=True) data = tools.normalize(data) target[target==4] = 3 target[target==5] = 4 target[target==8] = 0 target = keras.utils.to_categorical(target) return data, target, groups
# prepare dataset if it does not exist if not os.path.isfile(os.path.join(datadir, 'sleepdata.pkl')): edfx_database.download_edfx(datadir) edfx_database.convert_hypnograms(datadir) channels = { 'EEG': 'EEG FPZ-CZ', 'EMG': 'EMG SUBMENTAL', 'EOG': 'EOG HORIZONTAL' } # set channels that are used references = { 'RefEEG': False, 'RefEMG': False, 'RefEOG': False } # we do not set a reference, because the data is already referenced sleep = sleeploader.SleepDataset(datadir) # use float16 is you have problems with memory or a small hard disk. Should be around 2.6 GB for float32. sleep.load(channels=channels, references=references, verbose=0, dtype=np.float16) edfx_database.truncate_eeg(sleep) # if the pickle file already exist, just load that one. else: sleep = sleeploader.SleepDataset(datadir) sleep.load_object( ) # load the prepared files. Should be around 2.6 GB for float32 # load data data, target, groups = sleep.get_all_data(groups=True)
""" Created on Fri Jul 28 15:28:04 2017 @author: Simon """ #create sleepdata objects if __name__ == '__main__': #%% import sleeploader import tools import numpy as np import gc #%% sleep = sleeploader.SleepDataset('C:\sleep\cshs50') sleep.load_object() # sleep.save_object() data, target, groups = sleep.get_all_data(groups=True) feats_eeg = tools.feat_eeg(data[:,:,0]) feats_emg = tools.feat_emg(data[:,:,1]) feats_eog = tools.feat_eog(data[:,:,2]) np.save('target.npy', target) np.save('groups.npy', groups) np.save('feats_eeg.npy', feats_eeg) np.save('feats_eog.npy', feats_eog) np.save('feats_emg.npy', feats_emg) del data, target, groups del feats_eeg, feats_emg, feats_eog del sleep; gc.collect()
# -*- coding: utf-8 -*- """ Created on Fri Jul 28 14:15:31 2017 @author: Simon """ import sleeploader import imp imp.reload(sleeploader) if __name__ == '__main__': sleep = sleeploader.SleepDataset('D:/sleep/isruc') channels = { 'EEG': ['C4-A1', 'C4-M1'], 'EMG': 'X1', 'EOG': ['LOC-A2', 'E1-M2'] } references = {'RefEEG': False, 'RefEMG': False, 'RefEOG': False} sleep.load(channels=channels) sleep.save_object()
def create_object(datadir): sleep = sleeploader.SleepDataset(datadir) sleep.load() sleep.save_object()