Source code for allensdk.brain_observatory.behavior.metadata_processing

[docs]def get_task_parameters(data): task_parameters = {} task_parameters['blank_duration_sec'] = [float(x) for x in data["items"]["behavior"]['config']['DoC']['blank_duration_range']] task_parameters['stimulus_duration_sec'] = data["items"]["behavior"]['config']['DoC']['stimulus_window'] task_parameters['omitted_flash_fraction'] = data["items"]["behavior"]['params'].get('omitted_flash_fraction', float('nan')) task_parameters['response_window_sec'] = [float(x) for x in data["items"]["behavior"]["config"]["DoC"]["response_window"]] task_parameters['reward_volume'] = data["items"]["behavior"]["config"]["reward"]["reward_volume"] task_parameters['stage'] = data["items"]["behavior"]["params"]["stage"] task_parameters['stimulus'] = next(iter(data["items"]["behavior"]["stimuli"])) task_parameters['stimulus_distribution'] = data["items"]["behavior"]["config"]["DoC"]["change_time_dist"] task_parameters['task'] = data["items"]["behavior"]["config"]["behavior"]["task_id"] n_stimulus_frames = 0 for stim_type, stim_table in data["items"]["behavior"]["stimuli"].items(): n_stimulus_frames += sum(stim_table.get("draw_log", [])) task_parameters['n_stimulus_frames'] = n_stimulus_frames return task_parameters