Recipes
A cookbook of common analyses against LABO CSVs. Each recipe is self-contained: what it does, which files you need, a pandas snippet, an R equivalent, gotchas, and cross-links.
All recipes assume you've loaded the CSVs from a single run directory and that the files exist (see File layout for gating rules).
Which recipe do I need?
| I want to... | Recipe |
|---|---|
| Measure the delay between a stimulus and a button press | Reaction time |
| Compute a mean signal (gaze, pose) locked to stimulus onset | Stimulus-locked averaging |
| Analyse where the participant looked over time | Gaze paths |
| Align LABO data with EEG / biopac / external trackers | Cross-device sync |
Conventions used in these recipes
- Pandas is primary. Every recipe has a copy-pasteable pandas snippet. R snippets are included under a Tabs block where they help; if you use R, they're one-to-one equivalents.
MonotonicExecutionTimeis the reference clock. See Timing.FrameNumberis the primary join key within a session. See Join keys.- Files may be gated out. Not every stream produces a file every run — see each stream's page for gate conditions.
Beyond these recipes
These cover the most common experimental-psychology questions. For anything novel:
- Figure out whether you need a regular, irregular, or mixed analysis — see Regular vs irregular.
- Identify the stream(s) — each stream page has a "When to use" paragraph.
- Pick join keys —
FrameNumberwithin a session,MonotonicExecutionTimeacross sessions or devices. - Write the join; validate with a small spot-check before scaling up.
If you write a reusable recipe, add it here.