Rpart Outcome в PDF-файлы в R
Я строю некоторые модели деревьев регрессии, я все сделал, теперь я хочу записать деревья в PDF-файл. Я использую приведенную ниже команду для его генерации.
pdf(file=paste0("Plots1.pdf"), header= "Rpart Outcome" )
lapply(names(tree.2), function(x)fancyRpartPlot(tree.2[[x]]))
dev.off()
Объект tree.2 содержит 8 различных моделей rpart
и он сохраняется в виде списка.
Вышеупомянутая команда работает как шарм, но проблема в том, что я хочу отдельный заголовок в верхней части каждой страницы PDF в соответствии с именами дерева списка.2 (names(tree.2)
), Я пробовал много разных перестановок и комбинаций, но не смог решить это с помощью lapply
Однако, если я использую for loop
вышеуказанная вещь достижима. Я хочу использовать lapply
выполнить это, это возможно? Я знаю, что это так, но сейчас я не могу этого сделать.
Библиотеки, используемые здесь: rattle
, rpart
Пример игрушки:
tree1 <- rpart(as.formula(mpg ~ hp + wt), data=mtcars)
tree2 <- rpart(as.formula(mpg ~ am + hp), data=mtcars)
treex <- list("tree1"= tree1, "tree2"=tree2)
pdf(file="file.pdf", header="Rpart Outcome")
lapply(names(treex), function(x)fancyRpartPlot(treex[[x]]))
dev.off()
Здесь я хочу заголовок на каждой странице названия баз (treex).
Пожалуйста, дайте мне знать, если это дублирующий вопрос (я не нашел его), я немедленно удалю его.
Спасибо
1 ответ
Кажется, это работает для меня:
library(rpart)
library(rattle)
tree1 <- rpart(as.formula(mpg ~ hp + wt), data=mtcars)
tree2 <- rpart(as.formula(mpg ~ am + hp), data=mtcars)
treex <- list("tree1"= tree1, "tree2"=tree2)
pdf(file="file.pdf")#, header="Rpart Outcome")
lapply(names(treex), function(x)fancyRpartPlot(treex[[x]], main = x))
dev.off()
Я только что добавил аргумент main
в fancyRpartPlot
который берет название сюжета.
Надеюсь, поможет!