@@ -437,6 +437,7 @@ def _run(self, verbose=False, **job_kwargs):
437437 return_in_uV = self .sorting_analyzer .return_in_uV
438438
439439 return_std = "std" in self .params ["operators" ]
440+ sparsity_mask = None if self .sparsity is None else self .sparsity .mask
440441 output = estimate_templates_with_accumulator (
441442 recording ,
442443 some_spikes ,
@@ -445,17 +446,24 @@ def _run(self, verbose=False, **job_kwargs):
445446 self .nafter ,
446447 return_in_uV = return_in_uV ,
447448 return_std = return_std ,
449+ sparsity_mask = sparsity_mask ,
448450 verbose = verbose ,
449451 ** job_kwargs ,
450452 )
451453
452- # Output of estimate_templates_with_accumulator is either (templates,) or (templates, stds)
453454 if return_std :
454455 templates , stds = output
455- self .data ["average" ] = templates
456- self .data ["std" ] = stds
456+ data = dict (average = templates , std = stds )
457457 else :
458- self .data ["average" ] = output
458+ templates = output
459+ data = dict (average = templates )
460+
461+ if self .sparsity is not None :
462+ # make average and std dense again
463+ for k , arr in data .items ():
464+ dense_arr = self .sparsity .densify_templates (arr )
465+ data [k ] = dense_arr
466+ self .data .update (data )
459467
460468 def _compute_and_append_from_waveforms (self , operators ):
461469 if not self .sorting_analyzer .has_extension ("waveforms" ):
0 commit comments