predict.qda {MASS} | R Documentation

## Classify from Quadratic Discriminant Analysis

### Description

Classify multivariate observations in conjunction with `qda`

### Usage

    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 the `qda` 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.

### 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

`class` | The MAP classification (a factor)
`posterior` | posterior probabilities for the classes

### See Also

`qda`, `lda`, `predict.lda`

### Examples

    data(iris3)
    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