TargetLeakageDataCheck.
validate
Check if any of the features are highly correlated with the target by using mutual information or Pearson correlation.
If method=’mutual’, supports all target and feature types. Otherwise, if method=’pearson’ only supports binary with numeric and boolean dtypes. Pearson correlation returns a value in [-1, 1], while mutual information returns a value in [0, 1].
X (ww.DataTable, pd.DataFrame, np.ndarray) – The input features to check
y (ww.DataColumn, pd.Series, np.ndarray) – The target data
dict with a DataCheckWarning if target leakage is detected.
dict (DataCheckWarning)
Example
>>> import pandas as pd >>> X = pd.DataFrame({ ... 'leak': [10, 42, 31, 51, 61], ... 'x': [42, 54, 12, 64, 12], ... 'y': [13, 5, 13, 74, 24], ... }) >>> y = pd.Series([10, 42, 31, 51, 40]) >>> target_leakage_check = TargetLeakageDataCheck(pct_corr_threshold=0.95) >>> assert target_leakage_check.validate(X, y) == {"warnings": [{"message": "Column 'leak' is 95.0% or more correlated with the target", "data_check_name": "TargetLeakageDataCheck", "level": "warning", "code": "TARGET_LEAKAGE", "details": {"column": "leak"}}], "errors": []}