pub struct OrderedTargetEncoder { /* private fields */ }Expand description
Ordered Target Encoder with M-Estimate Smoothing
Encodes categorical features by replacing them with smoothed target means. Uses ordered/streaming approach to prevent target leakage.
Smoothing formula (M-Estimate): encoded = (n × μ_category + m × μ_global) / (n + m)
Where:
- n = count of category
- μ_category = mean target for category
- m = smoothing parameter
- μ_global = global target mean
Implementations§
Source§impl OrderedTargetEncoder
impl OrderedTargetEncoder
Sourcepub fn new(smoothing: f64) -> Self
pub fn new(smoothing: f64) -> Self
Create a new ordered target encoder
§Arguments
smoothing- M-estimate smoothing parameter (typically 1.0 to 10.0)
Sourcepub fn encode_and_update(&mut self, category: &str, target: f64) -> f64
pub fn encode_and_update(&mut self, category: &str, target: f64) -> f64
Encode a single value using current statistics, then update
This is the ordered/streaming approach:
- Compute encoding using statistics from prior rows only
- Update statistics with this row’s values
Returns the encoded value.
Sourcepub fn encode_column(
&mut self,
categories: &[String],
targets: &[f64],
) -> Vec<f64>
pub fn encode_column( &mut self, categories: &[String], targets: &[f64], ) -> Vec<f64>
Encode an entire column in streaming order
§Arguments
categories- Category values for each rowtargets- Target values for each row
Returns encoded values with same length as input.
Sourcepub fn encode_inference(&self, category: &str) -> f64
pub fn encode_inference(&self, category: &str) -> f64
Encode using final statistics (for inference)
After training, use this to encode new data using the learned statistics.
Sourcepub fn get_encoding_map(&self) -> EncodingMap
pub fn get_encoding_map(&self) -> EncodingMap
Get the learned encoding map for serialization
Auto Trait Implementations§
impl Freeze for OrderedTargetEncoder
impl RefUnwindSafe for OrderedTargetEncoder
impl Send for OrderedTargetEncoder
impl Sync for OrderedTargetEncoder
impl Unpin for OrderedTargetEncoder
impl UnwindSafe for OrderedTargetEncoder
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.