superstats.simulation.augmentation.contamination#

Abstract base class for contamination-data augmentation processes.

Classes

ContaminationProcess()

Introduces contamination into simulated data.

class superstats.simulation.augmentation.contamination.ContaminationProcess[source]#

Bases: ABC

Introduces contamination into simulated data.

Contract: (data, rng) -> {"data": contaminated}. mask is a boolean array of data.shape (True = contaminated) and contaminated is data with masked entries replaced by draws from the process’s contaminant distribution (e.g. guesses, lapses, outliers). Instances are callable, so a ContaminationProcess, a subclass, or a bare function with this signature are interchangeable.

abstract apply(data, rng=None)[source]#

Apply the contamination process.

Parameters:
datanp.ndarray

Simulated data to corrupt with contamination.

rngnp.random.Generator or None, optional, default: None

Random generator to use. If None, a fresh, unseeded generator is created via _default_rng, so calling apply directly is safe but not reproducible unless a seeded rng is supplied.

Returns:
resultdict with keys “data” and “contamination_mask”
Parameters:
Return type:

dict