Попытайтесь увеличить mtry
iso$mtry <- 5 # default value is 1
После столкновения с той же проблемой и копания в течение некоторого времени, я думаю, что я нашел проблему.
глубоко в функции подбора, вызов делается для функции solitude :: TerminalNodesDepth, которая, в свою очередь, делает этот вызов:
future.apply::future_lapply(1:num_trees, function(x) terminalNodesDepthPerTree(ranger::treeInfo(model, x)))
Функция "TerminalNodesDepthPerTree" извлекает что-то из каждого дерева в обученной модели рейнджера, используя ranger :: treeInfo.
Однако для некоторых деревьев разбиения нет: поэтому treeInfo возвращает:
nodeID leftChild rightChild splitvarID splitvarName splitval terminal prediction
1 0 NA NA NA <NA> NA TRUE 1385.02
, что приводит к ошибке!
Я решил проблему, увеличив mtry по умолчанию 1.
надеюсь, это поможет:)