Expand description
Multi-domain functional data container.
MultiFunData holds several FdComponent blocks that may live on
different domains/grids (the multi-domain feature). The only shared
invariant across components is that they must all have the same number of
observations (rows). Each component carries its own evaluation grid
(argvals), whose length must equal the number of columns in its
FdMatrix.
This mirrors the funData::multiFunData capability from the R funData
package (REP-01 SC2).
§Examples
use fdars_core::matrix::FdMatrix;
use fdars_core::multi_fdata::{FdComponent, MultiFunData};
// Two components: 5 observations on different grids (10-point and 4-point).
let data1 = FdMatrix::zeros(5, 10);
let argvals1: Vec<f64> = (0..10).map(|i| i as f64 / 9.0).collect();
let comp1 = FdComponent { data: data1, argvals: argvals1 };
let data2 = FdMatrix::zeros(5, 4);
let argvals2: Vec<f64> = vec![0.0, 1.0, 2.0, 3.0];
let comp2 = FdComponent { data: data2, argvals: argvals2 };
let mfd = MultiFunData::new(vec![comp1, comp2]).unwrap();
assert_eq!(mfd.n_obs(), 5);
assert_eq!(mfd.n_components(), 2);Structs§
- FdComponent
- A single component of a
MultiFunDataobject. - Multi
FunData - Multi-domain functional data container.