mv_pca — MULTIVAR analysis op

• Data kinds: matrix → table

• Call: import fullseye as fs; fs.ledger.mv_pca(X=None, standardize=True, n_components=None, threshold=0.9, n_parallel=200, parallel_stat='mean', seed=0) -> 'dict' (to call the implementation directly, import multivar; multivar.mv_pca(X=None, standardize=True, n_components=None, threshold=0.9, n_parallel=200, parallel_stat='mean', seed=0) -> 'dict'; from the registry, opsmultivar.get("mv_pca"))

Usage

Principal components of a table (samples x variables) and how many of them the data support.

PCA is the SVD of the centred (by default also unit-variance) matrix Xc = U S V^T: scores U S, loadings V, eigenvalues S^2/(n-1) (the covariance or correlation eigenvalues — the tests check this identity).

The number of components is reported three ways, because each fails differently:

• cumulative — the smallest count reaching threshold of the variance (a convention, not a test: with many noisy columns it keeps noise);

• parallel — Horn's parallel analysis (Horn 1965): keep component i while its eigenvalue exceeds the parallel_stat ("mean" as in Horn, or "p95") of the i-th eigenvalue of n_parallel normal random tables of the same shape treated the same way;

• mdl — the MDL criterion of Wax & Kailath 1985 (mathspectral.n_sources_mdl, reused) on the centred data; it assumes white noise of equal variance in every column, which standardising breaks, so it is computed only with standardize=False (homogeneous columns: pixels, features in one unit) and is None otherwise.

n_components fixes how many scores/loadings to return (default: the parallel count, at least 1). Accepts a matrix or a feat_image_vector table.

Detailed usage guide

• design_of_experiments family guide

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• multivar_inspection_tour — py -3.11 examples/multivar_inspection_tour.py

• poc_simcal_thin_film — py -3.11 examples/poc_simcal_thin_film.py

Ops the type connects to (they accept table as input)

—

Same category (analysis)

mv_pls · rsm_fit · doe_main_effects


*Provenance: multivar.py — MULTIVAR operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.