@@ -42,10 +42,10 @@ def __init__(self, dataset, overwrite_analysis_files=False, use_events=False):
42
42
self .trial_window = [- 4 , 8 ] # time, in seconds, around change time to extract portion of cell trace
43
43
self .flash_window = [- 0.5 ,
44
44
0.75 ] # time, in seconds, around stimulus flash onset time to extract portion of cell trace
45
- self .omitted_flash_window = [- 3 ,3 ]
45
+ self .omitted_flash_window = [- 3 , 3 ]
46
46
self .response_window_duration = 0.5 # window, in seconds, over which to take the mean for a given trial or flash
47
47
self .response_window = [np .abs (self .trial_window [0 ]), np .abs (self .trial_window [
48
- 0 ]) + self .response_window_duration ] # time, in seconds, around change time to take the mean response
48
+ 0 ]) + self .response_window_duration ] # time, in seconds, around change time to take the mean response
49
49
self .baseline_window = np .asarray (
50
50
self .response_window ) - self .response_window_duration # time, in seconds, relative to change time to take baseline mean response
51
51
self .stimulus_duration = 0.25 # self.dataset.task_parameters['stimulus_duration'].values[0]
@@ -98,14 +98,16 @@ def generate_trial_response_df(self):
98
98
mean_running_speed = ut .get_mean_in_window (running_speed_trace , self .response_window ,
99
99
self .stimulus_frame_rate )
100
100
df_list .append (
101
- [trial , int (cell_index ), int (cell_specimen_id ), trace , timestamps , mean_response , baseline_response , n_events ,
102
- p_value , sd_over_baseline , mean_running_speed , cell_matching_has_been_run , self .dataset .experiment_id ])
103
- #running_speed_trace, running_speed_timestamps,
104
-
101
+ [trial , int (cell_index ), int (cell_specimen_id ), trace , timestamps , mean_response , baseline_response ,
102
+ n_events ,
103
+ p_value , sd_over_baseline , mean_running_speed , cell_matching_has_been_run ,
104
+ self .dataset .experiment_id ])
105
+ # running_speed_trace, running_speed_timestamps,
105
106
106
107
columns = ['trial' , 'cell' , 'cell_specimen_id' , 'trace' , 'timestamps' , 'mean_response' , 'baseline_response' ,
107
- 'n_events' , 'p_value' , 'sd_over_baseline' , 'mean_running_speed' , 'cell_matching_has_been_run' , 'experiment_id' ]
108
- #'running_speed_trace', 'running_speed_timestamps',
108
+ 'n_events' , 'p_value' , 'sd_over_baseline' , 'mean_running_speed' , 'cell_matching_has_been_run' ,
109
+ 'experiment_id' ]
110
+ # 'running_speed_trace', 'running_speed_timestamps',
109
111
trial_response_df = pd .DataFrame (df_list , columns = columns )
110
112
trial_metadata = self .dataset .trials
111
113
trial_metadata = trial_metadata .rename (columns = {'response' : 'behavioral_response' })
@@ -123,7 +125,6 @@ def save_trial_response_df(self, trial_response_df):
123
125
def get_trial_response_df (self ):
124
126
if self .overwrite_analysis_files :
125
127
print ('overwriting analysis files' )
126
- import h5py
127
128
file_path = self .get_trial_response_df_path ()
128
129
if os .path .exists (file_path ):
129
130
os .remove (file_path )
@@ -132,7 +133,7 @@ def get_trial_response_df(self):
132
133
else :
133
134
if os .path .exists (self .get_trial_response_df_path ()):
134
135
print ('loading trial response dataframe' )
135
- self .trial_response_df = pd .read_hdf (self .get_trial_response_df_path (), key = 'df' , format = 'fixed' )
136
+ self .trial_response_df = pd .read_hdf (self .get_trial_response_df_path (), key = 'df' )
136
137
tdf = self .trial_response_df
137
138
tdf .cell = [int (cell ) for cell in tdf .cell .values ]
138
139
tdf .cell_specimen_id = [int (cell_specimen_id ) for cell_specimen_id in tdf .cell_specimen_id .values ]
@@ -195,15 +196,19 @@ def generate_flash_response_df(self):
195
196
self .stimulus_frame_rate )
196
197
reward_rate = flash_data .reward_rate .values [0 ]
197
198
198
- row .append ([int (cell ), int (cell_specimen_id ), int (flash ), omitted , flash_time , image_name , image_category ,
199
- trace , timestamps , mean_response , baseline_response , n_events , p_value_baseline , sd_over_baseline ,
200
- reward_rate , mean_running_speed , cell_matching_has_been_run , int (self .dataset .experiment_id )])
199
+ row .append (
200
+ [int (cell ), int (cell_specimen_id ), int (flash ), omitted , flash_time , image_name , image_category ,
201
+ trace , timestamps , mean_response , baseline_response , n_events , p_value_baseline , sd_over_baseline ,
202
+ reward_rate , mean_running_speed , cell_matching_has_been_run , int (self .dataset .experiment_id )])
201
203
202
204
flash_response_df = pd .DataFrame (data = row ,
203
205
columns = ['cell' , 'cell_specimen_id' , 'flash_number' , 'omitted' , 'start_time' ,
204
- 'image_name' , 'image_category' , 'trace' , 'timestamps' , 'mean_response' ,
205
- 'baseline_response' , 'n_events' , 'p_value_baseline' , 'sd_over_baseline' ,
206
- 'reward_rate' , 'mean_running_speed' , 'cell_matching_has_been_run' , 'experiment_id' ])
206
+ 'image_name' , 'image_category' , 'trace' , 'timestamps' ,
207
+ 'mean_response' ,
208
+ 'baseline_response' , 'n_events' , 'p_value_baseline' ,
209
+ 'sd_over_baseline' ,
210
+ 'reward_rate' , 'mean_running_speed' , 'cell_matching_has_been_run' ,
211
+ 'experiment_id' ])
207
212
flash_response_df = ut .annotate_flash_response_df_with_pref_stim (flash_response_df )
208
213
flash_response_df = ut .add_repeat_number_to_flash_response_df (flash_response_df , stimulus_table )
209
214
flash_response_df = ut .add_image_block_to_flash_response_df (flash_response_df , stimulus_table )
@@ -238,7 +243,6 @@ def save_flash_response_df(self, flash_response_df):
238
243
def get_flash_response_df (self ):
239
244
if self .overwrite_analysis_files :
240
245
# delete old file or else it will keep growing in size
241
- import h5py
242
246
file_path = self .get_flash_response_df_path ()
243
247
if os .path .exists (file_path ):
244
248
os .remove (file_path )
@@ -247,7 +251,7 @@ def get_flash_response_df(self):
247
251
else :
248
252
if os .path .exists (self .get_flash_response_df_path ()):
249
253
print ('loading flash response dataframe' )
250
- self .flash_response_df = pd .read_hdf (self .get_flash_response_df_path (), key = 'df' , format = 'fixed' )
254
+ self .flash_response_df = pd .read_hdf (self .get_flash_response_df_path (), key = 'df' )
251
255
fdf = self .flash_response_df
252
256
fdf .cell = [int (cell ) for cell in fdf .cell .values ]
253
257
fdf .cell_specimen_id = [int (cell_specimen_id ) for cell_specimen_id in fdf .cell_specimen_id .values ]
@@ -268,7 +272,7 @@ def get_omitted_flash_response_df_path(self):
268
272
def generate_omitted_flash_response_df (self ):
269
273
print ('generating omitted flash response df' )
270
274
stimulus_table = ut .annotate_flashes_with_reward_rate (self .dataset )
271
- stimulus_table = stimulus_table [stimulus_table .omitted == True ]
275
+ stimulus_table = stimulus_table [stimulus_table .omitted == True ]
272
276
row = []
273
277
for cell in self .dataset .cell_indices :
274
278
cell = int (cell )
@@ -304,13 +308,15 @@ def generate_omitted_flash_response_df(self):
304
308
n_events = ut .get_n_nonzero_in_window (trace , response_window , self .ophys_frame_rate )
305
309
reward_rate = flash_data .reward_rate .values [0 ]
306
310
307
- row .append ([int (cell ), int (cell_specimen_id ), int (flash ), omitted , flash_time , image_name , image_category ,
308
- trace , timestamps , mean_response , baseline_response , n_events , p_value , sd_over_baseline ,
309
- reward_rate , cell_matching_has_been_run , int (self .dataset .experiment_id )])
311
+ row .append (
312
+ [int (cell ), int (cell_specimen_id ), int (flash ), omitted , flash_time , image_name , image_category ,
313
+ trace , timestamps , mean_response , baseline_response , n_events , p_value , sd_over_baseline ,
314
+ reward_rate , cell_matching_has_been_run , int (self .dataset .experiment_id )])
310
315
311
316
flash_response_df = pd .DataFrame (data = row ,
312
317
columns = ['cell' , 'cell_specimen_id' , 'flash_number' , 'omitted' , 'start_time' ,
313
- 'image_name' , 'image_category' , 'trace' , 'timestamps' , 'mean_response' ,
318
+ 'image_name' , 'image_category' , 'trace' , 'timestamps' ,
319
+ 'mean_response' ,
314
320
'baseline_response' , 'n_events' , 'p_value' , 'sd_over_baseline' ,
315
321
'reward_rate' , 'cell_matching_has_been_run' , 'experiment_id' ])
316
322
# flash_response_df = ut.annotate_flash_response_df_with_pref_stim(flash_response_df)
@@ -325,7 +331,6 @@ def save_omitted_flash_response_df(self, omitted_flash_response_df):
325
331
def get_omitted_flash_response_df (self ):
326
332
if self .overwrite_analysis_files :
327
333
# delete old file or else it will keep growing in size
328
- import h5py
329
334
file_path = self .get_omitted_flash_response_df_path ()
330
335
if os .path .exists (file_path ):
331
336
os .remove (file_path )
@@ -334,7 +339,7 @@ def get_omitted_flash_response_df(self):
334
339
else :
335
340
if os .path .exists (self .get_omitted_flash_response_df_path ()):
336
341
print ('loading omitted flash response dataframe' )
337
- self .omitted_flash_response_df = pd .read_hdf (self .get_omitted_flash_response_df_path (), key = 'df' , format = 'fixed' )
342
+ self .omitted_flash_response_df = pd .read_hdf (self .get_omitted_flash_response_df_path (), key = 'df' )
338
343
fdf = self .omitted_flash_response_df
339
344
fdf .cell = [int (cell ) for cell in fdf .cell .values ]
340
345
fdf .cell_specimen_id = [int (cell_specimen_id ) for cell_specimen_id in fdf .cell_specimen_id .values ]
@@ -344,7 +349,6 @@ def get_omitted_flash_response_df(self):
344
349
self .save_omitted_flash_response_df (self .omitted_flash_response_df )
345
350
return self .omitted_flash_response_df
346
351
347
-
348
352
def compute_pairwise_correlations (self ):
349
353
fdf = self .flash_response_df .copy ()
350
354
if 'omitted' in fdf .keys ():
0 commit comments