у меня есть дерево классификации (ВОЗ) оценивается с помощью rpart:Как преобразовать дерево классификации участка с gridGraphics
library(rpart)
treefit <- rpart(Kyphosis ~ Age + Number + Start, data = kyphosis,
control = rpart.control(cp = 0.001))
Я Plot дерева с помощью команды fancyRpartPlot из погремушки:
require(rattle)
fancyRpartPlot(treefit)
, а затем я попытаюсь преобразовать график в тот же результат, нарисованный с помощью сетки, используя grid.echo команда пакета gridGraphics.
library(gridGraphics)
grid.echo()
Я получаю следующее сообщение об ошибке:
Error in unit(x, default.units) : 'x' and 'units' must have length > 0
я попробовать другой инструмент для визуализации дерева, пакет rpart.plot:
library(rpart.plot)
rpart.plot(treefit)
grid.echo()
и снова:
Error in unit(x, default.units) : 'x' and 'units' must have length > 0
я получаю сообщение об ошибке от grid.echo также при попытке преобразовать участки деревьев, порождаемых партии, RWeka и Rgraphviz. Команда, кажется, чтобы иметь возможность конвертировать только сюжеты, порожденные rpart:
plot(treefit)
text(treefit)
grid.echo()
grid.ls()
graphics-plot-1-xlab-1
graphics-plot-1-ylab-1
graphics-plot-1-text-1
graphics-plot-1-lines-1
graphics-plot-1-text-2
graphics-plot-1-text-3
К сожалению, эти участки являются сырыми и не нравится.
Уважаемый Ахим, ваши комментарии полезны и предложить мне путь для создания интерактивного дерева с использованием ** gridSVG **. Спасибо! –
@ achim-zeileis, спасибо за большой вклад в статистическое сообщество! Знаете ли вы, есть ли способ преобразовать дерево 'party' в представления' rpart'? –
Нет, мы не пытались это сделать, потому что формат 'rpart' действительно специфичен для алгоритма CART и не может легко представлять информацию, используемую в других алгоритмах дерева. Вероятно, вам удастся найти обходные пути для важных бит, но мы всегда чувствовали, что это не стоит усилий (для нас). И, насколько мне известно, никто другой не пытался написать такой интерфейс. –