From a77a10ea6c607346778ba0700b3b66ac393101a2 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Wed, 27 May 2020 06:06:08 +0200 Subject: Create up to date pkgdown docs in development mode --- docs/dev/reference/ilr.html | 220 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 220 insertions(+) create mode 100644 docs/dev/reference/ilr.html (limited to 'docs/dev/reference/ilr.html') diff --git a/docs/dev/reference/ilr.html b/docs/dev/reference/ilr.html new file mode 100644 index 00000000..245880f2 --- /dev/null +++ b/docs/dev/reference/ilr.html @@ -0,0 +1,220 @@ + + + + + + + + +Function to perform isometric log-ratio transformation — ilr • mkin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + +
+ +
+
+ + +
+

This implementation is a special case of the class of isometric log-ratio +transformations.

+
+ +
ilr(x)
+
+invilr(x)
+ +

Arguments

+ + + + + + +
x

A numeric vector. Naturally, the forward transformation is only +sensible for vectors with all elements being greater than zero.

+ +

Value

+ +

The result of the forward or backward transformation. The returned +components always sum to 1 for the case of the inverse log-ratio +transformation.

+

References

+ +

Peter Filzmoser, Karel Hron (2008) Outlier Detection for +Compositional Data Using Robust Methods. Math Geosci 40 233-248

+

See also

+ +

Another implementation can be found in R package +robCompositions.

+ +

Examples

+
+# Order matters +ilr(c(0.1, 1, 10))
#> [1] -1.628174 -2.820079
ilr(c(10, 1, 0.1))
#> [1] 1.628174 2.820079
# Equal entries give ilr transformations with zeros as elements +ilr(c(3, 3, 3))
#> [1] 0 0
# Almost equal entries give small numbers +ilr(c(0.3, 0.4, 0.3))
#> [1] -0.2034219 0.1174457
# Only the ratio between the numbers counts, not their sum +invilr(ilr(c(0.7, 0.29, 0.01)))
#> [1] 0.70 0.29 0.01
invilr(ilr(2.1 * c(0.7, 0.29, 0.01)))
#> [1] 0.70 0.29 0.01
# Inverse transformation of larger numbers gives unequal elements +invilr(-10)
#> [1] 7.213536e-07 9.999993e-01
invilr(c(-10, 0))
#> [1] 7.207415e-07 9.991507e-01 8.486044e-04
# The sum of the elements of the inverse ilr is 1 +sum(invilr(c(-10, 0)))
#> [1] 1
# This is why we do not need all elements of the inverse transformation to go back: +a <- c(0.1, 0.3, 0.5) +b <- invilr(a) +length(b) # Four elements
#> [1] 4
ilr(c(b[1:3], 1 - sum(b[1:3]))) # Gives c(0.1, 0.3, 0.5)
#> [1] 0.1 0.3 0.5
+
+
+ +
+ + + +
+ + + + + + + + -- cgit v1.2.1