Ответ 1
Объект, возвращаемый из caret::train()
, представляет собой список. Элемент finalModel
содержит вашу модель.
Попробуйте следующее:
plot(t$finalModel)
text(t$finalModel)
Я использую пакет caret для моделирования данных с помощью пакета rpart.
library('caret')
data(iris)
formula <- as.formula(Species ~.)
t <- train(formula,iris,method = "rpart",cp=0.002,maxdepth=8)
plot(t)
В результате я получаю объект 't', и я пытаюсь построить этот объект для получения дерева. Но результат выглядит так:
Есть ли способ сделать древовидную структуру из объекта каретки?
Объект, возвращаемый из caret::train()
, представляет собой список. Элемент finalModel
содержит вашу модель.
Попробуйте следующее:
plot(t$finalModel)
text(t$finalModel)
более приятный древовидный рисунок:
library(rattle)
fancyRpartPlot(t$finalModel)
Имела ту же проблему, но ответы, приведенные здесь, не решали ее, так как я использовал случайный лес вместо дерева, для всех приходящих здесь одинаковых проблем:
Вкратце: дерево может отображаться только тогда, когда метод имеет значение:
method = "rpart"
Использование случайного леса
method = "rf"
приведет к следующему заговору:
Расширенный ответ уже здесь: Дерево решений по графику в R (Caret)