2016-03-16 1 views
0

Я использую R (RStudio) и пакет randomForest. Я использовал следующий код:pred.randomForest не найден

rf = randomForest(y ~ x1 + x2 +...) 

Которая работала нормально. Затем я попытался использовать функцию predict.randomForest и столкнулся с проблемой. R дал мне следующее сообщение:

Error: could not find function "predict.randomForest" 

Когда я иду к RandomForest странице помощи (??randomForest), он показывает мне, что есть такая функция, как predict.randomForest, и все же я не могу назвать его. Что здесь происходит? Я проверил, есть ли обновление для пакета randomForest, и нет.

Кроме того, функция plot.randomForest() не найдена.

+0

pred.randomForest - это метод S3, который общая функция предсказывает() e для всех объектов класса «randomForest» или подклассов, которые наследуют «randomForest». Если вы хотите получить доступ к функции напрямую для какой-либо диагностической цели, попробуйте; myPredRFfunction <- randomForest ::: predict.randomForest –

ответ

2

Вы можете просто использовать общий plot() и predict() вместо этого, как в этом примере из ?randomForest:

require(randomForest) 
set.seed(17) 
x <- matrix(runif(5e2), 100) 
y <- gl(2, 50) 
myrf <- randomForest(x, y) 
predict(myrf, x) 

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 
    1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 
    1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 
    2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
Levels: 1 2 

Вы также можете посмотреть на MDSplot() с этим, например, из того же источника:

set.seed(17) 
iris.urf <- randomForest(iris[, -5]) 
MDSplot(iris.urf, iris$Species) 

enter image description here

+0

А, ок. Спасибо за ответ – japem