predict.qda
Classify from Quadratic Discriminant Analysis
Classify multivariate observations in conjunction with qda
- Keywords
- multivariate
Usage
# S3 method for qda
predict(object, newdata, prior = object$prior,
method = c("plug-in", "predictive", "debiased", "looCV"), …)
Arguments
- object
object of class
"qda"
- newdata
data frame of cases to be classified or, if
object
has a formula, a data frame with columns of the same names as the variables used. A vector will be interpreted as a row vector. If newdata is missing, an attempt will be made to retrieve the data used to fit theqda
object.- prior
The prior probabilities of the classes, by default the proportions in the training set or what was set in the call to
qda
.- method
This determines how the parameter estimation is handled. With
"plug-in"
(the default) the usual unbiased parameter estimates are used and assumed to be correct. With"debiased"
an unbiased estimator of the log posterior probabilities is used, and with"predictive"
the parameter estimates are integrated out using a vague prior. With"looCV"
the leave-one-out cross-validation fits to the original dataset are computed and returned.- …
arguments based from or to other methods
Details
This function is a method for the generic function
predict()
for class "qda"
.
It can be invoked by calling predict(x)
for an
object x
of the appropriate class, or directly by
calling predict.qda(x)
regardless of the
class of the object.
Missing values in newdata
are handled by returning NA
if the
quadratic discriminants cannot be evaluated. If newdata
is omitted and
the na.action
of the fit omitted cases, these will be omitted on the
prediction.
Value
a list with components
The MAP classification (a factor)
posterior probabilities for the classes
References
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.
Ripley, B. D. (1996) Pattern Recognition and Neural Networks. Cambridge University Press.
See Also
Examples
# NOT RUN {
tr <- sample(1:50, 25)
train <- rbind(iris3[tr,,1], iris3[tr,,2], iris3[tr,,3])
test <- rbind(iris3[-tr,,1], iris3[-tr,,2], iris3[-tr,,3])
cl <- factor(c(rep("s",25), rep("c",25), rep("v",25)))
zq <- qda(train, cl)
predict(zq, test)$class
# }