czbenchmarks.datasets.validators ================================ .. py:module:: czbenchmarks.datasets.validators Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/czbenchmarks/datasets/validators/dataset_validator/index /autoapi/czbenchmarks/datasets/validators/single_cell_validator/index Classes ------- .. autoapisummary:: czbenchmarks.datasets.validators.DatasetValidator czbenchmarks.datasets.validators.SingleCellLabeledValidator Package Contents ---------------- .. py:class:: DatasetValidator Bases: :py:obj:`abc.ABC` Abstract base class for dataset validators. Not used in code and provided as convenience to validate user datasets. Defines the interface for validating datasets against dataset requirements. Validators ensure datasets meet dataset-specific requirements like: - Compatible data types - Organism compatibility - Feature name formats Each validator must: 1. Define a dataset_type class variable 2. Implement _validate_dataset, inputs, and outputs as abstract methods/properties .. py:attribute:: dataset_type :type: ClassVar[Type[czbenchmarks.datasets.Dataset]] .. py:method:: __init_subclass__() -> None :classmethod: Validate that subclasses define required class variables. :raises TypeError: If required class variables are missing .. py:method:: validate_dataset(dataset: czbenchmarks.datasets.Dataset) Validate that a dataset meets all requirements. Checks: 1. Dataset type matches dataset_type 2. Runs dataset specific validation :param dataset: Dataset to validate :raises ValueError: If validation fails .. py:class:: SingleCellLabeledValidator Bases: :py:obj:`czbenchmarks.datasets.validators.dataset_validator.DatasetValidator` Base validator for single-cell labeled datasets. Provides validation logic for single-cell labeled datasets, including: - Checking if the dataset organism is supported - Validating presence of required observation and variable keys in AnnData .. py:attribute:: dataset_type :type: ClassVar[type] .. py:attribute:: available_organisms :type: ClassVar[List[czbenchmarks.datasets.Organism]] .. py:attribute:: required_obs_keys :type: ClassVar[List[str]] .. py:attribute:: required_var_keys :type: ClassVar[List[str]] .. py:method:: __init_subclass__() -> None :classmethod: Ensure required class variables are defined in subclasses. Subclasses must define: - available_organisms - required_obs_keys - required_var_keys :raises TypeError: If any required class variable is missing in the subclass