@@ -323,7 +323,6 @@ def gen_methods_report_str(concise=False):
323323 return output
324324
325325
326- # TODO: UPDATE
327326def gen_methods_text_str (model = None ):
328327 """Generate a string representation of a template methods report.
329328
@@ -334,32 +333,43 @@ def gen_methods_text_str(model=None):
334333 If None, the text is returned as a template, without values.
335334 """
336335
337- template = (
336+ if model :
337+ settings_names = list (model .algorithm .settings .values .keys ())
338+ settings_values = list (model .algorithm .settings .values .values ())
339+ else :
340+ settings_names = []
341+ settings_values = []
342+
343+ template = [
338344 "The periodic & aperiodic spectral parameterization algorithm (version {}) "
339345 "was used to parameterize neural power spectra. "
340346 "The model was fit with {} aperiodic mode and {} periodic mode. "
341347 "Settings for the algorithm were set as: "
342- "peak width limits : {}; "
343- "max number of peaks : {}; "
344- "minimum peak height : {}; "
345- "peak threshold : {}; ."
348+ ]
349+
350+ if settings_names :
351+ settings_strs = [el + ' : {}, ' for el in settings_names ]
352+ settings_strs [- 1 ] = settings_strs [- 1 ][:- 2 ] + '. '
353+ template .extend (settings_strs )
354+ else :
355+ template .extend ('XX. ' )
356+
357+ template .extend ([
346358 "Power spectra were parameterized across the frequency range "
347359 "{} to {} Hz."
348- )
360+ ] )
349361
350- if model :
351- freq_range = model .data .freq_range if model . data . has_data else ( 'XX' , 'XX' )
362+ if model and model . data . has_data :
363+ freq_range = model .data .freq_range
352364 else :
353365 freq_range = ('XX' , 'XX' )
354366
355- methods_str = template .format (MODULE_VERSION ,
356- model .modes .aperiodic .name if model else 'XX' ,
357- model .modes .periodic .name if model else 'XX' ,
358- model .algorithm .settings .peak_width_limits if model else 'XX' ,
359- model .algorithm .settings .max_n_peaks if model else 'XX' ,
360- model .algorithm .settings .min_peak_height if model else 'XX' ,
361- model .algorithm .settings .peak_threshold if model else 'XX' ,
362- * freq_range )
367+ methods_str = '' .join (template ).format (\
368+ MODULE_VERSION ,
369+ model .modes .aperiodic .name if model else 'XX' ,
370+ model .modes .periodic .name if model else 'XX' ,
371+ * settings_values ,
372+ * freq_range )
363373
364374 return methods_str
365375
0 commit comments