pub fn functional_variance(data: &FdMatrix) -> Result<Vec<f64>, FdarError>Expand description
Compute pointwise sample variance of functional data (Bessel-corrected, ddof = n-1).
For each evaluation point j, computes the sample variance across the n curves:
var[j] = sum_i (data[(i,j)] - mean[j])^2 / (n - 1)
This is a plain pointwise statistic (no integration weights), matching
FDataGrid.var() in scikit-fda.
§Arguments
data- Functional data matrix (n x m), requires n >= 2.
§Returns
Length-m vector of pointwise sample variances.
§Errors
Returns FdarError::InvalidDimension if n < 2 (Bessel correction requires at least
two observations).
§Examples
use fdars_core::matrix::FdMatrix;
use fdars_core::fdata::functional_variance;
let data = FdMatrix::from_column_major(vec![1.0, 3.0, 4.0, 2.0], 2, 2).unwrap();
let var = functional_variance(&data).unwrap();
assert_eq!(var.len(), 2);
assert!((var[0] - 2.0).abs() < 1e-10); // Bessel-corrected variance