smashr: smoothing using Adaptive Shrinkage in R
This R package implements fast, wavelet-based Empirical Bayes shrinkage methods for signal denoising. This includes smoothing Poisson-distributed data and Gaussian-distributed data, with possibly heteroskedastic error. The algorithms implement the methods described in Xing, Carbonetto & Stephens (2021).
If you find a bug, please post an issue.
Copyright (c) 2016-2021, Zhengrong Xing, Peter Carbonetto and Matthew Stephens.
All source code and software in this repository is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. See the LICENSE file for the full text of the license.
Citing this work
If you find that this R package useful for your work, please cite our paper:
Zhengrong Xing, Peter Carbonetto and Matthew Stephens (2021). Flexible signal denoising via flexible empirical Bayes shrinkage. Journal of Machine Learning Research 22(93), 1-28.
Follow these steps to quickly get started using smashr.
In R, install the latest version of smashr using devtools:
install.packages("devtools") library(devtools) install_github("stephenslab/smashr")
If you are interested in replicating results from the paper, we recommendg installing smashr 1.2-7:
This will build the smashr package without the vignettes. To build with the vignettes, do this instead:
install_github("stephenslab/smashr",build_vignettes = TRUE)
We caution that some of the simulation examples may take a long time to run (20--30 minutes, or possibly longer). Also note that the
install_githubcall should also install any missing packages that are required for smashr to work.
Load the smashr package, and run the smashr demo:
To learn more, see the smashr package help and the smashr vignette (which you can also view here):
help(package = "smashr") vignette("smashr")