R16 Classification Trees # Example - heart disease data library(rpart) heart <- read.table("H:/S5600/Data sets/SAheart.txt") head(heart) pairs(heart, col=heart$chd+1, pch=heart$chd+1) heart.cart<-rpart(chd~., data=heart, method="class") heart.cart plot(heart.cart) text(heart.cart, use.n=FALSE, pretty=0) # Cushings syndrome data library(MASS) data(Cushings) nrow(Cushings) unk <- (1:27)[Cushings[,3]=="u"] cush.ltp <- log(Cushings[-unk,1:2]) cush.class <- factor(Cushings[-unk,3]) cush.ltpc <- data.frame(cush.ltp,class=cush.class) cush.cart <- rpart(class~., data=cush.ltpc, method="class", minsplit=5) plot(cush.cart) text(cush.cart, use.n=FALSE, pretty=0) plot(cush.ltp,col=unclass(cush.class),pch=as.character(cush.class)) segments(1.5757,-4, 1.5757,3) # Plot first split segments(1.5757, .6931, 4.5, .6931) # Second split # Crabs data data(crabs) head(crabs) crabs.sp <- crabs[,-c(2,3)] crabs.cart <- rpart(sp ~ ., crabs.sp, method="class") plot(crabs.cart) text(crabs.cart, use.n=FALSE, pretty=0) crabs.cart.pred <- predict(crabs.cart, crabs, type="class") table(Actual=sp, Classified=crabs.cart.pred)