Hierarchical Integrative Group LASSO

Alexander Rix

Introduction

Environmental health studies are increasingly measuring multiple pollutants to characterize the joint health effects attributable to exposure mixtures. However, the underlying dose-response relationship between toxicants and health outcomes of interest may be highly nonlinear, with possible nonlinear interaction effects. Hierarchical integrative group least absolute shrinkage and selection operator (HiGLASSO) is a general framework to identify noteworthy nonlinear main and interaction effects in the presence of group structures among a set of exposures.

The R package higlasso contains an efficient Rcpp implementation of HiGLASSO and provides a cross validated variant, cv.higlasso to assist in proper interaction detection. That being said, HiGLASSO is a time intensive algorithm and hence there is a limit to how many variables can used at once. higlasso is suitable to use on medium sized environmental health datasets.

Installation

higlasso can be installed from CRAN

install.packages("higlasso")

higlasso can also be installed via Github using devtools

# install.packages("devtools")
devtools::install_github("umich-cphds/higlasso")

You’ll need a working C++11 compiler, which can obtained by installing Xcode on MacOS, and RTools on Windows. The Github version may have bug fixes or new features than the CRAN version doesn’t have, so it may be a good idea to take a look.

Example

higlasso comes with an example data.frame, higlasso.df that is based off the first simulation case in the paper. It contains a numeric response and 10 covariates, X1 - X10.

library(higlasso)

set.seed(48109)

X <- as.matrix(higlasso.df[, paste0("V", 1:7)])
Y <- higlasso.df$Y
Z <- matrix(1, nrow(X))

# This can take a bit of time, so we run the example with nondefault
# parameters to speed up the process
fit <- cv.higlasso(Y, X, Z)

print(fit)
#> 'cv.higlaso' fit:
#> Average cross validation error for each (lambda1, lambda2)
#>           l2.1     l2.2      l2.3      l2.4      l2.5      l2.6      l2.7
#> l1.1  4.082960 3.433696 3.3894279 3.3493152 3.1864447 3.2557620 3.6921640
#> l1.2  2.934149 2.338762 1.8294917 2.5367949 2.3129504 1.7265008 1.3032390
#> l1.3  2.754044 1.998532 0.9702082 0.8358925 0.6997379 0.5598430 0.4786981
#> l1.4  2.722624 2.094625 0.9310171 0.7921443 0.6703553 0.4669093 0.4609298
#> l1.5  2.658753 2.082758 0.8265055 0.7242707 0.6314249 0.4681145 0.5041253
#> l1.6  2.644620 1.909301 0.8089151 0.7194744 0.6187322 0.4195757 0.4787553
#> l1.7  2.634554 1.899968 0.7808180 0.7146310 0.5770872 0.3831540 0.4738286
#> l1.8  2.623803 1.889389 0.7743647 0.6596754 0.5735138 0.3800307 0.4633401
#> l1.9  2.318330 1.884189 0.7665965 0.6561495 0.5189762 0.3774452 0.4529258
#> l1.10 2.320976 1.893472 0.8011604 0.6665445 0.5205078 0.3782318 0.4530359
#>            l2.8      l2.9     l2.10
#> l1.1  3.6991445 3.7638172 3.7836256
#> l1.2  1.3862495 1.0415185 1.3832693
#> l1.3  0.6501100 0.2887670 0.1850158
#> l1.4  0.5321343 0.2642623 0.3332567
#> l1.5  0.5007745 0.2572069 0.2118808
#> l1.6  0.5058540 0.2374856 0.1557606
#> l1.7  0.4822058 0.3237550 0.1471226
#> l1.8  0.3677665 0.3241634 0.2673381
#> l1.9  0.3179627 0.2877593 0.1558612
#> l1.10 0.3366168 0.3158216 0.1465605
#> Lambda min:
#> 0.0550981 0.05613532 
#> Lambda 1 SE:
#> 0.2086278 0.05613532

References

A Hierarchical Integrative Group LASSO (HiGLASSO) Framework for Analyzing Environmental Mixtures. Jonathan Boss, Alexander Rix, Yin-Hsiu Chen, Naveen N. Narisetty, Zhenke Wu, Kelly K. Ferguson, Thomas F. McElrath, John D. Meeker, Bhramar Mukherjee. 2020. arXiv:2003.12844

Contact information

If you would like to report a bug in the code, ask questions, or send requests/suggestions e-mail Jonathan Boss at bossjona@umich.edu or Alexander Rix at alexrix@umich.edu.