pub struct StratifiedCrossValidation {
pub number_of_folds: i64,
pub random_seed: i64,
pub scheme_name: String,
pub description: String,
}Expand description
Cross-validation preserving class proportions across folds.
Fields§
§number_of_folds: i64Number of folds.
random_seed: i64Random seed.
scheme_name: StringUnique name identifying a resampling scheme.
description: StringFree-text description.
Implementations§
Source§impl StratifiedCrossValidation
impl StratifiedCrossValidation
Sourcepub fn folds(&self, labels: &[usize]) -> Result<Vec<(Vec<usize>, Vec<usize>)>>
pub fn folds(&self, labels: &[usize]) -> Result<Vec<(Vec<usize>, Vec<usize>)>>
Splits labelled observations into stratified folds using this scheme’s
configured number_of_folds and
random_seed.
Seeds a fresh SplitMix64 from random_seed (reinterpreting the signed
seed’s bits as unsigned) and delegates to stratified_kfold_indices, so
two calls on structs with equal fields yield identical splits.
§Arguments
labels— the class id of each observation; seestratified_kfold_indicesfor the partitioning contract.
§Returns
A vector of (train_indices, test_indices) pairs, one per fold.
§Errors
Error::InvalidInputifnumber_of_foldsis negative or< 2.Error::InsufficientDataiflabelsis empty ornumber_of_foldsexceeds the smallest class count.
§Examples
use stats_claw::resampling::StratifiedCrossValidation;
let cv = StratifiedCrossValidation {
number_of_folds: 2,
random_seed: 42,
..Default::default()
};
let labels = [0usize, 1, 0, 1];
let folds = cv.folds(&labels)?;
assert_eq!(folds.len(), 2);Trait Implementations§
Source§impl Clone for StratifiedCrossValidation
impl Clone for StratifiedCrossValidation
Source§fn clone(&self) -> StratifiedCrossValidation
fn clone(&self) -> StratifiedCrossValidation
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 StratifiedCrossValidation
impl Debug for StratifiedCrossValidation
Source§impl Default for StratifiedCrossValidation
impl Default for StratifiedCrossValidation
Source§fn default() -> StratifiedCrossValidation
fn default() -> StratifiedCrossValidation
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for StratifiedCrossValidation
impl RefUnwindSafe for StratifiedCrossValidation
impl Send for StratifiedCrossValidation
impl Sync for StratifiedCrossValidation
impl Unpin for StratifiedCrossValidation
impl UnsafeUnpin for StratifiedCrossValidation
impl UnwindSafe for StratifiedCrossValidation
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