D'après ce que je comprends, l'argument cp de la rpart
fonction aide à pré-élaguer l'arbre de la même manière que les arguments minsplit ou minbucket. Ce que je ne comprends pas, c'est comment les valeurs CP sont calculées. Par exemple
df<-data.frame(x=c(1,2,3,3,3,4), y=as.factor(c(TRUE, TRUE, FALSE, TRUE, FALSE, FALSE)), method="class")
mytree<-rpart(y ~ x, data = df, minbucket = 1, minsplit=1)
Arbre résultant ...
mytree
n= 6
node), split, n, loss, yval, (yprob)
* denotes terminal node
1) root 6 3 FALSE (0.5000000 0.5000000)
2) x>=2.5 4 1 FALSE (0.7500000 0.2500000) *
3) x< 2.5 2 0 TRUE (0.0000000 1.0000000) *
Sommaire...
summary(mytree)
Call:
rpart(formula = y ~ x, data = df, minbucket = 1, minsplit = 1)
n= 6
CP nsplit rel error xerror xstd
1 0.6666667 0 1.0000000 2.0000000 0.0000000
2 0.0100000 1 0.3333333 0.6666667 0.3849002
D'où viennent les .666 et .01?