<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>ilr. mkin 0.9.44.9000</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="
René Lehmann and Johannes Ranke
">
<link href="css/bootstrap.css" rel="stylesheet">
<link href="css/bootstrap-responsive.css" rel="stylesheet">
<link href="css/highlight.css" rel="stylesheet">
<link href="css/staticdocs.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [ ['$','$'], ["\\(","\\)"] ],
processEscapes: true
}
});
</script>
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head>
<body>
<div class="navbar">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="index.html">mkin 0.9.44.9000</a>
<div class="nav">
<ul class="nav">
<li><a href="index.html">Home</a></li>
<li><a href="reference.html">Reference</a></li>
</ul>
</div>
</div>
</div>
</div>
<div class="container">
<header>
</header>
<h1>
Function to perform isometric log-ratio transformation
</h1>
<div class="row">
<div class="span8">
<h2>Usage</h2>
<pre><span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="symbol">x</span><span class="keyword">)</span>
<span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="symbol">x</span><span class="keyword">)</span></pre>
<h2>Arguments</h2>
<dl>
<dt>x</dt>
<dd>
A numeric vector. Naturally, the forward transformation is only sensible for
vectors with all elements being greater than zero.
</dd>
</dl>
<div class="Description">
<h2>Description</h2>
<p>This implementation is a special case of the class of isometric log-ratio transformations.</p>
</div>
<div class="Value">
<h2>Value</h2>
<p><dl>
The result of the forward or backward transformation. The returned components always
sum to 1 for the case of the inverse log-ratio transformation.
</dl></p>
</div>
<div class="References">
<h2>References</h2>
<p>Peter Filzmoser, Karel Hron (2008) Outlier Detection for Compositional Data Using Robust Methods. Math Geosci 40 233-248</p>
</div>
<h2 id="examples">Examples</h2>
<pre class="examples"><div class='input'><span class="comment"># Order matters</span>
<span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">0.1</span><span class="keyword">,</span> <span class="number">1</span><span class="keyword">,</span> <span class="number">10</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] -1.628174 -2.820079
</div>
<div class='input'><span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">10</span><span class="keyword">,</span> <span class="number">1</span><span class="keyword">,</span> <span class="number">0.1</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 1.628174 2.820079
</div>
<div class='input'><span class="comment"># Equal entries give ilr transformations with zeros as elements</span>
<span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">3</span><span class="keyword">,</span> <span class="number">3</span><span class="keyword">,</span> <span class="number">3</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 0 0
</div>
<div class='input'><span class="comment"># Almost equal entries give small numbers</span>
<span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">0.3</span><span class="keyword">,</span> <span class="number">0.4</span><span class="keyword">,</span> <span class="number">0.3</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] -0.2034219 0.1174457
</div>
<div class='input'><span class="comment"># Only the ratio between the numbers counts, not their sum</span>
<span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">0.7</span><span class="keyword">,</span> <span class="number">0.29</span><span class="keyword">,</span> <span class="number">0.01</span><span class="keyword">)</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 0.70 0.29 0.01
</div>
<div class='input'><span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="number">2.1</span> <span class="keyword">*</span> <span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">0.7</span><span class="keyword">,</span> <span class="number">0.29</span><span class="keyword">,</span> <span class="number">0.01</span><span class="keyword">)</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 0.70 0.29 0.01
</div>
<div class='input'><span class="comment"># Inverse transformation of larger numbers gives unequal elements</span>
<span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="keyword">-</span><span class="number">10</span><span class="keyword">)</span></div>
<div class='output'>[1] 7.213536e-07 9.999993e-01
</div>
<div class='input'><span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="keyword">-</span><span class="number">10</span><span class="keyword">,</span> <span class="number">0</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 7.207415e-07 9.991507e-01 8.486044e-04
</div>
<div class='input'><span class="comment"># The sum of the elements of the inverse ilr is 1</span>
<span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/sum'>sum</a></span><span class="keyword">(</span><span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="keyword">-</span><span class="number">10</span><span class="keyword">,</span> <span class="number">0</span><span class="keyword">)</span><span class="keyword">)</span><span class="keyword">)</span></div>
<div class='output'>[1] 1
</div>
<div class='input'><span class="comment"># This is why we do not need all elements of the inverse transformation to go back:</span>
<span class="symbol">a</span> <span class="assignement"><-</span> <span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="number">0.1</span><span class="keyword">,</span> <span class="number">0.3</span><span class="keyword">,</span> <span class="number">0.5</span><span class="keyword">)</span>
<span class="symbol">b</span> <span class="assignement"><-</span> <span class="functioncall"><a href='ilr.html'>invilr</a></span><span class="keyword">(</span><span class="symbol">a</span><span class="keyword">)</span>
<span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/length'>length</a></span><span class="keyword">(</span><span class="symbol">b</span><span class="keyword">)</span> <span class="comment"># Four elements</span></div>
<div class='output'>[1] 4
</div>
<div class='input'><span class="functioncall"><a href='ilr.html'>ilr</a></span><span class="keyword">(</span><span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/c'>c</a></span><span class="keyword">(</span><span class="symbol">b</span><span class="keyword">[</span><span class="number">1</span><span class="keyword">:</span><span class="number">3</span><span class="keyword">]</span><span class="keyword">,</span> <span class="number">1</span> <span class="keyword">-</span> <span class="functioncall"><a href='http://www.rdocumentation.org/packages/base/topics/sum'>sum</a></span><span class="keyword">(</span><span class="symbol">b</span><span class="keyword">[</span><span class="number">1</span><span class="keyword">:</span><span class="number">3</span><span class="keyword">]</span><span class="keyword">)</span><span class="keyword">)</span><span class="keyword">)</span> <span class="comment"># Gives c(0.1, 0.3, 0.5)</span></div>
<div class='output'>[1] 0.1 0.3 0.5
</div></pre>
</div>
<div class="span4 sidebar">
<!-- <ul>
<li>ilr</li><li>invilr</li>
</ul>
<ul>
<li> manip </li>
</ul> -->
<h2>See also</h2>
<p>Another implementation can be found in R package <code>robCompositions</code>.</p>
<h2>Author</h2>
René Lehmann and Johannes Ranke
</div>
</div>
<footer>
<p class="pull-right"><a href="#">Back to top</a></p>
<p>Built by <a href="https://github.com/hadley/staticdocs">staticdocs</a>. Styled with <a href="https://getbootstrap.com/2.0.4/">bootstrap</a>.</p>
</footer>
</div>
</body>
</html>