def get_data(data_files): data_ranges = [] data_names = [] new_data_files = [] row_ranges = [] headers = [] for df in data_files: if type(df) == list: df, ranges = df else: ranges = None # read the data file, and don't try to convert column 0 -- the contour names -- # to anything other than a string. data = datafile.DataFile(df, skip_empty = False, type_dict = {0:str}) header, rows = data.get_header_and_data() headers.append(header) if ranges is None: data_ranges.append(rows) data_names.append(path.path(df).namebase) new_data_files.append(df) if header is None: start = 0 else: start = 1 row_ranges.append(range(1+start, len(data.data)+start)) else: for low, high, name in ranges: try: # recall that low, high give an inclusive, one-indexed range... data_ranges.append(data.data[low-1:high]) except: raise ValueError('Cannot get row range (%d, %d) from data file "%s" -- not enough rows?') data_names.append(name) new_data_files.append(df) row_ranges.append(range(low, high+1)) return headers, data_ranges, data_names, new_data_files, row_ranges
def read_files(files, data_column): names = [] data_out = [] for df in files: names.append(path.path(df).namebase) data = datafile.DataFile(df, skip_empty=False, type_dict={0: str}) header, rows = data.get_header_and_data() data_out.append(numpy.array([row[data_column] for row in rows])) return names, data_out
import numpy from celltool.utility.path import path import celltool.utility.datafile as datafile import matplotlib.image as mpimg from PIL import Image import glob import os t = 0.1 bins = numpy.arange(0, 4, t) """Sets up some paths...""" parent_dir = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/flashes/lobula/' parent_path = path( 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/flashes/lobula/') """I'll explain this in person, ignore through line 54.""" header, rows = datafile.DataFile(parent_path / 'directories.csv').get_header_and_data() dir_list = [parent_dir + '/' + row[1] for row in rows] path_list = [parent_path / row[1] for row in rows] for directory, p in zip(dir_list[:], path_list[:]): print(directory) plot_dir = directory + '/plots/' print(plot_dir) image_dir1 = directory + '/RGECO' print(image_dir1) """This IDs and sorts image file names for one channel.""" imagefiles1 = glob.glob(os.path.join(image_dir1, '*tif'))
unmap_mdir = mlb_mdir + '/unmappable/' #input flashes directory name flashes_dir = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Mi1/10s_flashes/' f_mdir = flashes_dir + '/measurements/' f_pdir = flashes_dir + '/plots/' # #input gratings directory name # gratings_dir = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Mi1/gratings/' # g_mdir = gratings_dir + '/measurements/' # g_pdir = gratings_dir +'/plots/' for br in brain_regions[:]: #import flash ER and RGECO data w/ mapped RF centers and separate headers and rows from each dataset header, rows = datafile.DataFile(f_mdir + 'mapped/newavg_flash-' + br + '-ER210.csv').get_header_and_data() flash_ER = np.asarray(rows) mapf_ER = np.asarray(flash_ER[:, 6:], dtype='float') header, rows = datafile.DataFile(f_mdir + 'mapped/newavg_flash-' + br + '-RGECO.csv').get_header_and_data() flash_CYT = np.asarray(rows) mapf_CYT = np.asarray(flash_CYT[:, 6:], dtype='float') print(len(mapf_CYT)) # #import flash ER and RGECO data w/ unmapped RF centers and separate headers and rows from each dataset # header,rows = datafile.DataFile(f_mdir+'unmapped/newavg_flash-'+br+'-ER210.csv').get_header_and_data() # flash_ER = np.asarray(rows) # umapf_ER = np.asarray(flash_ER[:,6:],dtype = 'float') # header,rows = datafile.DataFile(f_mdir+'unmapped/newavg_flash-'+br+'-RGECO.csv').get_header_and_data()
T = numpy.arange(0, 5, t) #5 for flashes, 31 for gratings threshold = 0.14 #0.6 for flashes; 0.13 for sum>0 threshold_inverted = -0.1 colors = ['#9900cc', '#00cc66', '#808080'] alphas = [1, 0.6] brain_regions = ['M1', 'M5', 'M9-M10'] directory = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Mi1/2s_flashes/' plot_dir = directory + '/plots/wo_screen' m_dir = directory + '/measurements/' for br in brain_regions[:]: header, rows = datafile.DataFile(m_dir + 'average_responses-' + br + '-RGECO.csv').get_header_and_data() R = numpy.asarray(rows) R = numpy.asarray(R[:, 6:], dtype='float') print(len(R) / 2) header, rows = datafile.DataFile(m_dir + 'average_responses-' + br + '-ER210.csv').get_header_and_data() ER = numpy.asarray(rows) ER = numpy.asarray(ER[:, 6:], dtype='float') OFF = [] ON = [] OFFer = [] ONer = [] OFF_inverted = [] ON_inverted = []
to_unmap_axons=[0,1,2,3,4,5,24,28,95,107,112,113,114,115,116,\ 117,118,119,120,121,122,123,124,125,126,127,128,129,\ 137,138,143,144,145,146,147,148,240,254,255,262,263,264] to_map_axons = [45, 47, 51, 60, 64, 69, 118, 119, 120, 121, 122, 123, 206, 209] to_unmap_indexes = [to_unmap_M1, to_unmap_M5, to_unmap_axons] to_map_indexes = [to_map_M1, to_map_M5, to_map_axons] for br, tounmap, tomap in zip(brain_regions[:], to_unmap_indexes[:], to_map_indexes[:]): print('BRAIN REGION ' + br) #______SCREEN RF CENTERS____________ #import MLB data w/ mapped and unmapped RF centers and separate headers and rows from each dataset header, rows = datafile.DataFile(map_mdir + 'RF_centers-' + br + '.csv').get_header_and_data() #mapped mapRF = np.asarray(rows) header, rows = datafile.DataFile(unmap_mdir + 'RF_centers-' + br + '.csv').get_header_and_data() #unmapped unmapRF = np.asarray(rows) print('RF centers total: ' + str(len(mapRF) + len(unmapRF))) #import flash ER and RGECO data w/ mapped RF centers and separate headers and rows from each dataset headerf, rows = datafile.DataFile(f_mdir + '/mapped/average_responses-' + br + '-ER210.csv').get_header_and_data() fmapER = np.asarray(rows) headerf, rows = datafile.DataFile(f_mdir + '/mapped/average_responses-' + br + '-RGECO.csv').get_header_and_data() fmapCYT = np.asarray(rows) #import flash ER and RGECO data w/ unmapped RF centers and separate headers and rows from each dataset
import os import shutil from celltool.utility.path import path import celltool.utility.datafile as datafile stim = '10s_flashes' """Set up path""" directory = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/medulla/' + stim parent_dir = path(directory) directories = os.listdir(parent_dir) t_dir = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/medulla/google_drive/' target_dir = path(t_dir) dirs = os.listdir(target_dir) header, rows = datafile.DataFile(parent_dir / 'directories.csv').get_header_and_data() path_list = [parent_dir / row[1] for row in rows] ##0) to rename files (optional) # for row in directories[1:19]: # prev=os.path.join(directory+row,'mask-M3-M4.tif') # new = os.path.join(directory+row,'mask-M2-M5.tif') # os.rename(prev,new) # 1) CREATE DIRECTORIES FOR GOOGLE DRIVE FOLDER # i=1 # for row in rows[:]: # targetname=row[1][2:13]+'-z'+str(i)
out_mdir = MLB_dir + '/measurements/2s' map_mdir = out_mdir + '/mappable/' unmap_mdir = out_mdir + '/unmappable/' plot_dir = MLB_dir + '/plots/2s' map_pdir = plot_dir + '/mappable/' unmap_pdir = plot_dir + '/unmappable/' for br in brain_regions[:]: print('BRAIN REGION ' + str(br)) #RGECO moving light bars data OUT = [] #for ROIS w/ mappable RFs OUT2 = [] #for ROIs w/ unmappable RFs header, rows = datafile.DataFile(out_mdir + '/average_responses-' + br + '.csv').get_header_and_data() R = numpy.asarray(rows) print('mlb count: ' + str(len(R) / 4)) #RGECO flash responses data norm_cytf = [] #empty list for RFs pointing at the visual screen abn_cytf = [ ] #empty list for RFs not pointing at the screen or RFs having weak responses flash_header, rows = datafile.DataFile(flash_mdir + '/average_responses-' + br + '-RGECO.csv').get_header_and_data() flash_cyt = numpy.asarray(rows) print('flash count: ' + str(len(flash_cyt) / 2)) #ER210 flash responses data norm_ERf = [
subfont = 12 supfont = 16 xo = numpy.arange(0,240,0.3) x = numpy.arange(0,241,30) xti = numpy.arange(0,241,30) #t = 0.2855 #bins = numpy.arange(0,29.95,t) brain_regions = ['Lo2','Lo4'] color = ['#9900cc','#00cc66','#808080'] parent_dir = 'C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/gratings/lobula/' parent_path = path('C:/Users/vymak_i7/Desktop/New_ER/Screen/Tm3/gratings/lobula/') header,rows = datafile.DataFile(parent_path/'directories.csv').get_header_and_data() parent_mdir = parent_dir+'/measurements/' dir_list = [parent_dir+'/'+row[1] for row in rows] path_list = [parent_path/row[1] for row in rows] for br in brain_regions[:]: out = [] out2 = [] #import gratings ER and RGECO data and separate headers and rows from each dataset header,rows = datafile.DataFile(parent_mdir+'all_responses-'+br+'-ER210.csv').get_header_and_data() out = numpy.asarray(rows) out = numpy.asarray(out[:,3:],dtype = 'float')