aplus(X,parts=1:NCOL(oneOrDataset(X)),total=NA,warn.na=FALSE,detectionlimit=NULL,BDL=NULL,MAR=NULL,MNAR=NULL,SZ=NULL)
"aplus"
representing a vector of amounts
or a matrix of class "aplus"
representing
multiple vectors of amounts, each vector in one row.acomp
, rcomp
).
Like compositions, amounts have some important properties. Amounts are
always positive. An amount of exactly zero essentially means that we have a
substance of another quality. Different amounts - spanning different
orders of magnitude - are often given in
different units (ppm, ppb, g/l, vol.%, mass %, molar
fraction). Often, these amounts are also taken as indicators of
other non-measured components (e.g. K as indicator for potassium feldspar),
which might be proportional to the measured amount.
However, in contrast to compositions, amounts
themselves do matter. Amounts are typically heavily
skewed and in many practical cases a log-transform makes their
distribution roughly symmetric, even normal.
In full analogy to Aitchison's compositions, vector
space operations are introduced for amounts: the perturbation
perturbe.aplus
as a vector space addition (corresponding
to change of units), the power transformation
power.aplus
as scalar multiplication describing the law
of mass action, and a distance dist
which is
independent of the chosen units. The induced vector space is mapped
isometrically to a classical $R^D$ by a simple log-transformation called
ilt
, resembling classical log transform approaches.
The general approach in analysing aplus objects is thus to perform
classical multivariate analysis on ilt-transformed coordinates (i.e., logs)
and to backtransform or display the results in such a way that they
can be interpreted in terms of the original amounts.
The class aplus is complemented by the rplus
, allowing to
analyse amounts directly as real numbers, and by the classes
acomp
and rcomp
to analyse the same data
as compositions disregarding the total amounts, focusing on relative
weights only.
The classes rcomp, acomp, aplus, and rplus are designed as similar as
possible in order to allow direct comparison between results achieved
by the different approaches. Especially the acomp simplex transforms
clr
, alr
, ilr
are mirrored
in the aplus class by the single bijective isometric transform ilt
ilt
,acomp
, rplus
,
princomp.aplus
,
plot.aplus
, boxplot.aplus
,
barplot.aplus
, mean.aplus
,
var.aplus
, variation.aplus
,
cov.aplus
, msd
data(SimulatedAmounts)
plot(aplus(sa.lognormals))
Run the code above in your browser using DataLab