petal-decomposition 0.1.1

Principal component analysis (PCA).
Documentation

petal-decomposition

Principal Component Analysis.

crates.io Documentation Coverage Status

Requirements

  • Rust ≥ 1.38

Examples

The following example shows how to apply PCA to an array of three samples, and obtain singular values as well as how much variance each component explains.

use ndarray::arr2;
use petal_decomposition::Pca;

let x = arr2(&[[0_f64, 0_f64], [1_f64, 1_f64], [2_f64, 2_f64]]);
let pca = Pca::new(2);                   // Keep two dimensions.
pca.fit(&x).unwrap();

let s = pca.singular_values();           // [2_f64, 0_f64]
let v = pca.explained_variance_ratio();  // [1_f64, 0_f64]
let y = pca.transform(&x).unwrap();      // [-2_f64.sqrt(), 0_f64, 2_f64.sqrt()]