scale R Documentation

## Scaling and Centering of Matrix

### Description

`scale` centers and/or scales the columns of a FlashR matrix.

### Usage

```## S4 method for signature 'fm'
scale(x, center = TRUE, scale = TRUE)
```

### Arguments

 `x` a FlashR matrix `center` either a logical value or a numeric vector of length equal to the number of columns of `x`. `sclae` either a logical value or a numeric vector of length equal to the number of columns of `x`.

### Details

The value of `center` determines how column centering is performed. If `center` is a numeric vector with length equal to the number of columns of `x`, then each column of `x` has the corresponding value from `center` subtracted from it. If `center` is `TRUE` then centering is done by subtracting the column means (omitting `NA`s) of `x` from their corresponding columns, and if `center` is `FALSE`, no centering is done.

The value of `scale` determines how column scaling is performed (after centering). If `scale` is a numeric vector with length equal to the number of columns of `x`, then each column of `x` is divided by the corresponding value from `scale`. If `scale` is `TRUE` then scaling is done by dividing the (centered) columns of `x` by their standard deviations if `center` is `TRUE`, and the root mean square otherwise. If `scale` is `FALSE`, no scaling is done.

The root-mean-square for a (possibly centered) column is defined as sqrt(sum(x^2)/(n-1)), where x is a vector of the non-missing values and n is the number of non-missing values. In the case `center = TRUE`, this is the same as the standard deviation, but in general it is not.

a FlashR matrix.

### Author(s)

Da Zheng <dzheng5@jhu.edu>

### Examples

```mat <- fm.runif.matrix(100, 10)
mat <- scale(mat)
```