spls {spls} | R Documentation |
Fit SPLS regression models
Description
Fit a SPLS regression model.
Usage
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)
Arguments
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? |
Details
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.
Value
A spls object is returned. print, plot, predict, coef, ci.spls, coefplot.spls methods use this object.
Author(s)
Dongjun Chung, Hyonho Chun, and Sunduz Keles.
References
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.
See Also
print.spls
, plot.spls
, predict.spls
,
coef.spls
, ci.spls
, and coefplot.spls
.
Examples
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))