1616from builtins import range , str , bytes , int
1717
1818from copy import deepcopy
19- import os , math , csv
19+ import csv , math , os
2020
2121from nibabel import load
2222import numpy as np
@@ -145,7 +145,7 @@ def scale_timings(timelist, input_units, output_units, time_repetition):
145145 return timelist
146146
147147def bids_gen_info (bids_event_files ,
148- condition_column = 'trial_type ' ,
148+ condition_column = '' ,
149149 amplitude_column = None ,
150150 time_repetition = False ,
151151 ):
@@ -173,9 +173,13 @@ def bids_gen_info(bids_event_files,
173173 info = []
174174 for bids_event_file in bids_event_files :
175175 with open (bids_event_file ) as f :
176- f_events = csv .DictReader (f , skipinitialspace = True , delimiter = '\t ' )
176+ f_events = csv .DictReader (f , skipinitialspace = True , delimiter = str ( '\t ' ) )
177177 events = [{k : v for k , v in row .items ()} for row in f_events ]
178- conditions = list (set ([i [condition_column ] for i in events ]))
178+ if not condition_column :
179+ condition_column = '_trial_type'
180+ for i in events :
181+ i .update ({condition_column : 'ev0' })
182+ conditions = sorted (set ([i [condition_column ] for i in events ]))
179183 runinfo = Bunch (conditions = [], onsets = [], durations = [], amplitudes = [])
180184 for condition in conditions :
181185 selected_events = [i for i in events if i [condition_column ]== condition ]
@@ -185,10 +189,7 @@ def bids_gen_info(bids_event_files,
185189 decimals = math .ceil (- math .log10 (time_repetition ))
186190 onsets = [np .round (i , decimals ) for i in onsets ]
187191 durations = [np .round (i ,decimals ) for i in durations ]
188- if condition :
189- runinfo .conditions .append (condition )
190- else :
191- runinfo .conditions .append ('e0' )
192+ runinfo .conditions .append (condition )
192193 runinfo .onsets .append (onsets )
193194 runinfo .durations .append (durations )
194195 try :
0 commit comments