Continuous Variable

Tree-based method는 종속변수가 continuous variable의 경우에도 사용할수 있다. 예를 들어 mtcars 데이타를 이용하여 설명하고자 한다. mtcars 데이타는 1974년 US motor magazine에 실린 32종의 자동차의 배기량에 대한 데이타이다.

tail(mtcars)
                mpg cyl  disp  hp drat    wt qsec vs am gear carb
Porsche 914-2  26.0   4 120.3  91 4.43 2.140 16.7  0  1    5    2
Lotus Europa   30.4   4  95.1 113 3.77 1.513 16.9  1  1    5    2
Ford Pantera L 15.8   8 351.0 264 4.22 3.170 14.5  0  1    5    4
Ferrari Dino   19.7   6 145.0 175 3.62 2.770 15.5  0  1    5    6
Maserati Bora  15.0   8 301.0 335 3.54 3.570 14.6  0  1    5    8
Volvo 142E     21.4   4 121.0 109 4.11 2.780 18.6  1  1    4    2
str(mtcars)
'data.frame':   32 obs. of  11 variables:
 $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
 $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
 $ disp: num  160 160 108 258 360 ...
 $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
 $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
 $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
 $ qsec: num  16.5 17 18.6 19.4 17 ...
 $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
 $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
 $ gear: num  4 4 4 3 3 3 3 4 4 4 ...
 $ carb: num  4 4 1 1 2 1 4 2 2 4 ...

이 데이타의 연비(mpg)에 대한 tree-based analysis를 해보면 다음과 같다.

library(party)
cartree=ctree(mpg~.,data=mtcars)
plot(cartree)

plot of chunk unnamed-chunk-3

연비는 공차중량(wt) 및 배기량(disp)에 따라 달라진다. 이들 변수들의 상관관계를 보기위해 parallel plot을 그려보면 다음과 같다.

library(lattice)
parallelplot(~mtcars[,c(3,4,1,6,3)])