torchcell.datasets.scerevisiae.yeastphenome.YeastPhenomeDataset

class YeastPhenomeDataset(root: str = 'data/torchcell/yeastphenome', io_workers: int = 0, transform: Callable[[...], Any] | None = None, pre_transform: Callable[[...], Any] | None = None, **kwargs: Any)[source]

Bases: ExperimentDataset

Curated YeastPhenome growth-phenome env x geno -> NPV z-score screens.

organism: ClassVar[Organism] = 'scerevisiae'

each loader declares its own, the build’s organism switch reads it off the class (dataset_organism), and a loader that forgot it is refused by name instead of inheriting an organism it may not have.

Type:

The host organism every record describes. Annotated here WITHOUT a value

property experiment_class: type[Experiment]

Experiment schema class produced by this dataset.

property reference_class: type[ExperimentReference]

Experiment-reference schema class produced by this dataset.

property raw_file_names: list[str]

The curated NPV file for each retained screen (pinned). Label = the NPV; the original native-unit value.txt stays retrievable at the v1.0 pin if needed.

download() → None[source]

Fetch each screen’s NPV file from the v1.0 pin; verify its pinned sha256.

process() → None[source]

Build env x geno -> NPV records for every GROWTH column of every screen.

Each data COLUMN of a screen is one (phenotype x condition). Every growth column whose condition the schema can carry is stored; a column whose condition has an unrepresentable component, a non-growth column and a malformed header are counted, never guessed. A row id that is not ORF-shaped is stored as released.

preprocess_raw(df: Any, preprocess: dict[str, Any] | None = None) → Any[source]

Preprocessing is handled inside process() for this dataset.

create_experiment() → None[source]

Experiment construction is handled inline in process() for this dataset.