torchcell.datasets.scerevisiae.sameith2015.DmMicroarraySameith2015Dataset

class DmMicroarraySameith2015Dataset(root: str = 'data/torchcell/dm_microarray_sameith2015', io_workers: int = 0, process_workers: int = 0, batch_size: int = 10, transform: Callable[[...], Any] | None = None, pre_transform: Callable[[...], Any] | None = None, **kwargs: Any)[source]

Bases: ExperimentDataset

Double mutant GSTF expression profiling from Sameith et al. 2015.

Microarray gene expression data for double-deletion yeast strains pairing general stress transcription factors (GSTFs), profiled against a common wildtype reference pool. Authoritative GSTF pairs and per-sample strain are read from the paper’s supplementary table. Title tokens resolve to ORFs only through the release’s Additional file 1 (release_symbol_map), and perturbed_gene_name is the workbook’s symbol.

Data source: GEO accession GSE42536 Paper: Sameith et al. (2015) BMC Biology DOI: 10.1186/s12915-015-0222-5

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 model produced by this dataset.

property reference_class: type[ExperimentReference]

Experiment-reference model produced by this dataset.

property raw_file_names: list[str]

Raw GEO SOFT family file required before processing.

download() → None[source]

Download double mutant microarray expression data from GEO and supplementary data.

process() → None[source]

Parse GEO expression data into double-mutant experiments and write LMDB.

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

Preprocess raw data - for Sameith this is handled in process().

create_experiment() → None[source]

Required by base class but not used.

static create_double_mutant_expression_experiment(dataset_name: str, sample_info: dict[str, Any], mutant_data: SortedDict, refpool_data: SortedDict, log2_ratio_data: SortedDict, log2_ratio_se: SortedDict | None = None, log2_ratio_variance: SortedDict | None = None, n_replicates: SortedDict | None = None, strain: str = 'BY4742', *, refpool_n_replicates: SortedDict, gene_symbols: dict[str, str]) → tuple[Any, Any, Any][source]

Create experiment for double deletion mutant with PER-SAMPLE strain.

The reference expression is the mean refpool signal over the record’s arrays, so the reference n_replicates of a gene is the number of arrays whose refpool value entered that mean, counted per gene: a gene missing from one array’s refpool channel counts only the arrays that carry it (#630; the WT RNA batch and the additional WT cultures are not the stored value, see the module comment at the reference pool quotes).

Parameters:
  • dataset_name – Name of the dataset

  • sample_info – Sample metadata dictionary

  • mutant_data – Expression values for deletion mutant

  • refpool_data – Mean refpool expression over the record’s arrays

  • log2_ratio_data – log2(mutant/refpool) ratios

  • log2_ratio_se – Standard error for log2 ratios (optional)

  • log2_ratio_variance – Variance for log2 ratios (optional)

  • n_replicates – Number of replicates per gene (optional)

  • strain – Strain background (BY4742 or BY4741), extracted from Excel comments

  • refpool_n_replicates – Arrays in each gene’s refpool mean, same keys as refpool_data

  • gene_symbols – The workbook’s ORF -> gene symbol map (release_gene_symbols); perturbed_gene_name is that symbol, or the ORF when the workbook gives the ORF no symbol