stdize: Centering and scaling of matrices

Description Usage Arguments Details Value Author(s) See Also Examples

Description

Function to center and/or scale the coloumns of a matrix in various ways. The coloumns can be centered with their means or with supplied values, and they can be scaled with their standard deviations or with supplied values.

Usage

1
stdize(x, center = TRUE, scale = TRUE, avoid.zero.divisor = FALSE)

Arguments

x

A matrix.

center

A logical, or a numeric vector. The values to subtract from each column. If center is TRUE, the mean values are used.

scale

A lgical, or a numeric vector. The values to divide each column with. If scale is TRUE, the standard deviations are used.

avoid.zero.divisor

A logical. If TRUE, each occurence of 0 in scale is replaced with a 1.

Details

stdize standardizes the coloumns of a matrix by subtracting their means (or the supplied values) and dividing by their standard deviations (or the supplied values).

If avoid.zero.divisor is TRUE, division-by-zero is guarded against by substituting any 0 in center (either calculated or supplied) with 1 prior to division.

The main difference between stdize and scale is that stdize divides by the standard deviations even when center is not TRUE.

Value

A matrix.

Author(s)

Bjørn-Helge Mevik and Øyvind Langsrud

See Also

scale

Examples

1
2
3
4
5
6
A <- matrix(rnorm(15, mean = 1), ncol = 3)
stopifnot(all.equal(stdize(A), scale(A), check.attributes = FALSE))

## These are different:
stdize(A, center = FALSE)
scale(A, center = FALSE)


Search within the ffmanova package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.