sgs

Repository for the sgs R package, which fits the sparse-group SLOPE and group SLOPE models

https://github.com/ff1201/sgs

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.6%) to scientific vocabulary
Last synced: 9 months ago · JSON representation

Repository

Repository for the sgs R package, which fits the sparse-group SLOPE and group SLOPE models

Basic Info
  • Host: GitHub
  • Owner: ff1201
  • License: gpl-3.0
  • Language: R
  • Default Branch: main
  • Homepage:
  • Size: 2.75 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 0
Created about 3 years ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

sgs

CRAN status 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. The package also has an implementation of Group SLOPE (gSLOPE), which performs group selection and controls the group FDR under orthogonal designs, as well as group-based OSCAR models. Linear and logistic regression are supported, both with dense and sparse matrix implementations. Both models have strong screening rules to improve computational speed. Cross-validation functionality is also supported. Both models are 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 Feser, F., Evangelou, M. (2023). "Sparse-group SLOPE: adaptive bi-level selection with FDR-control".

gSLOPE was proposed in Brzyski, D., Gossmann, A., Su, W., Bodgan, M. (2019). "Group SLOPE – Adaptive Selection of Groups of Predictors".

The strong screening rules are described in Feser, F., Evangelou, M. (2024). "Strong screening rules for group-based SLOPE models".

Installation

You can install the current stable release from CRAN with r install.packages("sgs") Your R configuration must allow for a working Rcpp. To install a develop the development version from GitHub run r library(devtools) install_github("ff1201/sgs")

Example

The code for fitting a basic SGS model is:

``` r library(sgs) groups = c(rep(1:20, each=3), rep(21:40, each=4), rep(41:60, each=5), rep(61:80, each=6), rep(81:100, each=7))

data = gentoydata(p=500, n=400, groups = groups, seed_id=3)

model = fit_sgs(X = data$X, y = data$y, groups = groups, vFDR=0.1, gFDR=0.1) plot(model) ```

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.

For gSLOPE, run:

``` r library(sgs) groups = c(rep(1:20, each=3), rep(21:40, each=4), rep(41:60, each=5), rep(61:80, each=6), rep(81:100, each=7))

data = gentoydata(p=500, n=400, groups = groups, seed_id=3)

model = fit_gslope(X = data$X, y = data$y, groups = groups, gFDR=0.1) plot(model) ```

A more extensive example can be found here.

Owner

  • Name: Fabio Feser
  • Login: ff1201
  • Kind: user
  • Location: London, UK
  • Company: Imperial College London

PhD student on the StatML programme at Imperial & Oxford

GitHub Events

Total
  • Issues event: 1
  • Issue comment event: 2
  • Push event: 11
  • Pull request review event: 1
  • Pull request event: 1
  • Fork event: 1
Last Year
  • Issues event: 1
  • Issue comment event: 2
  • Push event: 11
  • Pull request review event: 1
  • Pull request event: 1
  • Fork event: 1

Packages

  • Total packages: 1
  • Total downloads:
    • cran 360 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 12
  • Total maintainers: 1
cran.r-project.org: sgs

Sparse-Group SLOPE: Adaptive Bi-Level Selection with FDR Control

  • Versions: 12
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 360 Last month
Rankings
Forks count: 28.8%
Dependent packages count: 29.3%
Stargazers count: 31.7%
Dependent repos count: 35.1%
Average: 42.9%
Downloads: 89.6%
Maintainers (1)
Last synced: 10 months ago

Dependencies

DESCRIPTION cran
  • MASS * imports
  • Matrix * imports
  • Rcpp >= 1.0.10 imports
  • Rlab * imports
  • SLOPE * imports
  • caret * imports
  • faux * imports
  • grDevices * imports
  • graphics * imports
  • methods * imports
  • stats * imports
  • SGL * suggests
  • gglasso * suggests
  • glmnet * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat * suggests