Learn R Programming

SSLASSO (version 1.2.3)

standard: Standardizes a design matrix

Description

The function `standard` accepts a design matrix and returns a standardized version of that matrix (i.e., each column will have mean 0 and mean sum of squares equal to 1). The code has been adapted from the `ncvreg` package (Breheny and Huang, 2011).

Usage

standard(X)

Value

A standardized matrix with attributes for center, scale, and non-singular columns.

Arguments

X

A matrix (or object that can be coerced to a matrix, such as a data frame).

Details

This function centers and scales each column of `X` so that $$\sum_{i=1}^n x_{ij}=0$$ and $$\sum_{i=1}^n x_{ij}^2 = n$$ for all j. This is usually not necessary to call directly, as `SSLASSO` internally standardizes the design matrix, but inspection of the standardized design matrix can sometimes be useful. This differs from the base R function `scale` in two ways: (1) `scale` uses the sample standard deviation `sqrt(sum(x^2)/(n-1))`, while `standard` uses the root-mean-square, or population, standard deviation `sqrt(mean(sum(x^2)))`, and (2) `standard` is faster. The reason for using the population standard deviation is that `SSLASSO` assumes that the columns of the design matrix have been scaled to have norm `sqrt(n)`.