SpikeInterface / SpikeInterface/spikeinterface
set times propagation
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 847
- Forks
- 280
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 29
Description
Hi,
There is something not entirely clear in how time is managed:
if i set the times to a recording object with recording.set_times(correct_times) and I sort that object the sorting object will not have the correct_times, so I have to do again
recording.set_times(correct_times)
sorting.register_recording(recording)
I find this quite unintuitive, is there an internal reason for this to be necessary?
For example I cannot create a sorting analyzer directly with this:
create_sorting_analyzer(sorting = read_sorter_folder(f"{path_recording_folder}/spike_interface_output/probe{group}"), recording=raw_rec.split_by(property="group")[group], **job_kwargs)
because I always have to load the sorter first and register the times.
Thanks!!
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing recording.set_times(correct_times), sorting.register_recording(recording), and create_sorting_analyzer through the recording and sorting object flow. Determine where times are stored or lost when a recording is sorted or loaded from a sorter folder. Done should mean the documented analyzer workflow preserves the intended times without requiring a second registration step, with coverage for the example in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100