--- title: "CART splitting" author: "Jo Hardin" date: "Oct 25, 2017" output: html_document: default pdf_document: default --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE, #fig.width = 15, fig.height = 10, dev = "jpeg", fig.align = 'center'#, fig.keep="all", fig.path = "images/", dpi = 400 ) library(tidyverse) library(rpart) library(rpart.plot) ``` ## Trees ```{r RFdata} set.seed(47) x1 <- runif(50, 0, 10) x2 <- runif(50, -10, 10) e <- rnorm(50, 0, 5) response <- 20 + x1^2 + x2^2 + e rfdata <- as_tibble(cbind(x1,x2,response)) ggplot(rfdata, aes(x=x1, y=x2)) + geom_point(aes(color=response), size=2) ``` \newpage ```{r trees} set.seed(47) rfmodel1 <- rpart(response ~ x1+x2, data=rfdata, control=rpart.control(maxdepth=1)) summary(rfmodel1) rpart.plot(rfmodel1) ggplot(rfdata, aes(x=x1, y=x2)) + geom_point(aes(color=response), size=2) + geom_vline(aes(xintercept=7.6)) set.seed(47) rfmodel2 <- rpart(response ~ x1+x2, data=rfdata, control=rpart.control(maxdepth=2)) summary(rfmodel2) rpart.plot(rfmodel2) ggplot(rfdata, aes(x=x1, y=x2)) + geom_point(aes(color=response), size=2) + geom_vline(aes(xintercept=7.6)) + geom_segment(x=0, y=-7.1, xend=7.6, yend=-7.1) set.seed(47) rfmodel3 <- rpart(response ~ x1+x2, data=rfdata, control=rpart.control(maxdepth=3)) summary(rfmodel3) rpart.plot(rfmodel3) ggplot(rfdata, aes(x=x1, y=x2)) + geom_point(aes(color=response), size=2) + geom_vline(aes(xintercept=7.6)) + geom_segment(x=5.5, y=-7.1, xend=5.5, yend=11) + geom_segment(x=0, y=-7.1, xend=7.6, yend=-7.1) set.seed(47) rfmodel4 <- rpart(response ~ x1+x2, data=rfdata, control=rpart.control(maxdepth=4)) summary(rfmodel4) rpart.plot(rfmodel4) ggplot(rfdata, aes(x=x1, y=x2)) + geom_point(aes(color=response), size=2) + geom_vline(aes(xintercept=7.6)) + geom_segment(x=5.5, y=-7.1, xend=5.5, yend=11) + geom_segment(x=0, y=-7.1, xend=7.6, yend=-7.1) + geom_segment(x=0, y=4.1, xend=5.5, yend=4.1) ```