Inference for linear combination of the regression vector in high dimensional generalized linear regression

LF(
  X,
  y,
  loading.mat,
  model = c("linear", "logistic", "logistic_alter"),
  intercept = TRUE,
  intercept.loading = FALSE,
  beta.init = NULL,
  lambda = NULL,
  mu = NULL,
  prob.filter = 0.05,
  rescale = 1.1,
  verbose = FALSE
)

Arguments

X

Design matrix, of dimension \(n\) x \(p\)

y

Outcome vector, of length \(n\)

loading.mat

Loading matrix, nrow=\(p\), each column corresponds to a loading of interest

model

The high dimensional regression model, either "linear" or "logistic" or "logistic_alter"

intercept

Should intercept be fitted for the initial estimator (default = TRUE)

intercept.loading

Should intercept term be included for the loading (default = FALSE)

beta.init

The initial estimator of the regression vector (default = NULL)

lambda

The tuning parameter in fitting initial model. If NULL, it will be picked by cross-validation. (default = NULL)

mu

The dual tuning parameter used in the construction of the projection direction. If NULL it will be searched automatically. (default = NULL)

prob.filter

The threshold of estimated probabilities for filtering observations in logistic regression. (default = 0.05)

rescale

The factor to enlarge the standard error to account for the finite sample bias. (default = 1.1)

verbose

Should intermediate message(s) be printed. (default = FALSE)

Value

est.plugin.vec

The vector of plugin(biased) estimators for the linear combination of regression coefficients, length of ncol(loading.mat); each corresponding to a loading of interest

est.debias.vec

The vector of bias-corrected estimators for the linear combination of regression coefficients, length of ncol(loading.mat); each corresponding to a loading of interest

se.vec

The vector of standard errors of the bias-corrected estimators, length of ncol(loading.mat); each corresponding to a loading of interest

proj.mat

The matrix of projection directions; each column corresponding to a loading of interest.

Examples

X <- matrix(rnorm(100 * 5), nrow = 100, ncol = 5)
y <- -0.5 + X[, 1] * 0.5 + X[, 2] * 1 + rnorm(100)
loading1 <- c(1, 1, rep(0, 3))
loading2 <- c(-0.5, -1, rep(0, 3))
loading.mat <- cbind(loading1, loading2)
Est <- LF(X, y, loading.mat, model = "linear")

## compute confidence intervals
ci(Est, alpha = 0.05, alternative = "two.sided")
#>   loading     lower      upper
#> 1       1  1.199535  1.6507740
#> 2       2 -1.383149 -0.9938177

## summary statistics
summary(Est)
#> Call: 
#> Inference for Linear Functional
#> 
#> Estimators: 
#>  loading est.plugin est.debias Std. Error z value  Pr(>|z|)    
#>        1      1.322      1.425    0.11511   12.38 0.000e+00 ***
#>        2     -1.105     -1.188    0.09932  -11.97 5.349e-33 ***