Type: | Package |
Title: | Simultaneous Inference for Linear Models |
Version: | 1.0.0 |
Date: | 2019-01-05 |
Author: | Xianyang Zhang, Guang Cheng, Jincheng Bai |
Maintainer: | Xianyang Zhang <zhangxiany@stat.tamu.edu> |
Description: | Simultaneous inference procedures for high-dimensional linear models as described by Zhang, X., and Cheng, G. (2017) <doi:10.1080/01621459.2016.1166114>. |
Depends: | scalreg |
DependsNote: | scalreg does not correctly import lars etc, so we need to depend on it |
Imports: | glmnet, hdi, SIS, stats, parallel, utils |
License: | GPL-3 |
NeedsCompilation: | no |
Encoding: | UTF-8 |
Repository: | CRAN |
Packaged: | 2019-01-05 16:17:30 UTC; jinchengbai |
Date/Publication: | 2019-01-09 17:50:36 UTC |
Support Recovery Procedure
Description
This function implements the support recovery procedure in Zhang and Cheng (2017).
Usage
SR(X, Y)
Arguments
X |
n times p design matrix. |
Y |
Response variable. |
Value
The sets of active variables selected by the support recovery procedure and the scaled Lasso.
References
Zhang, X., and Cheng, G. (2017) Simultaneous Inference for High-dimensional Linear Models, Journal of the American Statistical Association, 112, 757-768.
Examples
## The function is intended for large n and p.
## Use small p here for illustration purpose only.
n <- 100
p <- 10
s0 <- 7
set <- 1:s0
Sigma <- matrix(NA, p, p)
for (i in 1:p) Sigma[i,] <- 0.9^(abs(i-(1:p)))
X <- matrix(rnorm(n*p), n, p)
X <- t(t(chol(Sigma))%*%t(X))
beta <- rep(0,p)
beta[1:s0] <- runif(s0,1,2)
Y <- X%*%beta+rt(n,4)/sqrt(2)
SR(X, Y)
Testing for Sparse Signals
Description
This function implements the method for testing sparse signals in Zhang and Cheng (2017).
Usage
ST(X.f, Y.f, sub.size, test.set, M = 500, alpha = 0.05)
Arguments
X.f |
n times p design matrix. |
Y.f |
Response variable. |
sub.size |
The sub-sample size used for screening. |
test.set |
The set of variables of interest. |
M |
The number of bootstrap replications (default 500). |
alpha |
The nominal level alpha (default 0.05). |
Value
Values of the non-studentized and studentized statistics, and whether the tests get rejected at the level alpha.
References
Zhang, X., and Cheng, G. (2017) Simultaneous Inference for High-dimensional Linear Models, Journal of the American Statistical Association, 112, 757-768.
Examples
## The function is intended for large n and p.
## Use small p here for illustration purpose only.
n <- 100
p <- 10
s0 <- 3
set <- 1:s0
Sigma <- matrix(NA, p, p)
for (i in 1:p) Sigma[i,] <- 0.9^(abs(i-(1:p)))
X <- matrix(rnorm(n*p), n, p)
X <- t(t(chol(Sigma))%*%t(X))
beta <- rep(0,p)
beta[1:s0] <- runif(s0,0,2)
Y <- X%*%beta+rt(n,4)/sqrt(2)
test.set <- (s0+1):p
sub.size <- n*0.3
ST(X, Y, sub.size, test.set)
test.set <- s0:p
ST(X, Y, sub.size, test.set)
Simultaneous Confidence Interval
Description
This function implements the method for constructing simultaneous confidence interval in Zhang and Cheng (2017).
Usage
Sim.CI(X, Y, set, M = 500, alpha = 0.95)
Arguments
X |
n times p design matrix. |
Y |
Response variable. |
set |
The set of variables of interest. |
M |
The number of bootstrap replications (default 500). |
alpha |
The nominal level alpha (default 0.95). |
Value
The de-biased Lasso estimator, the confidence bands (lower bound and upper bound) delivered by the non-studentized and the studentized statistics.
References
Zhang, X., and Cheng, G. (2017) Simultaneous Inference for High-dimensional Linear Models, Journal of the American Statistical Association, 112, 757-768.
Examples
## The function is intended for large n and p.
## Use small p here for illustration purpose only.
n <- 100
p <- 10
s0 <- 3
set <- 1:s0
Sigma <- matrix(NA, p, p)
for (i in 1:p) Sigma[i,] <- 0.9^(abs(i-(1:p)))
X <- matrix(rnorm(n*p), n, p)
X <- t(t(chol(Sigma))%*%t(X))
beta <- rep(0,p)
beta[1:s0] <- runif(s0,0,2)
Y <- X%*%beta+rt(n,4)/sqrt(2)
Sim.CI(X, Y, set)
Stepdown Method for Multiple Testing
Description
This function implements the stepdown method in Zhang and Cheng (2017).
Usage
Step(X, Y, M = 500, alpha = 0.05)
Arguments
X |
n times p design matrix. |
Y |
Response variable. |
M |
The number of bootstrap replications (default 500). |
alpha |
The nominal level alpha (default 0.05). |
Value
A vector indicating which hypotheses are being rejected.
References
Zhang, X., and Cheng, G. (2017) Simultaneous Inference for High-dimensional Linear Models, Journal of the American Statistical Association, 112, 757-768.
Examples
## The function is intended for large n and p.
## Use small p here for illustration purpose only.
n <- 100
p <- 10
s0 <- 3
set <- 1:s0
Sigma <- matrix(NA, p, p)
for (i in 1:p) Sigma[i,] <- 0.9^(abs(i-(1:p)))
X <- matrix(rnorm(n*p), n, p)
X <- t(t(chol(Sigma))%*%t(X))
beta <- rep(0,p)
beta[1:s0] <- runif(s0,1,2)
Y <- X%*%beta+rt(n,4)/sqrt(2)
Step(X, Y, M=500, alpha=0.05)