Skip to content

Ungrouped streams - #21

Merged
selmanozleyen merged 1 commit into
mainfrom
feat/empty-group-by
Oct 19, 2026
Merged

selmanozleyen merged 1 commit into
mainfrom
feat/empty-group-by

Conversation

@selmanozleyen

Copy link
Copy Markdown
Collaborator

Stream(group_by=()) now means one group holding every cell, with leaf (). sckitflow's unconditional schema currently adds a dummy "all" obs column to every AnnData only because group_by had to be non-empty; this lets it drop that.

  • leaf_codes returns one leaf () for no columns; leaf categories are built with pd.Index(leaves, tupleize_cols=False) (an empty tuple is not a MultiIndex entry).
  • materialize_node skips the sort when there is nothing to sort by.
  • Tests: training across two files, an in-memory ungrouped link, and an eval pass over the one group.

Note: from_paths with only ungrouped streams reads no obs columns, which load_backed_adata treats as "read the full obs"; correct, but slow on very large stores.

@selmanozleyen
selmanozleyen merged commit d8b0360 into main Oct 19, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant