Skip to contents

This package is intended to provide some basic abstractions and default implementations of basic computational infrastructure for multivariate component-based modeling such as principal components analysis.

The main idea is to model multivariate decompositions as involving projections from an input data space to a lower dimensional component space. This idea is encapsulated by the projector class and the project function. Support for two-way mapping (row projection and column projection) is provided by the derived class bi-projector. Generic functions for common operations are included:

  • project for mapping from input space into (usually) reduced-dimensional output space
  • partial_project for mapping a subset of input space into output space
  • project_vars for mapping new variables (“supplementary variables”) to output space
  • reconstruct for reconstructing input data from its low-dimensional representation
  • residuals for extracting residuals of a fit with n components.


You can install the development version from GitHub with:

# install.packages("devtools")


This is a basic example which shows you how to solve a common problem:

#> Attaching package: 'multivarious'
#> The following object is masked from 'package:stats':
#>     residuals
#> The following object is masked from 'package:base':
#>     truncate
## basic example code