kplsrda {rchemo} | R Documentation |
KPLSR-DA models
Description
Discrimination (DA) based on kernel PLSR (KPLSR)
Usage
kplsrda(X, y, weights = NULL, nlv, kern = "krbf", ...)
## S3 method for class 'Kplsrda'
predict(object, X, ..., nlv = NULL)
Arguments
X |
For main function: Training X-data ( |
y |
Training class membership ( |
weights |
Weights ( |
nlv |
For main function: The number(s) of LVs to calculate. — For auxiliary function: The number(s) of LVs to consider. |
kern |
Name of the function defining the considered kernel for building the Gram matrix. See |
... |
Optional arguments to pass in the kernel function defined in |
object |
For auxiliary function: A fitted model, output of a call to the main functions. |
Details
The training variable y
(univariate class membership) is transformed to a dummy table containing nclas
columns, where nclas
is the number of classes present in y
. Each column is a dummy variable (0/1). Then, a kernel PLSR (KPLSR) is run on the X-
data and the dummy table, returning predictions of the dummy variables. For a given observation, the final prediction is the class corresponding to the dummy variable for which the prediction is the highest.
Value
For kplsrda
:
fm |
list with the kplsrda model: ( |
lev |
y levels |
ni |
number of observations by level of y |
For predict.Kplsrda
:
pred |
predicted class for each observation |
posterior |
calculated probability of belonging to a class for each observation |
Examples
n <- 50 ; p <- 8
Xtrain <- matrix(rnorm(n * p), ncol = p)
ytrain <- sample(c(1, 4, 10), size = n, replace = TRUE)
m <- 5
Xtest <- Xtrain[1:m, ] ; ytest <- ytrain[1:m]
nlv <- 2
fm <- kplsrda(Xtrain, ytrain, nlv = nlv)
names(fm)
predict(fm, Xtest)
pred <- predict(fm, Xtest)$pred
err(pred, ytest)
predict(fm, Xtest, nlv = 0:nlv)$posterior
predict(fm, Xtest, nlv = 0)$posterior
predict(fm, Xtest, nlv = 0:nlv)$pred
predict(fm, Xtest, nlv = 0)$pred