From 7c97676114cb53293a77fa7e5a0042ae0b63ca7d Mon Sep 17 00:00:00 2001 From: JKL98ISR Date: Thu, 30 Mar 2023 17:00:18 +0300 Subject: [PATCH] fix edge case drift (#2431) fix_edge_case_drifft --- deepchecks/utils/distribution/drift.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/deepchecks/utils/distribution/drift.py b/deepchecks/utils/distribution/drift.py index 4d02f712ba..59bb08d087 100644 --- a/deepchecks/utils/distribution/drift.py +++ b/deepchecks/utils/distribution/drift.py @@ -157,6 +157,9 @@ def cramers_v(dist1: Union[np.ndarray, pd.Series], dist2: Union[np.ndarray, pd.S dist1_counts, dist2_counts = _balance_sizes_downsizing(dist1_counts, dist2_counts) contingency_matrix = pd.DataFrame([dist1_counts, dist2_counts], dtype=int) + # filter all columns that have all 0 values + contingency_matrix = contingency_matrix.loc[:, (contingency_matrix != 0).any(axis=0)] + # Based on https://en.wikipedia.org/wiki/Cram%C3%A9r%27s_V# bias correction method # noqa: SC100 chi2 = chi2_contingency(contingency_matrix)[0] n = contingency_matrix.sum().sum()