safeColScale: Safe Centering and Scaling of Columns

View source: R/safeColScale.R

safeColScaleR Documentation

Safe Centering and Scaling of Columns

Description

safeColScale() is a safe utility for centering and scaling an input matrix X. It is intended to avoid the drawback of using scale() on data with constant variance by adding a small perturbation to truncate the values in such columns. Also, this is faster than scale() through relying on 'matrixStats for a key internal computation.

Usage

safeColScale(
  X,
  center = TRUE,
  scale = TRUE,
  tol = .Machine$double.eps,
  eps = 0.01
)

Arguments

X

An input matrix to be centered and/or scaled. If X is not of class matrix, then it must be coercible to such.

center

A logical indicating whether to re-center the columns of the input X.

scale

A logical indicating whether to re-scale the columns of the input X.

tol

A tolerance level for the lowest column variance (or standard deviation) value to be tolerated when scaling is desired. The default is set to double.eps of machine precision .Machine.

eps

The desired lower bound of the estimated variance for a given column. When the lowest estimate falls below tol, it is truncated to the value specified in this argument. The default is 0.01.

Value

A centered and/or scaled version of the input data.

Note

This is an un-exported function borrowed directly from scPCA.


cvCovEst documentation built on May 29, 2024, 5:51 a.m.