Learn R Programming

dimensio

Overview

Simple Principal Components Analysis (PCA; see vignette("pca")) and (Multiple) Correspondence Analysis (CA) based on the Singular Value Decomposition (SVD). This package provides S4 classes and methods to compute, extract, summarize and visualize results of multivariate data analysis. It also includes methods for partial bootstrap validation.

There are many very good packages for multivariate data analysis (such as FactoMineR, ade4, vegan or ca, all extended by FactoExtra). dimensio is designed to be as simple as possible, providing all the necessary tools to explore the results of the analysis.


To cite dimensio in publications use:

Frerebeau N (2025). dimensio: Multivariate Data Analysis. Université Bordeaux Montaigne, Pessac, France. doi:10.5281/zenodo.4478530 https://doi.org/10.5281/zenodo.4478530, R package version 0.12.0, https://packages.tesselle.org/dimensio/.

This package is a part of the tesselle project https://www.tesselle.org.

Installation

You can install the released version of dimensio from CRAN with:

install.packages("dimensio")

And the development version from Codeberg with:

# install.packages("remotes")
remotes::install_git("https://codeberg.org/tesselle/dimensio")

Usage

## Load package
library(dimensio)

Compute

## Load data
data(iris)

## Compute PCA
X <- pca(iris, center = TRUE, scale = TRUE, sup_quali = "Species")

Extract

dimensio provides several methods to extract the results:

  • get_data() returns the original data.
  • get_contributions() returns the contributions to the definition of the principal dimensions.
  • get_coordinates() returns the principal or standard coordinates.
  • get_correlations() returns the correlations between variables and dimensions.
  • get_cos2() returns the cos2 values (i.e. the quality of the representation of the points on the factor map).
  • get_eigenvalues() returns the eigenvalues, the percentages of variance and the cumulative percentages of variance.

Visualize

The package allows to quickly visualize the results:

  • biplot() produces a biplot.
  • screeplot() produces a scree plot.
  • viz_rows()/viz_individuals() displays row/individual principal coordinates.
  • viz_columns()/viz_variables() displays columns/variable principal coordinates. viz_variables() depicts the variables by rays emanating from the origin (both their lengths and directions are important to the interpretation).
  • viz_contributions() displays (joint) contributions.
  • viz_cos2() displays (joint) cos2.

The viz_*() functions allow to highlight additional information by varying different graphical elements (color, transparency, shape and size of symbols…).

## Form biplot
biplot(X, type = "form")
## Highlight species
viz_individuals(
  x = X, 
  extra_quali = iris$Species,
  color = c("#004488", "#DDAA33", "#BB5566"),
  ellipse = list(type = "tolerance", level = 0.95) # Add ellipses
)

## Highlight petal length
viz_individuals(
  x = X,
  extra_quanti = iris$Petal.Length,
  color = color("iridescent")(255), 
  size = c(1, 3)
)

## Plot variables factor map
viz_variables(X)

## Scree plot
screeplot(X, eigenvalues = FALSE, cumulative = TRUE)

Translation

This package provides translations of user-facing communications, like messages, warnings and errors, and graphical elements (axis labels). The preferred language is by default taken from the locale. This can be overridden by setting of the environment variable LANGUAGE (you only need to do this once per session):

Sys.setenv(LANGUAGE = "<language code>")

Languages currently available are English (en) and French (fr).

Contributing

Please note that the dimensio project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

References

Aitchison, John, and Michael Greenacre. 2002. “Biplots of Compositional Data.” Journal of the Royal Statistical Society: Series C (Applied Statistics) 51 (4): 375–92. https://doi.org/10.1111/1467-9876.00275.

Gower, J. C. 1966. “Some Distance Properties of Latent Root and Vector Methods Used in Multivariate Analysis.” Biometrika 53 (3-4): 325–38. https://doi.org/10.1093/biomet/53.3-4.325.

Greenacre, Michael J. 1984. Theory and Applications of Correspondence Analysis. London ; Orlando, Fla: Academic Press.

———. 2007. Correspondence Analysis in Practice. Seconde edition. Interdisciplinary Statistics Series. Boca Raton: Chapman & Hall/CRC.

———. 2010. Biplots in Practice. Bilbao: Fundación BBVA.

Lebart, Ludovic, Marie Piron, and Alain Morineau. 2006. Statistique exploratoire multidimensionnelle : Visualisations et inférences en fouilles de données.

Lockyear, Kris. 2013. “Applying Bootstrapped Correspondence Analysis to Archaeological Data.” Journal of Archaeological Science 40 (12): 4744–53. https://doi.org/10.1016/j.jas.2012.08.035.

Ringrose, T. J. 1992. “Bootstrapping and Correspondence Analysis in Archaeology.” Journal of Archaeological Science 19 (6): 615–29. https://doi.org/10.1016/0305-4403(92)90032-X.

Copy Link

Version

Install

install.packages('dimensio')

Monthly Downloads

627

Version

0.12.0

License

GPL (>= 3)

Maintainer

Nicolas Frerebeau

Last Published

February 25th, 2025

Functions in dimensio (0.12.0)

colours

Colours
countries

Countries
dimensio-deprecated

Deprecated Functions in dimensio
describe

Object Description
ca

Correspondence Analysis
dimensio-defunct

Defunct Functions in dimensio
dimensio-package

dimensio: Multivariate Data Analysis
viz_contributions

Visualize Contributions and cos2
viz_biplot

Build a Biplot
label

Non-Overlapping Text Labels
mca

Multiple Correspondence Analysis
bootstrap

Partial Bootstrap Analysis
cdt

Complete Disjunctive Table
prepare_legend

Build a Legend
screeplot

Scree Plot
get_contributions

Get Contributions
viz_variables

Visualize Variables Factor Map
reexports

Objects exported from other packages
prepare_plot

Prepare Data for Plotting
get_coordinates

Get Coordinates
wrap

Wrap Observations
get_data

Get Original Data
get_eigenvalues

Get Eigenvalues
burt

Burt Table
subset

Extract Parts of an Object
export

Export Results
summary

Object Summaries
dimnames

Dimnames of an Object
svd2

Singular Value Decomposition of a Matrix
tidy

Tidy Coordinates
pca

Principal Components Analysis
pcoa

Principal Coordinates Analysis
plot

Plot Coordinates
viz_individuals

Visualize Individuals Factor Map
viz_ellipses

Plot Envelopes
predict

Predict New Coordinates
viz_points

Build a Factor Map
viz_labels

Non-Overlapping Text Labels
PCA-class

PCA Results
biplot

Biplot
BootstrapPCA-class

Bootstrap PCA Results
benthos

Benthos
MCA-class

MCA Results
BootstrapCA-class

Bootstrap CA Results
MultivariateAnalysis

Output of Multivariate Data Analysis
MultivariateBootstrap

Output of Bootstrap Replications
CA-class

CA Results
MultivariateSummary

Summary of Multivariate Data Analysis
PCOA-class

PCoA Results
MultivariateResults

Multivariate Data Analysis Results