torchcell.datasets.scerevisiae.costanzo2021.EnvChemgenCostanzo2021Dataset

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

Bases: ExperimentDataset

Costanzo 2021 condition-SGA: env x (deletion | ts-allele) -> differential fitness.

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 deposited Data File S1 spreadsheet required before processing.

download() → None[source]

Link Data File S1 from the raw mirror into raw_dir after verifying it.

Science supplementary downloads are not scriptable (HTTP 403 behind a Cloudflare challenge, verified 2026-09-12, same as Costanzo 2016), so the file is deposited once into $DATA_ROOT/torchcell-raw/<citation_key>/ and the mirror – not the URL – is the source of record. raw/ holds a symlink to the mirror file, not a second copy of its bytes, and nothing is linked unless the mirror file hashes to _S1_SHA256.

process() → None[source]

Parse the differential-fitness sheet into records; write LMDB + the drop log.

Data File S1 in raw/ is verified against its sha256 pin first; a mismatch raises RawSha256MismatchError before any row is read or any store opened.

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.