scale {compositions} | R Documentation |

## Normalizing datasets by centering and scaling

### Description

The dataset is standardized by optional scaling and centering.

### Usage

```
scale(x, center = TRUE, scale = TRUE,...)
## Default S3 method:
scale(x,center=TRUE, scale=TRUE,...)
## S3 method for class 'acomp'
scale(x,center=TRUE, scale=TRUE,...,robust=getOption("robust"))
## S3 method for class 'rcomp'
scale(x,center=TRUE, scale=TRUE,...,robust=getOption("robust"))
## S3 method for class 'aplus'
scale(x,center=TRUE, scale=TRUE,...,robust=getOption("robust"))
## S3 method for class 'rplus'
scale(x,center=TRUE, scale=TRUE,...,robust=getOption("robust"))
## S3 method for class 'rmult'
scale(x,center=TRUE, scale=TRUE,...,robust=getOption("robust"))
```

### Arguments

`x` |
a dataset or a single vector of some type |

`center` |
logical value or the center to be substracted. |

`scale` |
logical value or a scaling factor to for multiplication. |

`robust` |
A robustness description. See robustnessInCompositions for details. |

`...` |
added for generic generality |

### Details

scaling is defined in different ways for the different data types. It is always performed as an operation in the enclosing vector space. In all cases an independent scaling of the different coordinates is not always appropriate. This is only done for rplus and rmult geometries. The other three geometries are treated with a global scaling, keeping the relative variations of every part/amount.

The scaling factors can be a matrix (for cdt or idt space), a scalar, or for the r* geometries vector for scaling the entries individually. However scaling the entries individually does not make sense in the a* geometries. The operation achieve in the r*-geometries is indeed the centering of the a*-geometries.

### Value

a vector or data matrix, as `x`

and with the same class, but acordingly transformed.

### Note

Note that the `"rcomp"`

and `"rplus"`

objects does not
preserve their
geometry during scaling and are therefore reported as `"rmult"`

objects.

See the documentation in package base for details on
`base::scale`

and `base::scale.default`

These functions are only modified
to allow the additional robustness parameter.

### Author(s)

K.Gerald v.d. Boogaart http://www.stat.boogaart.de

### See Also

`split{base}`

### Examples

```
data(SimulatedAmounts)
plot(scale(acomp(sa.groups)))
## Not run:
plot(scale(rcomp(sa.groups)))
## End(Not run)
plot(scale(aplus(sa.groups)))
## Not run:
plot(scale(rplus(sa.groups)))
## End(Not run)
plot(scale(rmult(sa.groups)))
```

*compositions*version 2.0-8 Index]