diff --git a/src/linear/logistic_regression.rs b/src/linear/logistic_regression.rs index 6b706dd..7dd269c 100644 --- a/src/linear/logistic_regression.rs +++ b/src/linear/logistic_regression.rs @@ -518,12 +518,9 @@ impl, Y: for (i, y_hat_i) in y_hat.iterator(0).enumerate().take(n) { result.set( i, - self.classes()[if RealNumber::sigmoid(*y_hat_i + intercept) > RealNumber::half() - { - 1 - } else { - 0 - }], + self.classes()[usize::from( + RealNumber::sigmoid(*y_hat_i + intercept) > RealNumber::half(), + )], ); } } else { diff --git a/src/tree/decision_tree_classifier.rs b/src/tree/decision_tree_classifier.rs index 043d79b..6341ab4 100644 --- a/src/tree/decision_tree_classifier.rs +++ b/src/tree/decision_tree_classifier.rs @@ -673,7 +673,7 @@ impl, Y: Array1> let mut is_pure = true; for i in 0..n_rows { if visitor.samples[i] > 0 { - if label == Option::None { + if label.is_none() { label = Option::Some(visitor.y[i]); } else if visitor.y[i] != label.unwrap() { is_pure = false; diff --git a/src/tree/decision_tree_regressor.rs b/src/tree/decision_tree_regressor.rs index 397040b..12ea978 100644 --- a/src/tree/decision_tree_regressor.rs +++ b/src/tree/decision_tree_regressor.rs @@ -511,7 +511,7 @@ impl, Y: Array1> match queue.pop_front() { Some(node_id) => { let node = &self.nodes()[node_id]; - if node.true_child == None && node.false_child == None { + if node.true_child.is_none() && node.false_child.is_none() { result = node.output; } else if x.get((row, node.split_feature)).to_f64().unwrap() <= node.split_value.unwrap_or(std::f64::NAN) @@ -557,7 +557,7 @@ impl, Y: Array1> self.find_best_split(visitor, n, sum, parent_gain, *variable); } - self.nodes()[visitor.node].split_score != Option::None + self.nodes()[visitor.node].split_score.is_some() } fn find_best_split(