Skip to main content
`Ctrl`+`K`

# skbio.stats.composition.clr

skbio.stats.composition.clr(mat)

  Perform centre log ratio transformation.

  This function transforms compositions from Aitchison geometry to the real space. The \(clr\) transform is both an isometry and an isomorphism defined on the following spaces:

  \[clr: S^D \rightarrow U\]

  where \(U= \{x :\sum\limits_{i=1}^D x = 0 \; \forall x \in \mathbb{R}^D\}\)

  It is defined for a composition \(x\) as follows:

  \[clr(x) = \ln\left[\frac{x_1}{g_m(x)}, \ldots, \frac{x_D}{g_m(x)}\right]\]

  where \(g_m(x) = (\prod\limits_{i=1}^{D} x_i)^{1/D}\) is the geometric mean of \(x\).

  Parameters:
    mat array_like of shape (n_compositions, n_components)

      A matrix of proportions.

  Returns:
    ndarray of shape (n_compositions, n_components)

      Clr-transformed matrix.

  Examples

      >>> import numpy as np
      >>> from skbio.stats.composition import clr
      >>> x = np.array([.1, .3, .4, .2])
      >>> clr(x)
      array([-0.79451346,  0.30409883,  0.5917809 , -0.10136628])