widekernelpls.fit {pls} | R Documentation |
Fits a PLSR model with the wide kernel algorithm.
widekernelpls.fit(X, Y, ncomp, stripped = FALSE, tol = .Machine$double.eps^0.5, maxit = 100, ...)
X |
a matrix of observations. NA s and Inf s are not
allowed. |
Y |
a vector or matrix of responses. NA s and Inf s
are not allowed. |
ncomp |
the number of components to be used in the modelling. |
stripped |
logical. If TRUE the calculations are stripped
as much as possible for speed; this is meant for use with
cross-validation or simulations when only the coefficients are
needed. Defaults to FALSE . |
tol |
numeric. The tolerance used for determining convergence in the algorithm. |
maxit |
positive integer. The maximal number of iterations used in the internal Eigenvector calculation. |
... |
other arguments. Currently ignored. |
This function should not be called directly, but through
the generic functions plsr
or mvr
with the argument
method="widekernelpls"
. The wide kernel PLS algorithm is
efficient when the number of variables is (much) larger
than the number of observations. For very wide X
, for instance
12x18000, it can be twice as fast as kernelpls.fit
and
simpls.fit
. For other matrices, however, it can be much
slower. The results are equal to the results of the NIPALS algorithm.
A list containing the following components is returned:
coefficients |
an array of regression coefficients for 1, ...,
ncomp components. The dimensions of coefficients are
c(nvar, npred, ncomp) with nvar the number
of X variables and npred the number of variables to be
predicted in Y . |
scores |
a matrix of scores. |
loadings |
a matrix of loadings. |
loading.weights |
a matrix of loading weights. |
Yscores |
a matrix of Y-scores. |
Yloadings |
a matrix of Y-loadings. |
projection |
the projection matrix used to convert X to scores. |
Xmeans |
a vector of means of the X variables. |
Ymeans |
a vector of means of the Y variables. |
fitted.values |
an array of fitted values. The dimensions of
fitted.values are c(nobj, npred, ncomp) with
nobj the number samples and npred the number of
Y variables. |
residuals |
an array of regression residuals. It has the same
dimensions as fitted.values . |
Xvar |
a vector with the amount of X-variance explained by each number of components. |
Xtotvar |
Total variance in X . |
If stripped
is TRUE
, only the components
coefficients
, Xmeans
and Ymeans
are returned.
The current implementation has not undergone extensive testing yet,
and should perhaps be regarded as experimental. Specifically, the
internal Eigenvector calculation does not always converge in extreme
cases where the Eigenvalue is close to zero. However, when it does
converge, it always converges to the same results as
kernelpls.fit
, up to numerical inacurracies.
The algorithm also has a bit of overhead, so when the number of
observations is moderately high, kernelpls.fit
can be
faster even if the number of predictors is much higher. The relative
speed of the algorithms can also depend greatly on which BLAS and/or
LAPACK library R is linked against.
Bjørn-Helge Mevik
Rännar, S., Lindgren, F., Geladi, P. and Wold, S. (1994) A PLS Kernel Algorithm for Data Sets with Many Variables and Fewer Objects. Part 1: Theory and Algorithm. Journal of Chemometrics, 8, 111–125.
mvr
plsr
pcr
kernelpls.fit
simpls.fit
oscorespls.fit