Source code for evalml.data_checks.data_checks

from .data_check import DataCheck


[docs]class DataChecks: """A collection of data checks."""
[docs] def __init__(self, data_checks=None): """ A collection of data checks. Arguments: data_checks (list (DataCheck)): list of DataCheck objects """ if not isinstance(data_checks, list): raise ValueError(f"Parameter data_checks must be a list. Received {type(data_checks).__name__}.") if not all(isinstance(check, DataCheck) for check in data_checks): raise ValueError("All elements of parameter data_checks must be an instance of DataCheck.") self.data_checks = data_checks
[docs] def validate(self, X, y=None): """ Inspects and validates the input data against data checks and returns a list of warnings and errors if applicable. Arguments: X (pd.DataFrame): the input data of shape [n_samples, n_features] y (pd.Series): the target labels of length [n_samples] Returns: list (DataCheckMessage): list containing DataCheckMessage objects """ messages = [] for data_check in self.data_checks: messages_new = data_check.validate(X, y) messages.extend(messages_new) return messages