Comment créer une parcelle d'arbres dans le package caret ?
Question
J'utilise le package caret pour modéliser les données à l'aide du package rpart.
library('caret')
data(iris)
formula <- as.formula(Species ~.)
t <- train(formula,iris,method = "rpart",cp=0.002,maxdepth=8)
plot(t)
En conséquence, j'obtiens l'objet « t » et j'essaie de tracer cet objet pour obtenir un tracé arborescent.Mais le résultat ressemble à ça :
Existe-t-il un moyen de créer une arborescence à partir d'un objet de train de carets ?
La solution
L'objet revenu de caret::train()
est une liste.L'élément finalModel
contient votre modèle.
Essaye ça:
plot(t$finalModel)
text(t$finalModel)
Autres conseils
PLANCHE SIGNER ACHETE:
library(rattle)
fancyRpartPlot(t$finalModel)
avait le même problème, mais les réponses données ici ne le résoudraient pas, car j'ai utilisé une forêt aléatoire au lieu d'un arbre, ce qui suit est pour tous viennent ici ayant le même problème:
En bref: un arbre ne peut être affiché que lorsque la méthode est quelque chose comme:
method = "rpart"
Utiliser une forêt aléatoire
method = "rf"
entraînera la parcelle suivante:
Réponse étendue déjà ici: Arbre de décision de la parcelle dans R (Caret)