Fit SPLS regression models
Fit a SPLS regression model.
spls( x, y, K, eta, kappa=0.5, select="pls2", fit="simpls", scale.x=TRUE, scale.y=FALSE, eps=1e-4, maxstep=100, trace=FALSE)
x |
Matrix of predictors. |
y |
Vector or matrix of responses. |
K |
Number of hidden components. |
eta |
Thresholding parameter. |
kappa |
Parameter to control the effect of
the concavity of the objective function
and the closeness of original and surrogate direction vectors.
|
select |
PLS algorithm for variable selection.
Alternatives are |
fit |
PLS algorithm for model fitting. Alternatives are
|
scale.x |
Scale predictors by dividing each predictor variable by its sample standard deviation? |
scale.y |
Scale responses by dividing each response variable by its sample standard deviation? |
eps |
An effective zero. Default is 1e-4. |
maxstep |
Maximum number of iterations when fitting direction vectors. Default is 100. |
trace |
Print out the progress of variable selection? |
The SPLS method is described in detail in Chun and Keles (2010).
SPLS directly imposes sparsity on the dimension reduction step of PLS
in order to achieve accurate prediction and variable selection simultaneously.
The option select
refers to the PLS algorithm for variable selection.
The option fit
refers to the PLS algorithm for model fitting
and spls
utilizes algorithms offered by the pls package for this purpose.
See help files of the function plsr
in the pls package for more details.
The user should install the pls package before using spls functions.
The choices for select
and fit
are independent.
A spls object is returned. print, plot, predict, coef, ci.spls, coefplot.spls methods use this object.
Dongjun Chung, Hyonho Chun, and Sunduz Keles.
Chun H and Keles S (2010), "Sparse partial least squares for simultaneous dimension reduction and variable selection", Journal of the Royal Statistical Society - Series B, Vol. 72, pp. 3–25.
print.spls
, plot.spls
, predict.spls
,
coef.spls
, ci.spls
, and coefplot.spls
.
data(yeast) # SPLS with eta=0.7 & 8 hidden components (f <- spls(yeast$x, yeast$y, K=8, eta=0.7)) # Print out coefficients coef.f <- coef(f) coef.f[,1] # Coefficient path plot plot(f, yvar=1) dev.new() # Coefficient plot of selected variables coefplot.spls(f, xvar=c(1:4))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.