dbplsr
is a variety of partial least squares regression
where explanatory information is coded as distances between individuals.
These distances can either be computed from observed explanatory variables
or directly input as a squared interdistances matrix.
Since distances can be computed from a mixture of continuous and
qualitative explanatory variables or, in fact, from more general
quantities, dbplsr
is a proper extension of plsr
.
Notation convention: in distance-based methods we must distinguish
observed explanatory variables which we denote by Z or z, from
Euclidean coordinates which we denote by X or x. For explanation
on the meaning of both terms see the bibliography references below.## S3 method for class 'formula':
dbplsr(formula,data,...,metric="euclidean",
method="ncomp",weights,ncomp)
# method for distance class 'dist' or 'dissimilary'
dbplsr.dist(y,distance,...,weights,ncomp=ncomp,method="ncomp")
# method for distance class 'D2'
dbplsr.D2(y,D2,...,weights,ncomp=ncomp,method="ncomp")
# method for class 'Gram'
dbplsr.Gram(y,G,...,weights,ncomp=ncomp,method="ncomp")
D2
class object. Squared distances matrix between individuals.
See details below to learn the usage of dblm.D2
.Gram
class object. Weighted centered inner products matrix of the
squared distances matrix D2
.
See details in dblm
."euclidean"
(default), "manhattan"
,
or "gower"
."AIC"
, "BIC"
, "OCV"
,
"GCV"
and "ncomp"<
dbplsr
containing the following components:fitted.values = fk*bk
fk
.G0
.dbplsr
is particularly suited when the matrix of
predictors has more variables than observations.
By contrast, standard regression (dblm
) will fail in these cases.
The various possible ways for inputting the model explanatory
information through distances, or their squares, etc., are the
same as in dblm
.
The number of components to fit is specified with the argument ncomp
.summary.dbplsr
for summary.
plot.dbplsr
for plots.
predict.dbplsr
for predictions.#require(pls)
library(pls)
data(yarn)
## Default methods:
yarn.dbplsr <- dbplsr(density ~ NIR, data = yarn, ncomp=6, method="GCV")
Run the code above in your browser using DataLab