Skip to contents

Fit the enhanced response envelope model in multivariate linear regression with dimension u.

Usage

eenvlp(X, Y, u, lamb, init = NULL, X.scale = TRUE)

Arguments

X

Predictors. An n by p matrix, p is the number of predictors. The predictors can be univariate or multivariate, discrete or continuous.

Y

Multivariate responses. An n by r matrix, r is the number of responses and n is number of observations. The responses must be continuous variables.

u

Dimension of the envelope. An integer between 0 and r.

lamb

A regularization parameter. A positive value.

init

The user-specified value of Gamma for the envelope subspace. An r by u matrix. The default is the one generated by function envMU.

X.scale

A boolean. If TRUE (the default), then the columns of training X are divided by their standard deviations. If False, no scaling is done.

Details

This function fits the envelope model to the responses and predictors, $$ Y = \mu + \Gamma\eta X+\varepsilon, \Sigma=\Gamma\Omega\Gamma'+\Gamma_{0}\Omega_{0}\Gamma'_{0} $$ using the penalized maximum likelihood estimation. When the dimension of the envelope is between 1 and r-1, the starting value and blockwise coordinate descent algorithm in Cook et al. (2016) is implemented. When the dimension is r, then the envelope model degenerates to the standard multivariate linear regression. When the dimension is 0, it means that X and Y are uncorrelated, and the fitting is different.

Value

The output is a list that contains the following components:

beta

The envelope estimator of the regression coefficients.

Sigma

The envelope estimator of the error covariance matrix.

Gamma

An orthonormal basis of the envelope subspace.

Gamma0

An orthonormal basis of the complement of the envelope subspace.

eta

The coordinates of beta with respect to Gamma.

Omega

The coordinates of Sigma with respect to Gamma.

Omega0

The coordinates of Sigma with respect to Gamma0.

mu

The estimated intercept.

n

The number of observations in the data.

X.center

The numeric centering used.

X.scale

The numeric scaling used. If not used, NULL.

References

Cook, R. D., Forzani, L. and Su, Z. (2016) A Note on Fast Envelope Estimation. Journal of Multivariate Analysis. 150, 42-54.

Examples

data(cereal)
m <- eenvlp(cereal$x, cereal$y, u=1, lamb=1e-07)
m$Gamma
#>            [,1]
#> [1,] -0.6244626
#> [2,]  0.7810547