Compute the isometric planar transform of a (dataset of) composition(s) and its inverse.
ipt( x , V = ilrBase(x),... )
          iptInv( z , V = ilrBase(z=z),...,orig=gsi.orig(z))
          uciptInv( z , V = ilrBase(z=z),...,orig=gsi.orig(z) )a composition or a data matrix of compositions, not necessarily closed
the ipt-transform of a composition or a data matrix of ipt-transforms of compositions
a matrix with columns giving the chosen basis of the clr-plane
generic arguments. not used.
a compositional object which should be mimicked by the inverse transformation. It is especially used to reconstruct the names of the parts.
ipt gives the centered planar transform,
  iptInv gives closed compositions with with the given ipt-transforms,
  uciptInv unconstrained iptInv does the same as iptInv but
  sets illegal values to NA rather than giving an error. This is a
  workaround to allow procedures not honoring the constraints of the
  space.
The ipt-transform maps a composition in the D-part real-simplex isometrically to a D-1 dimensonal euclidian vector. Although the transformation does not reach the whole \(R^{D-1}\), resulting covariance matrices are typically of full rank.
The data can then
  be analysed in this transformation by all classical multivariate
  analysis tools. However, interpretation of results may be
  difficult, since the
  transform does not keep the variable names, given that there is no
  one-to-one relation between the original parts and each transformed variables. See
  cpt and apt for alternatives.
The isometric planar transform is given by
    $$ ipt(x) := V^t cpt(x)  $$
  with cpt(x) the centred planar transform and
  \(V\in R^{d \times (d-1)}\) a matrix which columns form an orthonormal 
  basis of the clr-plane. A default matrix \(V\) is given by
  ilrBase(D)
van den Boogaart, K.G. and R. Tolosana-Delgado (2008) "compositions": a unified R package to analyze Compositional Data, Computers & Geosciences, 34 (4), pages 320-338, doi:10.1016/j.cageo.2006.11.017.
# NOT RUN {
(tmp <- ipt(c(1,2,3)))
iptInv(tmp)
iptInv(tmp) - clo(c(1,2,3)) # 0
data(Hydrochem)
cdata <- Hydrochem[,6:19]
pairs(ipt(cdata)) 
# }
Run the code above in your browser using DataLab