Beispiel #1
0
def get_CGM_data(dir_path):
    '''Extract raw data from the file.'''
    lst = dir_list_gen(dir_path, 'TAB')
    #for kn in range(len(lst)):
    out = []
    with open(lst[0], 'rb') as f:
        reader = csv.reader(f, delimiter='\t')
        for row in reader:
            out.append(row)
        out = [[row[i] for row in out] for i in range(len(out[0]))]
    timestamps, values, device_name, device_id = \
     CGM_data_extraction(out)
    return numpy.vstack((numpy.array(timestamps), numpy.array(values))), \
            device_name, device_id
def get_CGM_data(dir_path):
    '''Extract raw data from the file.'''
    lst = dir_list_gen(dir_path,'TAB')
    #for kn in range(len(lst)):
    out = []
    with open(lst[0],'rb') as f:
        reader = csv.reader(f, delimiter='\t')
        for row in reader:
            out.append(row)
        out = [[row[i] for row in out] for i in range(len(out[0]))]  
    timestamps, values, device_name, device_id = \
     CGM_data_extraction(out)
    return numpy.vstack((numpy.array(timestamps), numpy.array(values))), \
            device_name, device_id
def get_BG_data(dir_path):
    '''Extract raw data from the file.'''
    lst = dir_list_gen(dir_path,'CSV')
    #for kn in range(len(lst)):
    out = []
    with open(lst[0],'rb') as f:
        reader = csv.reader(f, delimiter=';')
        for row in reader:
            out.append(row)
        print 'get_BG_data:', len(out[0])
        out = [[row[i] for row in out] for i in range(len(out[0]))]  
    timestamps, bolus, basal, bg, carbs, pen_doses = \
     BG_data_extraction(out)
    print 'length of timestamps:',  len(timestamps)
    print 'length of bolus:',  len(bolus)
    return numpy.vstack((numpy.array(timestamps), numpy.array(bolus))), \
           numpy.vstack((numpy.array(timestamps), numpy.array(basal))), \
           numpy.vstack((numpy.array(timestamps), numpy.array(bg))), \
           numpy.vstack((numpy.array(timestamps), numpy.array(carbs))), \
           numpy.vstack((numpy.array(timestamps), numpy.array(pen_doses))) \

           
    
Beispiel #4
0
def import_module_xls(dir_path):
    '''Reads in data from an xls spreadsheet and 
    returns the relavent data in lists.'''
    # Initialise return values
    bolusdates = []
    bolustimes = []
    bolusdata = []
    basaldates = []
    basaltimes = []
    basaldata = []
    basaladju = []
    basaladjl = []
    bgdates = []
    bgtimes = []
    bgdata = []
    carbsdata = []
    eventsdates = []
    eventstimes = []
    eventsdata = []
    # find the relavent files
    lst = dir_list_gen(dir_path, 'xls')
    for legr in lst:
        book = xlrd.open_workbook(legr)
        sheet_list = book.sheets()
        for pages in range(len(sheet_list)):
            page = book.sheet_by_index(pages)
            n_cols = page.ncols
            n_rows = page.nrows
            temp_sheet = []
            if n_cols > 0 and n_rows > 0:
                for col in range(n_cols):
                    # generate a list of lists to represent the row and column data.
                    temp_sheet.append(
                        page.col_values(col, start_rowx=0, end_rowx=n_rows))
                loc_bolus = index(temp_sheet[0], 'Bolus')
                loc_basal = index(temp_sheet[0], 'Basal')
                loc_bg = index(temp_sheet[0], 'Evaluated results')
                loc_events = index(temp_sheet[0], 'Events')
                # find out which sets of data are on the current sheet.
                section_list = [loc_bolus, loc_basal, loc_bg, loc_events]
                section_names = ['Bolus', 'Basal', 'BG', 'Events']
                index_dict = dict(zip(section_list, section_names))
                revindex_dict = dict(zip(section_names, section_list))
                name = sorted_dict_values(index_dict)
                name_dict = dict(zip(name, [0, 1, 2, 3]))
                revname_dict = dict(zip([0, 1, 2, 3], name))

                if loc_bolus != None:
                    bolusdates, bolustimes, bolusdata = xls_get_bolus(
                        temp_sheet, bolusdates, bolustimes, bolusdata, page,
                        loc_bolus, name_dict, revindex_dict, revname_dict,
                        n_cols)
                if loc_basal != None:
                    basaldates, basaltimes, basaldata, basaladju, basaladjl = \
                        xls_get_basal(
                                temp_sheet, basaldates, basaltimes,
                                basaldata, basaladju, basaladjl,
                                page, loc_basal,
                                name_dict, revindex_dict, revname_dict, n_cols)
                if loc_bg != None:
                    bgdates, bgtimes, bgdata, carbsdata = xls_get_bg(
                        temp_sheet, bgdates, bgtimes, bgdata, carbsdata, page,
                        loc_bg, name_dict, revindex_dict, revname_dict, n_cols)
                if loc_events != None:
                    eventsdates, eventstimes, eventsdata =  xls_get_events(
                                   temp_sheet, eventsdates, eventstimes,
                                   eventsdata, page, loc_events,
                                   name_dict, revindex_dict, \
                                   revname_dict, n_cols)

    bolusstream = xls_condition_input(bolusdates, bolustimes, bolusdata)
    basalstream = xls_condition_input(basaldates, basaltimes, basaldata)
    basaladjustream = xls_condition_input(basaldates, basaltimes, basaladju)
    basaladjlstream = xls_condition_input(basaldates, basaltimes, basaladjl)
    bgstream = xls_condition_input(bgdates, bgtimes, bgdata)
    print 'Carbsdata', type(carbsdata), type(carbsdata[0])
    print carbsdata
    carbstream = xls_condition_input(bgdates, bgtimes, carbsdata)
    eventstream = xls_condition_input(eventsdates,
                                      eventstimes,
                                      eventsdata,
                                      noconv=True)
    return bolusstream, basalstream, basaladjustream, basaladjlstream, \
            bgstream, carbstream, eventstream
