деревья решений с принудительной структурой - PullRequest
4 голосов
/ 15 февраля 2012

Я использую деревья решений (CART) в R, используя пакет rpart, чтобы посмотреть на взаимосвязь между SST (переменные предиктора) и климатом (переменная предиката).

Я бы хотел "форсировать"дерево в определенную структуру - то есть разделить на переменную предиктора 1, а затем на переменную 2.

Я уже некоторое время использую R, поэтому я подумал Я мог бы взглянуть накод, стоящий за функцией rpart, и измените его для поиска «лучших разбиений» в определенной переменной-предикторе.Однако функция rpart вызывает подпрограммы C и не имея никакого опыта работы с CI, теряется здесь ...

Я мог бы написать функцию с нуля, но хотел бы избежать ее, если это возможно!Итак, мои вопросы:

  • Есть ли другой метод дерева решений (предпочтительно реализованный в R), в котором вы можете форсировать структуру дерева?
  • Если нет - можно ли как-нибудь преобразовать код C в R?
  • Есть еще идеи?

Заранее спасибо, и помощь очень ценится.

Ответы [ 2 ]

1 голос
/ 26 августа 2015

Когда ваши данные указывают на дерево с известной структурой, представьте эту структуру R, используя формат файла newick или nexus. Затем вы можете читать в структуре, используя read.tree или read.nexus из пакета Phylo.

0 голосов
/ 30 мая 2012

Возможно, вам следует взглянуть на method формальный параметр rpart

В документации:

... 'method' может быть списком функций с именем'init', 'split' и 'eval'.Примеры приведены в файле 'tests / usersplits.R' в источниках.

...