The susieR
package implements a simple new way to perform variable
selection in multiple regression (
The methods are based on a new model for sparse multiple regression, which we call the "Sum of Single Effects" (SuSiE) model. This model, which will be described in a manuscript in preparation (Wang et al), lends itself to a particularly simple and intuitive fitting procedure -- effectively a Bayesian modification of simple forward selection, which we call "Iterative Bayesian Step-wise Selection".
The output of the fitting procedure is a number of "Credible Sets" (CSs), which are each designed to have high probability to contain a variable with non-zero effect, while at the same time being as small as possible. You can think of the CSs as being a set of "highly correlated" variables that are each associated with the response: you can be confident that one of the variables has a non-zero coefficient, but they are too correlated to be sure which one.
The package is developed by Gao Wang, Peter Carbonetto, Yuxin Zou, Kaiqian Zhang, and Matthew Stephens from the Stephens Lab at the University of Chicago.
Please post issues to ask questions, get our support or provide us feedback; please send pull requests if you have helped fixing bugs or making improvements to the source code.
Install susieR from CRAN:
install.packages("susieR")
Alternatively, install the latest development version of susieR
from GitHub:
# install.packages("remotes")
remotes::install_github("stephenslab/susieR")
See here for
a brief illustration of susieR
. For more documentation and examples
please visit https://stephenslab.github.io/susieR
If you find the susieR
package or any of the source code in this
repository useful for your work, please cite:
Wang, G., Sarkar, A., Carbonetto, P., & Stephens, M. (2020). A simple new approach to variable selection in regression, with application to genetic fine mapping. Journal of the Royal Statistical Society, Series B 82, 1273--1300. https://doi.org/10.1111/rssb.12388
-
When any changes are made to
roxygen2
markup, rundevtools::document()
to update packageNAMESPACE
and documentation files. -
Run
pkgdown::build_site()
to build the website. Gettingpkgdown
to work properly can be frustrating due to numerous & fragile dependencies. Ifpkgdown
does not work for you out of the box you can use thisdocker
command to run all vignettes and build the site:
docker run --rm --security-opt label:disable -t -P -w $PWD -v $PWD:$PWD \
-u $UID:${GROUPS[0]} -e HOME=/home/$USER -e USER=$USER gaow/susie \
R --slave -e "pkgdown::build_site(lazy=TRUE, examples=FALSE)"