Group Sorted L1 Penalized Estimation

Group SLOPE is a penalized linear regression method that is used for adaptive selection of groups of significant predictors in a high-dimensional linear model. The Group SLOPE method can control the (group) false discovery rate at a user-specified level (i.e., control the expected proportion of irrelevant among all selected groups of predictors).


Group SLOPE is a penalized linear regression method that is used for adaptive selection of groups of significant predictors in a high-dimensional linear model. A unique feature of the Group SLOPE method is that it offers (group) false discovery rate control (i.e., control of the expected proportion of irrelevant groups among the total number of groups of predictors selected by Group SLOPE). A detailed description of the method can be found in D. Brzyski, A. Gossmann, W. Su, and M. Bogdan (2016) Group SLOPE — adaptive selection of groups of predictors.

The basic model fitting procedure for a Group SLOPE model is:

library(grpSLOPE)
 
result <- grpSLOPE(X=X, y=y, group=group, fdr=0.1)

where X is the model matrix, y the response vector, group a vector specifying group memberships of the predictor variables, and fdr the target (group) false discovery rate for the variable selection procedure.

One can access various estimated parameters of the fitted model, such as the selected groups, the estimated noise level, or the estimated vector of regression coefficients:

# groups that have a non-zero effect
result$selected
# noise level
sigma(result)
# coefficient vector
coef(result)

A detailed basic usage example can be found here.

More complicated (and possibly less helpful) example codes are available in the repository grpSLOPE_examples.

The latest stable version of grpSLOPE can be installed from CRAN (The Comprehensive R Archive Network). Just open an R session and do:

install.packages("grpSLOPE")

The easiest way to install the latest development version of grpSLOPE is by using the R package devtools. Just open up an R session and run:

# Install devtools, if you haven't already.
install.packages("devtools")
 
library(devtools)
install_github("agisga/grpSLOPE")

Variable names are all lower case with words separated by dots. Function names begin with a lower case letter and are written in camel case. Constants names are all caps. Otherwise, the package code follows Google's R style guide.

  1. Modify the code.
  2. Open grpSLOPE.Rproj with RStudio.
  3. Run devtools::document().
  4. Do "Build and Reload" from the menu (or CTRL-Shift-B).
  5. Do devtools::test() to run the unit tests.
  6. Install with devtools::install()
  7. Run checks with devtools::check()

News

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("grpSLOPE")

0.2.1 by Alexej Gossmann, 10 months ago


https://github.com/agisga/grpSLOPE.git


Report a bug at https://github.com/agisga/grpSLOPE/issues


Browse source code at https://github.com/cran/grpSLOPE


Authors: Alexej Gossmann [aut, cre], Damian Brzyski [aut], Weijie Su [aut], Malgorzata Bogdan [aut], Ewout van den Berg [ctb] (A part of the optimization code was obtained from http://statweb.stanford.edu/~candes/SortedL1/software.html under GNU GPL-3), Emmanuel Candes [ctb] (A part of the optimization code was obtained from http://statweb.stanford.edu/~candes/SortedL1/software.html under GNU GPL-3)


Documentation:   PDF Manual  


GPL-3 license


Imports SLOPE

Suggests testthat, knitr, rmarkdown, pander


See at CRAN