Status: Potential (speculative). Candidate for v1.5, not yet committed. Filed so the
design is captured; needs a go/no-go before implementation.
Problem
Omics-scale feature/label matrices are often sparse or too large to hold densely in
memory, but AAanalysis components assume dense in-memory arrays. Passing a SciPy sparse
matrix or a backed AnnData today either densifies silently (blowing up memory) or fails
in an opaque place, with no declared contract for what each component accepts.
Goal
Add declared support for sparse and backed matrix inputs where it is scientifically
sound, with explicit failure (not silent densification) where a component cannot support
them, keeping feature names and sample order stable.
Requirements
KPIs / Acceptance criteria
Scope / non-goals
- Core /
pro depending on the component; no new required dependency (SciPy already
present).
- AAanalysis operates on the matrices it is given. Large-data storage, object stores and
cluster memory management stay in ProtXplain / infrastructure.
Dependencies
Standards checklist
Problem
Omics-scale feature/label matrices are often sparse or too large to hold densely in
memory, but AAanalysis components assume dense in-memory arrays. Passing a SciPy sparse
matrix or a backed AnnData today either densifies silently (blowing up memory) or fails
in an opaque place, with no declared contract for what each component accepts.
Goal
Add declared support for sparse and backed matrix inputs where it is scientifically
sound, with explicit failure (not silent densification) where a component cannot support
them, keeping feature names and sample order stable.
Requirements
.densify-styleboundary is explicit and logged (
ut.print_out), never silent.ValueErrornaming the componentand the required dense form — not a deep numpy error.
a sparse omics-scale benchmark fixture.
KPIs / Acceptance criteria
its dense equivalent (asserted within tolerance).
ValueErrorrather than densifyingsilently (asserted).
Scope / non-goals
prodepending on the component; no new required dependency (SciPy alreadypresent).
cluster memory management stay in ProtXplain / infrastructure.
Dependencies
backed-I/O direction.
Standards checklist
Returns, per-methodExamplesinclude)print()(useut.print_out); bareValueError/RuntimeError; noaaanalysis._utils.*outsideutils.py