From e7c181f011e020243ef4bc2cec7e2f7acd0e3e42 Mon Sep 17 00:00:00 2001 From: Palash Tyagi <23239946+Magnus167@users.noreply.github.com> Date: Thu, 10 Jul 2025 23:27:23 +0100 Subject: [PATCH] Refactor error handling in GaussianNB fit method to use assert instead of panic for empty class labels --- src/compute/models/gaussian_nb.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/compute/models/gaussian_nb.rs b/src/compute/models/gaussian_nb.rs index 6d4b489..2d5cc97 100644 --- a/src/compute/models/gaussian_nb.rs +++ b/src/compute/models/gaussian_nb.rs @@ -59,9 +59,7 @@ impl GaussianNB { let bits = label.to_bits(); groups.entry(bits).or_default().push(i); } - if groups.is_empty() { - panic!("No class labels found in y"); - } + assert!(!groups.is_empty(), "No class labels found in y"); //-- panicked earlier // Extract and sort class labels self.classes = groups.keys().cloned().map(f64::from_bits).collect(); @@ -209,6 +207,5 @@ mod tests { let y = Matrix::from_vec(vec![0.0], 1, 1); let mut clf = GaussianNB::new(1e-9, false); clf.fit(&x, &y); - clf.predict(&x); } }