| Type: | Package | 
| Title: | Doubly Debiased Lasso (DDL) | 
| Version: | 1.0.2 | 
| Description: | Statistical inference for the regression coefficients in high-dimensional linear models with hidden confounders. The Doubly Debiased Lasso method was proposed in <doi:10.48550/arXiv.2004.03758>. | 
| License: | MIT + file LICENSE | 
| Encoding: | UTF-8 | 
| Imports: | stats, glmnet, Matrix | 
| RoxygenNote: | 7.1.2 | 
| NeedsCompilation: | no | 
| Packaged: | 2023-04-09 15:04:23 UTC; zhuyuqi | 
| Author: | Domagoj Ćevid [aut], Chengzhu Huang [aut], Zijian Guo [aut, cre], Peter Bühlmann [aut] | 
| Maintainer: | Zijian Guo <zijguo@stat.rutgers.edu> | 
| Repository: | CRAN | 
| Date/Publication: | 2023-04-09 15:20:01 UTC | 
Point estimation and inference for a single regression coefficient in the high-dimensional linear model with hidden confounders.
Description
Computes the Doubly Debiased Lasso estimator of a single regression coefficient in the high-dimensional linear model with hidden confounders. It also constructs the confidence interval for the target regression coefficient.
Usage
DDL(X, Y, index, rho = 0.5, rhop = 0.5)
Arguments
| X | the covariates matrix, of dimension  | 
| Y | the outcome vector, of length  | 
| index | the vector of indexes for the regression coefficient of interest | 
| rho | the trim level for  | 
| rhop | the trim level for  | 
Value
| index | the vector of indexes for the regression coefficient of interest | 
| est_ddl | The vector of the Doubly Debiased Lasso estimator of the target regression coefficient | 
| se | The vector of the standard error of the Doubly Debiased Lasso estimator | 
| est_init | The vector of the spectral deconfounding estimator of the whole regression vector | 
Examples
index = c(1,2,10)
n=100
p=200
s=5
q=3
sigmaE=2
sigma=2
pert=1
H = pert*matrix(rnorm(n*q,mean=0,sd=1),n,q,byrow = TRUE)
Gamma = matrix(rnorm(q*p,mean=0,sd=1),q,p,byrow = TRUE)
#value of X independent from H
E = matrix(rnorm(n*p,mean=0,sd=sigmaE),n,p,byrow = TRUE)
#defined in eq. (2), high-dimensional measured covariates
X = E + H %*% Gamma
delta = matrix(rnorm(q*1,mean=0,sd=1),q,1,byrow = TRUE)
#px1 matrix, creates beta with 1s in the first s entries and the remaining p-s as 0s
beta = matrix(rep(c(1,0),times = c(s,p-s)),p,1,byrow = TRUE)
#nx1 matrix with values of mean 0 and SD of sigma, error in Y independent of X
nu = matrix(rnorm(n*1,mean=0,sd=sigma),n,1,byrow = TRUE)
#eq. (1), the response of the Structural Equation Model
Y = X %*% beta + H %*% delta + nu
result = DDL(X, Y, index)
summary(result)
Computing confidence intervals
Description
generic function
Usage
ci(x, alpha = 0.05, alternative = c("two.sided", "less", "greater"))
Arguments
| x | An object of class | 
| alpha | alpha Level of significance to construct confidence interval | 
| alternative | indicates the alternative hypothesis to construct confidence interval and must be one of "two.sided" (default), "less", or "greater". | 
Examples
index = 1
n=100
p=200
s=5
q=3
sigmaE=2
sigma=2
pert=1
H = pert*matrix(rnorm(n*q,mean=0,sd=1),n,q,byrow = TRUE)
Gamma = matrix(rnorm(q*p,mean=0,sd=1),q,p,byrow = TRUE)
#value of X independent from H
E = matrix(rnorm(n*p,mean=0,sd=sigmaE),n,p,byrow = TRUE)
#defined in eq. (2), high-dimensional measured covariates
X = E + H %*% Gamma
delta = matrix(rnorm(q*1,mean=0,sd=1),q,1,byrow = TRUE)
#px1 matrix, creates beta with 1s in the first s entries and the remaining p-s as 0s
beta = matrix(rep(c(1,0),times = c(s,p-s)),p,1,byrow = TRUE)
#nx1 matrix with values of mean 0 and SD of sigma, error in Y independent of X
nu = matrix(rnorm(n*1,mean=0,sd=sigma),n,1,byrow = TRUE)
#eq. (1), the response of the Structural Equation Model
Y = X %*% beta + H %*% delta + nu
result = DDL(X, Y, index)
# default alpha is 0.05
ci(result, alpha = 0.05)
ci(result, alpha = 0.05, alternative = "less")
ci(result, alpha = 0.05, alternative = "greater")
Computing confidence intervals
Description
'ci' method for class 'DDL'
Usage
## S3 method for class 'DDL'
ci(x, alpha = 0.05, alternative = c("two.sided", "less", "greater"))
Arguments
| x | An object of class 'DDL' | 
| alpha | alpha Level of significance to construct confidence interval | 
| alternative | indicates the alternative hypothesis to construct confidence interval and must be one of "two.sided" (default), "less", or "greater". | 
Examples
index = 1
n=100
p=200
s=5
q=3
sigmaE=2
sigma=2
pert=1
H = pert*matrix(rnorm(n*q,mean=0,sd=1),n,q,byrow = TRUE)
Gamma = matrix(rnorm(q*p,mean=0,sd=1),q,p,byrow = TRUE)
#value of X independent from H
E = matrix(rnorm(n*p,mean=0,sd=sigmaE),n,p,byrow = TRUE)
#defined in eq. (2), high-dimensional measured covariates
X = E + H %*% Gamma
delta = matrix(rnorm(q*1,mean=0,sd=1),q,1,byrow = TRUE)
#px1 matrix, creates beta with 1s in the first s entries and the remaining p-s as 0s
beta = matrix(rep(c(1,0),times = c(s,p-s)),p,1,byrow = TRUE)
#nx1 matrix with values of mean 0 and SD of sigma, error in Y independent of X
nu = matrix(rnorm(n*1,mean=0,sd=sigma),n,1,byrow = TRUE)
#eq. (1), the response of the Structural Equation Model
Y = X %*% beta + H %*% delta + nu
result = DDL(X, Y, index)
# default alpha is 0.05
ci(result, alpha = 0.05)
ci(result, alpha = 0.05, alternative = "less")
ci(result, alpha = 0.05, alternative = "greater")
Summarizing DDL
Description
'summary' method for class 'DDL'
Usage
## S3 method for class 'summary.DDL'
print(x, ...)
Arguments
| x | An object of class 'summary.DDL' | 
| ... | Ignored | 
Summarizing DDL
Description
'summary' method for class 'DDL'
Usage
## S3 method for class 'DDL'
summary(object, ...)
Arguments
| object | An object of class 'DDL' | 
| ... | Ignored | 
Value
The function 'summary.DDL' returns a list of summary statistics of DDL given 'DDL'
Examples
index = 1
n=100
p=200
s=5
q=3
sigmaE=2
sigma=2
pert=1
H = pert*matrix(rnorm(n*q,mean=0,sd=1),n,q,byrow = TRUE)
Gamma = matrix(rnorm(q*p,mean=0,sd=1),q,p,byrow = TRUE)
#value of X independent from H
E = matrix(rnorm(n*p,mean=0,sd=sigmaE),n,p,byrow = TRUE)
#defined in eq. (2), high-dimensional measured covariates
X = E + H %*% Gamma
delta = matrix(rnorm(q*1,mean=0,sd=1),q,1,byrow = TRUE)
#px1 matrix, creates beta with 1s in the first s entries and the remaining p-s as 0s
beta = matrix(rep(c(1,0),times = c(s,p-s)),p,1,byrow = TRUE)
#nx1 matrix with values of mean 0 and SD of sigma, error in Y independent of X
nu = matrix(rnorm(n*1,mean=0,sd=sigma),n,1,byrow = TRUE)
#eq. (1), the response of the Structural Equation Model
Y = X %*% beta + H %*% delta + nu
result = DDL(X, Y, index)
summary(result)