From 76ce186748759978fddb82a6eedbb727ba59b857 Mon Sep 17 00:00:00 2001 From: Constantinos Eleftheriou Date: Tue, 29 Sep 2026 15:33:01 +0100 Subject: [PATCH 1/3] fix response alignment issue --- src/mesoscopy/process/perievent.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mesoscopy/process/perievent.py b/src/mesoscopy/process/perievent.py index 9df415c..50fc6c5 100644 --- a/src/mesoscopy/process/perievent.py +++ b/src/mesoscopy/process/perievent.py @@ -61,7 +61,7 @@ def event_times(trials: pd.DataFrame, event: str) -> tuple[npt.NDArray[np.float6 Args: trials (pd.DataFrame): Trials table as written by `visiomode-analysis session`, with `start_time`, `cue_onset`, `stop_time`, `response_time` and `sdt_type` columns. Times are seconds from - behaviour start. + behaviour start, except `response_time`, which is seconds from `cue_onset`. event (str): One of `cue_onset`, `trial_start`, `response` or `reward`. Returns: @@ -80,8 +80,9 @@ def event_times(trials: pd.DataFrame, event: str) -> tuple[npt.NDArray[np.float6 elif event == "response": import pandas as pd + # `response_time` is measured from the cue. response_time = pd.to_numeric(trials["response_time"], errors="coerce").to_numpy(dtype=np.float64) - times = trials["start_time"].to_numpy(dtype=np.float64) + response_time + times = trials["cue_onset"].to_numpy(dtype=np.float64) + response_time keep = ~np.isnan(response_time) & (response_time >= 0) & ~np.isnan(times) elif event == "reward": times = trials["stop_time"].to_numpy(dtype=np.float64) From b0539d4e873842419a1a5cbd1406c62aedab7662 Mon Sep 17 00:00:00 2001 From: Constantinos Eleftheriou Date: Tue, 29 Sep 2026 15:33:15 +0100 Subject: [PATCH 2/3] add expected response event times --- tests/test_process.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_process.py b/tests/test_process.py index cc88833..dd1a0a8 100644 --- a/tests/test_process.py +++ b/tests/test_process.py @@ -1820,7 +1820,7 @@ class TestEventTimes: [ ("cue_onset", [1.0, 5.5, 10.5, 15.5, 20.5, 40.5], [0, 1, 2, 3, 4, 5]), ("trial_start", [0.5, 5.0, 10.0, 15.0, 20.0, 40.0], [0, 1, 2, 3, 4, 5]), - ("response", [1.2, 6.2, 20.8, 40.5], [0, 1, 4, 5]), + ("response", [1.7, 6.7, 21.3, 41.0], [0, 1, 4, 5]), ("reward", [3.0, 8.0, 23.0, 41.5], [0, 1, 4, 5]), ], ) From 757d5a99c257cf4ff58716081b6128604f1fbcbd Mon Sep 17 00:00:00 2001 From: Constantinos Eleftheriou Date: Tue, 29 Sep 2026 15:33:23 +0100 Subject: [PATCH 3/3] update changelog entry --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 729c07b..52bda8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ Versions follow [Semantic Versioning](https://semver.org) (`..