@@ -53,19 +53,15 @@ def to_nwb(session_path):
5353
5454 nwbfile .subject = pynwb .file .Subject (subject_id = session ["animal_id" ])
5555
56- nwbfile .add_trial_column (name = "stimulus" , description = "the visual stimuli during the trial" )
57- nwbfile .add_trial_column (name = "cue_onset" , description = "when the stimulus came on" )
58- nwbfile .add_trial_column (name = "response" , description = "trial response type (left, right, lever)" )
59- nwbfile .add_trial_column (name = "response_time" , description = "response timestamp" )
60- nwbfile .add_trial_column (name = "pos_x" , description = "response position in x-axis" )
61- nwbfile .add_trial_column (name = "pos_y" , description = "response position in y-axis" )
62- nwbfile .add_trial_column (name = "dist_x" , description = "response displacement in x-axis" )
63- nwbfile .add_trial_column (name = "dist_y" , description = "response displacement in y-axis" )
64- nwbfile .add_trial_column (name = "outcome" , description = "trial outcome" )
65- nwbfile .add_trial_column (name = "correction" , description = "whether trial was a correction trial" )
66- nwbfile .add_trial_column (name = "sdt_type" , description = "signal detection theory classification" )
67-
68- for trial in flatten_trials (session ):
56+ trials = flatten_trials (session )
57+ trial_keys = set ().union (* (trial .keys () for trial in trials ))
58+ for key in trial_keys :
59+ try :
60+ nwbfile .add_trial_column (name = key , description = "" )
61+ except ValueError :
62+ continue
63+
64+ for trial in trials :
6965 nwbfile .add_trial (** trial )
7066
7167 nwbfile .create_device (
0 commit comments