oxits 0.1.0

Time series classification and transformation library for Rust
Documentation
/// Binning strategy for discretization.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum BinStrategy {
    Uniform,
    Quantile,
    Normal,
}

/// Gramian Angular Field method.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum GafMethod {
    Summation,
    Difference,
}

/// DTW constraint method.
#[derive(Debug, Clone, Copy, PartialEq)]
pub enum DtwMethod {
    Classic,
    SakoeChibaBand { window_size: usize },
    ItakuraParallelogram { max_slope: f64 },
    Multiscale { resolution: usize, radius: usize },
    Fast { resolution: usize, radius: usize },
}

/// Distance kind for recurrence plots and other pairwise computations.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum DistanceKind {
    Squared,
    Absolute,
}

/// Normalization strategy for scalers.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum NormStrategy {
    Mean,
    MinMax,
    MaxAbs,
}

/// Power transformation method.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum PowerMethod {
    BoxCox,
    YeoJohnson,
}

/// Word extraction strategy for numerosity reduction.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum NumerosityReduction {
    None,
    IdenticalConsecutive,
}

/// TF-IDF variant.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum TfIdfVariant {
    /// Raw term frequency
    Tf,
    /// Term frequency with inverse document frequency
    TfIdf,
    /// Sublinear TF scaling (1 + log(tf))
    SublinearTfIdf,
}

/// SSA grouping strategy.
#[derive(Debug, Clone, PartialEq)]
pub enum SsaGrouping {
    /// No grouping: return each component separately
    None,
    /// Automatic grouping via periodogram analysis
    Auto,
    /// Explicit grouping: each inner vec is a group of component indices
    Explicit(Vec<Vec<usize>>),
}

/// Recurrence plot metric.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum RecurrenceMetric {
    Euclidean,
    Supreme,
}

/// ROCKET aggregation method.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum RocketAggregation {
    MaxAndPpv,
    MaxOnly,
    PpvOnly,
}