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)
Esempio n. 2
0
    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
Esempio n. 3
0
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
Esempio n. 4
0
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
Esempio n. 5
0
    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
Esempio n. 10
0
    # 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)
Esempio n. 11
0
"""
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()
Esempio n. 12
0
# -*- 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()
Esempio n. 13
0
def create_object(datadir):
    sleep = sleeploader.SleepDataset(datadir)
    sleep.load()
    sleep.save_object()