Skip to content
3 changes: 2 additions & 1 deletion src/spikeinterface/sorters/internal/spyking_circus2.py
Original file line number Diff line number Diff line change
Expand Up @@ -382,7 +382,8 @@ def _run_from_folder(cls, sorter_output_folder, params, verbose):
sorting.save(folder=curation_folder)
# np.save(fitting_folder / "amplitudes", guessed_amplitudes)

sorting = final_cleaning_circus(recording_w, sorting, templates, **merging_params, **job_kwargs)
if sorting.get_non_empty_unit_ids().size > 0:
sorting = final_cleaning_circus(recording_w, sorting, templates, **merging_params, **job_kwargs)

if verbose:
print(f"Kept {len(sorting.unit_ids)} units after final merging")
Expand Down
3 changes: 3 additions & 0 deletions src/spikeinterface/sortingcomponents/matching/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ def find_spikes_from_templates(
method_class = matching_methods[method]
node0 = method_class(recording, **method_kwargs)
nodes = [node0]
assert "templates" in method_kwargs, "You must provide templates in method_kwargs"
if len(method_kwargs["templates"].unit_ids) == 0:
return np.zeros(0, dtype=node0.get_dtype())

spikes = run_node_pipeline(
recording,
Expand Down