xpred.rpart: Return Cross-Validated Predictions

View source: R/xpred.rpart.R

xpred.rpartR Documentation

Return Cross-Validated Predictions


Gives the predicted values for an rpart fit, under cross validation, for a set of complexity parameter values.


xpred.rpart(fit, xval = 10, cp, return.all = FALSE)



a object of class "rpart".


number of cross-validation groups. This may also be an explicit list of integers that define the cross-validation groups.


the desired list of complexity values. By default it is taken from the cptable component of the fit.


if FALSE return only the first element of the prediction


Complexity penalties are actually ranges, not values. If the cp values found in the table were .36, .28, and .13, for instance, this means that the first row of the table holds for all complexity penalties in the range [.36, 1], the second row for cp in the range [.28, .36) and the third row for [.13,.28). By default, the geometric mean of each interval is used for cross validation.


A matrix with one row for each observation and one column for each complexity value. If return.all is TRUE and the prediction for each node is a vector, then the result will be an array containing all of the predictions. When the response is categorical, for instance, the result contains the predicted class followed by the class probabilities of the selected terminal node; result[1,,] will be the matrix of predicted classes, result[2,,] the matrix of class 1 probabilities, etc.

See Also



fit <- rpart(Mileage ~ Weight, car.test.frame)
xmat <- xpred.rpart(fit)
xerr <- (xmat - car.test.frame$Mileage)^2
apply(xerr, 2, sum)   # cross-validated error estimate

# approx same result as rel. error from printcp(fit)
apply(xerr, 2, sum)/var(car.test.frame$Mileage) 

rpart documentation built on Oct. 10, 2023, 1:08 a.m.