#[non_exhaustive]pub enum WeightFunction {
Uniform,
Distance,
}Expand description
Weighting function for neighbor votes.
Controls how the k-nearest neighbors contribute to predictions.
§Example
use scry_learn::neighbors::{KnnClassifier, WeightFunction};
let knn = KnnClassifier::new()
.k(5)
.weights(WeightFunction::Distance);Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Uniform
All neighbors have equal vote weight.
Distance
Closer neighbors contribute more: weight = 1 / distance.
When distance is zero (exact match), that neighbor gets all the weight.
Trait Implementations§
Source§impl Clone for WeightFunction
impl Clone for WeightFunction
Source§fn clone(&self) -> WeightFunction
fn clone(&self) -> WeightFunction
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WeightFunction
impl Debug for WeightFunction
Source§impl Default for WeightFunction
impl Default for WeightFunction
Source§fn default() -> WeightFunction
fn default() -> WeightFunction
Returns the “default value” for a type. Read more
impl Copy for WeightFunction
Auto Trait Implementations§
impl Freeze for WeightFunction
impl RefUnwindSafe for WeightFunction
impl Send for WeightFunction
impl Sync for WeightFunction
impl Unpin for WeightFunction
impl UnsafeUnpin for WeightFunction
impl UnwindSafe for WeightFunction
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more