Returns a vector of predicted responses from a fitted rpart
object.
# S3 method for rpart
predict(object, newdata,
type = c("vector", "prob", "class", "matrix"),
na.action = na.pass, ...)
A new object is obtained by
dropping newdata
down the object. For factor predictors, if an
observation contains a level not used to grow the tree, it is left at
the deepest possible node and frame$yval
at the node is the
prediction.
If type = "vector"
:
vector of predicted responses. For regression trees this is the mean response at the node, for Poisson trees it is the estimated response rate, and for classification trees it is the predicted class (as a number).
If type = "prob"
:
(for a classification tree) a matrix of class probabilities.
If type = "matrix"
:
a matrix of the full responses
(frame$yval2
if this exists, otherwise frame$yval
). For
regression trees, this is the mean response, for Poisson trees it is
the response rate and the number of events at that node in the fitted
tree, and for classification trees it is the concatenation of at least
the predicted class, the class counts at that node in the fitted tree,
and the class probabilities (some versions of rpart may contain
further columns).
If type = "class"
:
(for a classification tree) a factor of classifications based on the responses.
fitted model object of class "rpart"
. This is assumed to be
the result of some function that produces an object with the same named
components as that returned by the rpart
function.
data frame containing the values at which predictions are required.
The predictors referred to in the right side of
formula(object)
must be present by name in newdata
.
If missing, the fitted values are returned.
character string denoting the type of predicted value returned. If
the rpart
object is a classification tree, then the default is to
return prob
predictions, a matrix whose columns are the
probability of the first, second, etc. class. (This agrees with the
default behavior of tree
). Otherwise, a vector
result is returned.
a function to determine what should be done with
missing values in newdata
. The default is to pass them down
the tree using surrogates in the way selected when the model was built.
Other possibilities are na.omit
and na.fail
.
further arguments passed to or from other methods.
This function is a method for the generic function predict for class
"rpart"
. It can be invoked by calling predict
for an object
of the appropriate class, or directly by calling predict.rpart
regardless of the class of the object.
predict
, rpart.object
z.auto <- rpart(Mileage ~ Weight, car.test.frame)
predict(z.auto)
fit <- rpart(Kyphosis ~ Age + Number + Start, data = kyphosis)
predict(fit, type = "prob") # class probabilities (default)
predict(fit, type = "vector") # level numbers
predict(fit, type = "class") # factor
predict(fit, type = "matrix") # level number, class frequencies, probabilities
sub <- c(sample(1:50, 25), sample(51:100, 25), sample(101:150, 25))
fit <- rpart(Species ~ ., data = iris, subset = sub)
fit
table(predict(fit, iris[-sub,], type = "class"), iris[-sub, "Species"])
Run the code above in your browser using DataLab