Analysis-tool landscape
This is a design audit, not a claim that an existing package is defective. The tools optimise for different users and experimental systems.
| Tool | Primary environment | Strength | Boundary relevant here |
|---|---|---|---|
| pMAT | MATLAB / deployed GUI | Accessible common workflow and figures | Constrained analysis surface; MATLAB source workflow |
| GuPPy | Python GUI/notebooks | Multiple acquisition inputs; active and established | Application-oriented architecture and legacy environment assumptions |
| PhAT | Python GUI | Modular interactive exploration; several normalisations | GUI is central; not a general inference foundation |
| FiPhA | R/Shiny | Multiple photometry modalities and interactive QC | R application/export workflow |
| Pyfiber | Python | Integrates operant behaviour and photometry | Specialised around its behavioural workflow |
| FiPhoPHA | Python | Bootstrap CIs and permutation tests for waveforms | Post-hoc inference rather than end-to-end data model/preprocessing |
| photometry_FLMM / fastFMM | R | Nested functional mixed models and joint intervals | Specialised inference; distributional/model assumptions |
| PASTa | MATLAB | Signal processing and broad acquisition support | MATLAB-based analysis environment |
| ndx-fiber-photometry | NWB extension | Structured acquisition metadata and NWB storage | Standard, not a complete analysis library |
What remains unoccupied
The credible gap is not “fiber photometry in Python”—GuPPy, Pyfiber, PhAT, and FiPhoPHA already refute that. It is a maintained library layer joining:
- labelled, vendor-neutral and NWB-compatible data;
- explicit, benchmarked preprocessing alternatives;
- event alignment that retains the experimental hierarchy;
- inference across animals with stated exchangeability/model assumptions;
- reusable provenance and validation fixtures.
Stress tests against the project thesis
“One package can become the default”
Possible, but only through interoperability and trust. Existing tools have papers, users, and active maintainers. Compatibility adapters and numerical comparison are more credible than declaring replacement.
“NWB-native is automatically an advantage”
NWB is valuable for archival metadata and DANDI integration, and DANDI 001084 demonstrates real fiber-photometry use. However, forcing NWB objects through every numerical function would increase dependency and complexity. NWB should be a first-class boundary with tested round trips.
“Robust regression solves motion correction”
It improves resistance to transients under a linear shared-artefact model. It cannot establish that the reference lacks biological sensitivity, correct nonlinear or lagged artefacts automatically, or separate motion from biology when both are event-locked. Diagnostics and experimental controls remain necessary.
“Nonparametric inference avoids assumptions”
Bootstrap and permutation procedures still assume a valid resampling or exchangeability unit. Resampling trials as though they were independent animals is not rescued by being nonparametric. The package must make the randomisation unit structural.
“Functional mixed models settle waveform inference”
They offer an unusually coherent account of nesting and simultaneous uncertainty, but require smoothness, model specification, and likelihood assumptions. They should be benchmarked alongside design-respecting randomisation methods.