savvySh: Shrinkage Methods for Linear Regression Estimation

The savvySh package provides a unified interface for fitting shrinkage estimators in linear regression, which is particularly useful in the presence of multicollinearity or high-dimensional covariates. It supports four shrinkage classes: Multiplicative Shrinkage, Slab Regression, Linear Shrinkage, and Shrinkage Ridge Regression. These methods improve on the classical Ordinary Least Squares (OLS) estimator by trading a small amount of bias for a significant reduction in variance.

This package implements the theoretical framework discussed in:

Asimit, V., Cidota, M. A., Chen, Z., & Asimit, J. (2025). Slab and Shrinkage Linear Regression Estimation.

Installation Guide

You can install the released version of savvySh from CRAN with:

install.packages("savvySh")

Alternatively, you can install the development version from GitHub with:

# install.packages("devtools")
devtools::install_github("Ziwei-ChenChen/savvySh")

Once installed, load the package:

library(savvySh)

Features

savvySh provides several shrinkage estimators designed to improve regression accuracy by reducing Mean Squared Error (MSE):

All shrinkage factors are computed in closed form (except SRR, which optimizes shrinkage intensity numerically).

Usage

This is a basic example that shows you how to solve a common problem:

# Simulated example
set.seed(123)
x <- matrix(rnorm(100 * 10), 100, 10)
y <- rnorm(100)

# Fit shrinkage estimators
fit <- savvySh(x, y, model_class = "Multiplicative", include_Sh = TRUE)

# Extract coefficients
coef(fit, estimator = "St")
coef(fit, estimator = "DSh")
coef(fit, estimator = "Sh")

Authors

License

This package is licensed under the GPL (>= 3) License.