ivgls implements network-aware instrumental variable (IV) regression with a graph-fused Lasso penalty for causal variable selection in high-dimensional, graph-structured settings.
| Function | Graph penalty | Invalid-IV robust |
|---|---|---|
iv_lasso() |
No | No |
ivgl() |
Yes | No |
ivgl_s() |
Yes | Yes |
glmgraph is required but not on CRAN — install it
first:
devtools::install_github("cran/glmgraph")
install.packages("ivgls")library(ivgls)
set.seed(1)
A <- make_graph(p = 20, type = "chain")
L <- get_laplacian(A)
bobj <- generate_beta(A, s2 = 4, signal = 2)
dat <- generate_data(n = 120, p = 20, q = 60,
s_alpha = 5, alpha_strength = 3,
beta_true = bobj$beta_true)
fit <- ivgl_s(dat$Y, dat$X, dat$Z, L)
get_mcc(bobj$active_set, which(abs(fit$beta) > 1e-4), p = 20)Pal, S. & Ghosh, D. (2026). Network-aware IV regression for causal node discovery and estimation.