Implements S-type ridge regression, a robust and
multicollinearity-aware linear regression estimator that combines S-type
robust weighting (via the 'Stype.est' package) with ridge penalization;
automatically selects the ridge parameter using the 'ridgregextra'
approach targeting a close to 1 variance inflation factor (VIF), and returns
comprehensive outputs (coefficients, fitted values, residuals, mean
squared error (MSE), etc.) with an easy x/y interface and optional
user-supplied weights. See Sazak and Mutlu (2021)
This R package implements S-type ridge regression: a robust and multicollinearity-aware linear regression estimator that combines S-type robust weighting with ridge penalization. The method targets two common hurdles in linear modeling simultaneously: sensitivity to outliers and inflated variance due to severe multicollinearity.
The S-type estimators were introduced by Sazak and Mutlu (2023) in “Comparison of the Robust Methods in the General Linear Regression Model.” The ridge parameter k is selected automatically via the approach implemented in the ridgregextra R package (Karadağ et al., 2023; Karadağ and Sazak, 2022), which targets variance inflation factor (VIF) values close to but not below 1 (following Kutner et al., 2004). For automatic ridge parameter selection, the package leverages the approach operationalized in the ridgregextra package, so users do not need to tune k manually.
This package, in conjunction with the Stype.est package, offers a robust ridge regression solution adept at addressing issues of extreme multicollinearity and outliers, providing S-type ridge estimates without requiring manual adjustment of the ridge parameter.
There are two functions in this package:
Weightedridge.reg (sub-function): Given a data set and a user-supplied weight vector w, it returns the weighted ridge regression results (coefficients, fitted values, residuals, standard errors, and related diagnostics).
regstyperidge (main function): Given x and y, it automatically determines the ridge parameter and returns the S-type ridge regression results end-to-end.
regstyperidge) with familiar x/y interface.To install the package from GitHub, use the following command:
Styperidge.reg development versionPlease make sure that you installed devtools package first:
install.packages("devtools")
devtools::install_github("filizkrgd/Styperidge.reg")
Styperidge.reg from CRANinstall.packages( “Styperidge.reg”)
Installing Styperidge.reg development version
When you install Styperidge.reg, required packages such as ridgregextra and Stype.est will be installed automatically via dependencies. For example data, you can install and load the isdals package (it contains the bodyfat data set).
library(isdals)
data(bodyfat)
x=bodyfat[,-1]
y=bodyfat[,1]
regstyperidge function to get ridge regression results using the S-type ridge regression estimators.regstyperidge=regstyperidge(x,y)
regstyperidge$MSE
regstyperidge$stdbeta
weightedridgereg=Weightedridge.reg(x,y,W)
weightedridgereg$MSE
weightedridgereg$stdbeta
For any questions please contact: