DataValidator

Struct DataValidator 

Source
pub struct DataValidator;
Expand description

Re-exported validation utilities.

This includes validators for data integrity, parameter constraints, and common model hyperparameter validation. Validator for input data integrity.

Provides methods to check data quality including finiteness, positivity, dimensional consistency, and target value validity.

Implementations§

Source§

impl DataValidator

Source

pub fn new() -> Self

Creates a new data validator.

Source

pub fn check_finite(&self, values: &[f64]) -> ValidationResult<()>

Checks that all values in a slice are finite (not NaN, Inf, or -Inf).

§Arguments
  • values - Slice of values to check
§Returns

Ok(()) if all values are finite, Err(ValidationError::NonFiniteValue) otherwise

Source

pub fn check_positive(&self, values: &[f64]) -> ValidationResult<()>

Checks that all values are positive (> 0.0).

§Arguments
  • values - Slice of values to check
§Returns

Ok(()) if all values are positive, Err otherwise

Source

pub fn check_probability(&self, values: &[f64]) -> ValidationResult<()>

Checks that all values are valid probabilities (in [0, 1]).

§Arguments
  • values - Slice of values to check
§Returns

Ok(()) if all values are valid probabilities, Err otherwise

Source

pub fn validate_features( &self, n_samples: usize, n_features: usize, feature_names: Option<&[String]>, ) -> ValidationResult<()>

Validates feature matrix dimensions and optional feature names.

§Arguments
  • n_samples - Number of samples (must be > 0)
  • n_features - Number of features (must be > 0)
  • feature_names - Optional slice of feature names (length must match n_features)
§Returns

Ok(()) if dimensions are valid, Err otherwise

Source

pub fn validate_targets( &self, targets: &[f64], is_classification: bool, ) -> ValidationResult<()>

Validates target values for regression or classification.

§Arguments
  • targets - Target values to validate
  • is_classification - Whether this is a classification problem
§Returns

Ok(()) if targets are valid, Err otherwise

§Behavior
  • For classification: targets must be 0.0 or 1.0
  • For regression: targets must be finite (no other constraints)
Source

pub fn assert_same_length(&self, a: &[f64], b: &[f64]) -> ValidationResult<()>

Asserts that two slices have the same length.

§Arguments
  • a - First slice
  • b - Second slice
§Returns

Ok(()) if lengths match, Err(ValidationError::DimensionMismatch) otherwise

Source

pub fn assert_non_empty(&self, values: &[f64]) -> ValidationResult<()>

Asserts that a slice is not empty.

§Arguments
  • values - Slice to check
§Returns

Ok(()) if non-empty, Err(ValidationError::EmptyData) otherwise

Trait Implementations§

Source§

impl Default for DataValidator

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,