sgs

CRAN status CRAN downloads this month

Implementation of Sparse-group SLOPE (SGS), a sparse-group penalisation regression approach. SGS performs adaptive bi-level selection, controlling the FDR under orthogonal designs. Linear (Gaussian) and logistic (Binomial) regression are supported, both with dense and sparse matrix implementations. Cross-validation functionality is also supported. SGS is implemented using adaptive three operator splitting (ATOS) and the package also contains a general implementation of ATOS.

A detailed description of SGS can be found in F. Feser, M. Evangelou (2023) “Sparse-group SLOPE: adaptive bi-level selection with FDR-control”.

Installation

You can install the current stable release from CRAN with

install.packages("sgs")

Your R configuration must allow for a working Rcpp. To install a develop the development version from GitHub run

library(devtools)
install_github("ff1201/sgs")

Example

The code for fitting a basic SGS model is:

library(sgs)

model = fit_sgs(X = X, y = y, groups = groups, vFDR=0.1, gFDR=0.1)

where X is the input matrix, y the response vector, groups a vector containing indices for the groups of the predictors, and vFDR and gFDR are the the target variable/group false discovery rates.

A more extensive example can be found here.