Компонент, означающий ranger.forest - PullRequest
0 голосов
/ 05 июля 2019

Я работаю с ranger , быстрой реализацией случайных лесов.Проблема в том, что я понятия не имею, как интерпретировать $forest компонент результата.В документе просто говорится:

forest: сохраненный лес (если для write.forest установлено значение TRUE).Обратите внимание, что идентификаторы переменных в объекте split.varIDs не обязательно представляют номер столбца в R.

Что ж, это не очень полезно, поэтому я попытался проверить его компоненты самостоятельно по их именамне говорят сами за себя.

> names(ranger(Species ~ ., data = iris)$forest)
 [1] "dependent.varID"            "num.trees"
 [3] "child.nodeIDs"              "split.varIDs"
 [5] "split.values"               "is.ordered"
 [7] "class.values"               "levels"
 [9] "independent.variable.names" "treetype"

Некоторые компоненты, такие как num.trees, тривиальны для понимания, но такие вещи, как child.nodeIDs, действительно потрясают.

> ranger(Species ~ ., data = iris)$forest$child.nodeIDs[[1]]
[[1]]
 [1]  1  3  5  0  7  9 11  0  0  0 13 15  0  0  0  0  0

[[2]]
 [1]  2  4  6  0  8 10 12  0  0  0 14 16  0  0  0  0  0

Это задокументировано?где-нибудь?

1 Ответ

1 голос
/ 05 июля 2019

См. Документацию для функции ranger::treeInfo: https://www.rdocumentation.org/packages/ranger/versions/0.11.2/topics/treeInfo

...