Compute the isometric default transform of a vector (or dataset) of compositions or amounts in the selected class.
idt(x,...)
# S3 method for default
idt( x,... )
# S3 method for acomp
idt( x ,...)
# S3 method for rcomp
idt( x ,...)
# S3 method for aplus
idt( x ,...)
# S3 method for rplus
idt( x ,...)
# S3 method for rmult
idt( x ,...)
# S3 method for ccomp
idt( x ,...)
# S3 method for factor
idt( x ,...)
# S3 method for data.frame
idt( x ,...)
idtInv(x,orig=gsi.orig(x),...)
# S3 method for default
idtInv( x ,orig=gsi.orig(x),...)
# S3 method for acomp
idtInv( x ,orig=gsi.orig(x), V=gsi.getV(x),...)
# S3 method for rcomp
idtInv( x ,orig=gsi.orig(x), V=gsi.getV(x),...)
# S3 method for aplus
idtInv( x ,orig=gsi.orig(x),...)
# S3 method for rplus
idtInv( x ,orig=gsi.orig(x),...)
# S3 method for ccomp
idtInv( x ,orig=gsi.orig(x),...)
# S3 method for rmult
idtInv( x ,orig=gsi.orig(x),...)
# S3 method for factor
idtInv( x ,orig=gsi.orig(x), V=gsi.getV(x),...)
# S3 method for data.frame
idtInv( x , orig=gsi.orig(x), ...)a classed amount or composition, to be transformed with its
isometric default transform, or its inverse; in case of the method for data.frame
objects, the function attempts to track information about a previous class (in an attribute
origClass, and if found, a transformation is tried with it; for factors, idt expands
the factor according to the contrasts represented by V, or vice-versa.)
generic arguments past to underlying functions
a compositional object which should be mimicked
by the inverse transformation. It is the generic
argument. Typically the orig argument is stored as an attribute
in x and will be extracted automatically by this function; if this
fails, orig can be set equal to the dataset that
was transformed in the first place.
matrix of (transposed, inverted) logcontrasts;
together with orig, it defines the back-transformation.
Typically the V argument is stored as an attribute
in x and will be extracted automatically by this function; if this
fails, V must be manually set to the matrix V used in the idt/ilr/ipt
calculations. Argument not used in amounts or counts geometries.
A corresponding matrix of row-vectors containing the transforms. (Exception: idt.data.frame can return a data.frame if the input has no "origClass"-attribute)
The general idea of this package is to analyse the same data with
different geometric concepts, in a fashion as similar as possible. For each of the
four concepts there exists an isometric transform expressing the geometry
in a full-rank euclidean vector space. Such a transformation is computed
by idt. For acomp the transform is ilr, for
rcomp it is ipt, for
aplus it is ilt, and for
rplus it is iit. Keep in mind that the
transform does not keep the variable names, since there is no guaranteed
one-to-one relation between the original parts and each transformed
variable.
The inverse idtInv is intended to allow for an "easy" and automatic
back-transformation, without intervention of the user. The argument orig
(the one determining the behaviour of idtInv as a generic function)
tells the function which back-transformation should be applied, and
gives the column names of orig to the back-transformed
values of x. Therefore, it is very conventient to give the original classed
data set used in the analysis as orig.
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, 10.1016/j.cageo.2006.11.017.
backtransform, cdt, ilr, ipt,
ilt, cdtInv, ilrInv, iptInv,
iltInv, iitInv
# NOT RUN {
# the idt is defined by
idt <- function(x) UseMethod("idt",x)
idt.default <- function(x) x
idt.acomp <- function(x) ilr(x)
idt.rcomp <- function(x) ipt(x)
idt.aplus <- ilt
idt.rplus <- iit
# }
# NOT RUN {
idt(acomp(1:5))
idt(rcomp(1:5))
data(Hydrochem)
x = Hydrochem[,c("Na","K","Mg","Ca")]
y = acomp(x)
z = idt(y)
y2 = idtInv(z,y)
par(mfrow=c(2,2))
for(i in 1:4){plot(y[,i],y2[,i])}
# }
Run the code above in your browser using DataLab