In this short vignette, we fit a sparse linear regression model with up to \(L > 0\) non-zero effects. Generally, there is no harm in over-stating \(L\) (that is, the method is pretty robust to overfitting), except that computation will grow as \(L\) grows.
Here is a minimal example:
library(susieR)
set.seed(1)
<- 1000
n <- 1000
p <- rep(0,p)
beta c(1,2,300,400)] <- 1
beta[<- matrix(rnorm(n*p),nrow=n,ncol=p)
X <- X %*% beta + rnorm(n)
y <- susie(X,y,L=10)
res plot(coef(res)[-1],pch = 20)
Plot the ground-truth outcomes vs. the predicted outcomes:
plot(y,predict(res),pch = 20)
Here are some details about the computing environment, including the versions of R, and the R packages, used to generate these results.
sessionInfo()
# R version 3.6.2 (2019-12-12)
# Platform: x86_64-apple-darwin15.6.0 (64-bit)
# Running under: macOS Catalina 10.15.7
#
# Matrix products: default
# BLAS: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
# LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib
#
# locale:
# [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
#
# attached base packages:
# [1] stats graphics grDevices utils datasets methods base
#
# other attached packages:
# [1] L0Learn_1.2.0 susieR_0.12.27
#
# loaded via a namespace (and not attached):
# [1] tidyselect_1.1.1 xfun_0.29 bslib_0.3.1 reshape2_1.4.3
# [5] purrr_0.3.4 lattice_0.20-38 colorspace_1.4-1 vctrs_0.3.8
# [9] generics_0.0.2 htmltools_0.5.2 yaml_2.2.0 utf8_1.1.4
# [13] rlang_0.4.11 mixsqp_0.3-46 jquerylib_0.1.4 pillar_1.6.2
# [17] glue_1.4.2 DBI_1.1.0 RcppZiggurat_0.1.5 matrixStats_0.61.0
# [21] lifecycle_1.0.0 plyr_1.8.5 stringr_1.4.0 munsell_0.5.0
# [25] gtable_0.3.0 evaluate_0.14 knitr_1.37 fastmap_1.1.0
# [29] irlba_2.3.3 parallel_3.6.2 fansi_0.4.0 Rfast_2.0.3
# [33] highr_0.8 Rcpp_1.0.8 scales_1.1.0 jsonlite_1.7.2
# [37] ggplot2_3.3.6 digest_0.6.23 stringi_1.4.3 dplyr_1.0.7
# [41] grid_3.6.2 tools_3.6.2 magrittr_2.0.1 sass_0.4.0
# [45] tibble_3.1.3 crayon_1.4.1 pkgconfig_2.0.3 ellipsis_0.3.2
# [49] Matrix_1.4-2 assertthat_0.2.1 rmarkdown_2.11 reshape_0.8.8
# [53] R6_2.4.1 compiler_3.6.2