R: Fit SPLS regression models

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. `eta` should be between 0 and 1.
`kappa` | Parameter to control the effect of the concavity of the objective function and the closeness of original and surrogate direction vectors. `kappa` is relevant only when responses are multivariate. `kappa` should be between 0 and 0.5. Default is 0.5.
`select` | PLS algorithm for variable selection. Alternatives are `"pls2"` or `"simpls"`. Default is `"pls2"`.
`fit` | PLS algorithm for model fitting. Alternatives are `"kernelpls"`, `"widekernelpls"`, `"simpls"`, or `"oscorespls"`. Default is `"simpls"`.
`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))

[Package spls version 2.2-2 Index]