The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
DVS is an R package designed for stable variable selection in the presence of correlated predictors using Lasso within the stability selection framework.
The methodology is based on the paper:
“Stability Selection via Variable Decorrelation” (2026) — Nouraie et al., Statistics and Computing.
DVS imports the R packages glmnet and cmna
for model fitting and computation.
You can install and load the DVS package using the
following commands in R:
# Install 'devtools' if not already installed
if (!require("devtools")) {
install.packages("devtools")
}
# Install the DVS package from GitHub
devtools::install_github("MahdiNouraie/DVS")
# Load the package
library(DVS)
set.seed(123)
n <- 100 # Number of observations
rho <- 0.8 # Correlation coefficient for the predictors
x1 <- matrix(rnorm(n * 3), ncol = 3) # First 3 independent predictors
x2 <- rho * x1[, rep(1:3, length.out = 7)] + sqrt(1 - rho^2) * matrix(rnorm(n * 7), ncol = 7) # Make next 7 predictors correlated with x1
x <- cbind(x1, x2) # Combine independent and correlated predictors
colnames(x) <- paste0("X", 1:10) # Assign column names
beta <- c(1, 2, 3, rep(0, 7)) # Create regression coefficients vector
y <- x %*% beta + rnorm(n) # Generate response variable with some noise
B <- 10 # Number of sub-samples for stability selection
# Threshold controls the number of variables retained during the Air-HOLP screening step before decorrelation. It is typically chosen as a small multiple of the expected number of relevant variables.
DVS(x, y, B, Threshold = 10) # Example usage of the DVS function$lambda.stable
[1] 0.2798887
$stability
[1] 0.7781636
$selected
Variable Selection_Frequency
1 X3 1
2 X2 1
3 X1 1
DVS includes adapted code from the following sources,
which are appropriately cited in the code with comments: - JMLR2018 Supplementary
Code - Air-HOLP
Repository - StackOverflow
– Gram-Schmidt in R
This package is released under the MIT License.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.