Expand description
§fdars-core
Core algorithms for Functional Data Analysis in Rust.
This crate provides pure Rust implementations of various FDA methods including:
- Functional data operations (mean, derivatives, norms)
- Depth measures (Fraiman-Muniz, modal, band, random projection, etc.)
- Distance metrics (Lp, Hausdorff, DTW, Fourier, etc.)
- Basis representations (B-splines, P-splines, Fourier)
- Clustering (k-means, fuzzy c-means)
- Smoothing (Nadaraya-Watson, local linear/polynomial regression)
- Outlier detection
- Regression (PCA, PLS, ridge)
- Seasonal analysis (period estimation, peak detection, seasonal strength)
- Detrending and decomposition for non-stationary data
§Data Layout
Functional data is represented using the FdMatrix type, a column-major matrix
wrapping a flat Vec<f64> with safe (i, j) indexing and dimension tracking:
- For n observations with m evaluation points:
data[(i, j)]gives observation i at point j - 2D surfaces (n observations, m1 x m2 grid): stored as n x (m1*m2) matrices
- Zero-copy column access via
data.column(j), row gather viadata.row(i) - nalgebra interop via
to_dmatrix()/from_dmatrix()for SVD operations
Re-exports§
pub use matrix::FdMatrix;pub use helpers::extract_curves;pub use helpers::l2_distance;pub use helpers::simpsons_weights;pub use helpers::simpsons_weights_2d;pub use helpers::DEFAULT_CONVERGENCE_TOL;pub use helpers::NUMERICAL_EPS;pub use seasonal::autoperiod;pub use seasonal::autoperiod_fdata;pub use seasonal::cfd_autoperiod;pub use seasonal::cfd_autoperiod_fdata;pub use seasonal::hilbert_transform;pub use seasonal::sazed;pub use seasonal::sazed_fdata;pub use seasonal::AutoperiodCandidate;pub use seasonal::AutoperiodResult;pub use seasonal::CfdAutoperiodResult;pub use seasonal::ChangeDetectionResult;pub use seasonal::ChangePoint;pub use seasonal::ChangeType;pub use seasonal::DetectedPeriod;pub use seasonal::InstantaneousPeriod;pub use seasonal::Peak;pub use seasonal::PeakDetectionResult;pub use seasonal::PeriodEstimate;pub use seasonal::SazedComponents;pub use seasonal::SazedResult;pub use seasonal::StrengthMethod;pub use detrend::DecomposeResult;pub use detrend::TrendResult;pub use simulation::EFunType;pub use simulation::EValType;pub use irreg_fdata::IrregFdata;pub use streaming_depth::FullReferenceState;pub use streaming_depth::RollingReference;pub use streaming_depth::SortedReferenceState;pub use streaming_depth::StreamingBd;pub use streaming_depth::StreamingDepth;pub use streaming_depth::StreamingFraimanMuniz;pub use streaming_depth::StreamingMbd;
Modules§
- basis
- Basis representation functions for functional data.
- clustering
- Clustering algorithms for functional data.
- depth
- Depth measures for functional data.
- detrend
- Detrending and decomposition functions for non-stationary functional data.
- fdata
- Functional data operations: mean, center, derivatives, norms, and geometric median.
- helpers
- Helper functions for numerical integration and common operations.
- irreg_
fdata - Irregular functional data operations.
- matrix
- Column-major matrix type for functional data analysis.
- metric
- Distance metrics and semimetrics for functional data.
- outliers
- Outlier detection for functional data.
- parallel
- Parallel iteration abstraction for WASM compatibility.
- regression
- Regression functions for functional data.
- seasonal
- Seasonal time series analysis for functional data.
- simulation
- Simulation functions for functional data.
- smoothing
- Smoothing functions for functional data.
- streaming_
depth - Streaming / online depth computation for functional data.
- utility
- Utility functions for functional data analysis.
Macros§
- iter_
maybe_ parallel - Macro for conditionally parallel iteration over ranges.
- maybe_
par_ chunks_ mut - Macro for parallel/sequential chunks iteration on mutable slices.
- maybe_
par_ chunks_ mut_ enumerate - Macro for enumerated parallel/sequential chunks iteration.
- slice_
maybe_ parallel - Macro for conditionally parallel reference iteration over slices.
- slice_
maybe_ parallel_ mut - Macro for conditionally parallel mutable iteration over slices.