R package and source codes used in paper, 'PLSKO: a robust knockoff generator to control false discovery rate in omics variable selection'(https://www.biorxiv.org/content/10.1101/2024.08.06.606935v1)
You can install the development version of the package from GitHub using the following code:
# install.packages("devtools")
devtools::install_github("guannan-yang/PLSKO/PLSKO", quiet = TRUE)
If warnings of installing dependencies appears, please install the dependencies manually by running the following code:
# install.packages(c("knockoff","progress", "parallel", "doParallel", "foreach"))
#
# if (!require("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
# BiocManager::install("mixOmics")
-
Input: predictor matrix X
Dimensions:n x p
-
Input: response vector y
Length ofn
-
Input: Target False Discovery Rate (FDR) Level
Threshold:q ∈ (0, 1]
-
Output:
knockoff.result
object with Selected variables
Pipeline Functions Provided^ | |||||
---|---|---|---|---|---|
Main Steps of Knockoff framework | Function | Auxiliary Function | Output (Class) | plsko_filter() , plsAKO() |
ko_filter() , AKO_with_KO() |
Step 1: Knockoff Variable Generation | plsko() |
r_criterion() (for ncomp estimation) |
A n x p matrix of knockoff variables |
✔️ | (Bring your own knockoff vars) |
Step 2: Importance Score Calculation (W ) |
(import from pkg Knockoff ) |
- | A vector of p or a n_ko x p matrix |
✔️ | ✔️ |
Step 3: Knockoff Filtering and Variable Selection | KO_with_W() AKO_with_W() |
- | A list (class "knockoff.result" or "AKO.result") with components: statistic , selected , ako.selected |
✔️ | ✔️ |
View the Knockoff Framework Diagram
- ^The workflow includes generating knockoff variables, importance score calculation, and filtering.