def import_module_xls(dir_path):
    '''Reads in data from an xls spreadsheet and 
    returns the relavent data in lists.'''
    # Initialise return values
    bolusdates = []
    bolustimes = []
    bolusdata = []
    basaldates = []
    basaltimes = []
    basaldata = []
    basaladju = []
    basaladjl = []
    bgdates = []
    bgtimes = []
    bgdata = []
    carbsdata = []
    eventsdates = []
    eventstimes = []
    eventsdata = []
    # find the relavent files
    lst = dir_list_gen(dir_path,'xls')
    for legr in lst:
        book = xlrd.open_workbook(legr)
        sheet_list = book.sheets()
        for pages in range(len(sheet_list)):
            page = book.sheet_by_index(pages)
            n_cols = page.ncols
            n_rows = page.nrows
            temp_sheet = []    
            if n_cols > 0 and n_rows > 0:
                for col in range(n_cols):
             # generate a list of lists to represent the row and column data.
                    temp_sheet.append(
                     page.col_values(col, start_rowx=0, end_rowx=n_rows))
                loc_bolus = index(temp_sheet[0],'Bolus')
                loc_basal = index(temp_sheet[0],'Basal')
                loc_bg = index(temp_sheet[0],'Evaluated results')
                loc_events = index(temp_sheet[0],'Events')
                # find out which sets of data are on the current sheet.
                section_list = [loc_bolus, loc_basal, loc_bg, loc_events]
                section_names = ['Bolus', 'Basal', 'BG', 'Events']
                index_dict = dict(zip(section_list, section_names))
                revindex_dict = dict(zip(section_names, section_list))
                name = sorted_dict_values(index_dict)
                name_dict = dict(zip(name, [0, 1, 2, 3]))
                revname_dict = dict(zip([0, 1, 2, 3], name))
 
                if loc_bolus != None:
                    bolusdates, bolustimes, bolusdata = xls_get_bolus(
                                temp_sheet, bolusdates, bolustimes, 
                                bolusdata, page, loc_bolus, name_dict, 
                                revindex_dict, revname_dict, n_cols)   
                if loc_basal != None:
                    basaldates, basaltimes, basaldata, basaladju, basaladjl = \
                        xls_get_basal(
                                temp_sheet, basaldates, basaltimes, 
                                basaldata, basaladju, basaladjl,
                                page, loc_basal, 
                                name_dict, revindex_dict, revname_dict, n_cols)
                if loc_bg != None:
                    bgdates, bgtimes, bgdata, carbsdata = xls_get_bg(
                                temp_sheet, bgdates, bgtimes, bgdata, 
                                carbsdata, page, 
                                loc_bg, name_dict, revindex_dict, 
                                revname_dict, n_cols)
                if loc_events != None:
                    eventsdates, eventstimes, eventsdata =  xls_get_events(
                                   temp_sheet, eventsdates, eventstimes, 
                                   eventsdata, page, loc_events, 
                                   name_dict, revindex_dict, \
                                   revname_dict, n_cols)
    
    bolusstream = xls_condition_input(bolusdates, bolustimes, bolusdata)
    basalstream = xls_condition_input(basaldates, basaltimes, basaldata)
    basaladjustream = xls_condition_input(basaldates, basaltimes, basaladju)
    basaladjlstream = xls_condition_input(basaldates, basaltimes, basaladjl)
    bgstream = xls_condition_input(bgdates, bgtimes, bgdata)
    print 'Carbsdata',type(carbsdata),type(carbsdata[0])
    print carbsdata
    carbstream = xls_condition_input(bgdates, bgtimes, carbsdata) 
    eventstream = xls_condition_input(eventsdates, eventstimes, eventsdata, noconv = True)
    return bolusstream, basalstream, basaladjustream, basaladjlstream, \
            bgstream, carbstream, eventstream