0
我使用隨機森林對數據的分類,我無法理解:如何在隨機森林中得到正確的類別,預測類別和預測概率?
1,我們怎樣才能獲得它告訴我們的實際分類中testData
(例如,在下面的信息(最好在3列的數據幀)例如Species
列),由隨機森林進行的預測以及該預測的概率分數。例如僅僅考慮下面的數據集,並且其中在testData
物種(對於隨機森林盲信息)爲雲芝 1例,但它是由分類器錯誤地預測爲錦葵與概率分數的0.67。我想這樣的信息,但不知道怎樣才能獲得此
2 - 我們怎樣才能獲得testData
和trainingData
混淆矩陣這也給了我們class.error,就像在情況下,當我們打印模型。
data(iris)
set.seed(111)
ind <- sample(2, nrow(iris), replace = TRUE, prob=c(0.8, 0.2))
trainData <- iris[ind==1,]
testData <- iris[ind==2,]
#grow forest
iris.rf <- randomForest(Species ~ ., data=trainData)
print(iris.rf)
Call:
randomForest(formula = Species ~ ., data = trainData)
Type of random forest: classification
Number of trees: 500
No. of variables tried at each split: 2
OOB estimate of error rate: 3.33%
Confusion matrix:
setosa versicolor virginica class.error
setosa 45 0 0 0.00000000
versicolor 0 39 1 0.02500000
virginica 0 3 32 0.08571429
**#predict using the training again...**
iris.pred <- predict(iris.rf, trainData)
table(observed = trainData$Species, predicted = iris.pred)
predicted
observed setosa versicolor virginica
setosa 45 0 0
versicolor 0 40 0
virginica 0 0 35
**#Testing on testData**
irisPred<-predict(iris.rf, newdata = testData)
table(irisPred, testData$Species)
irisPred setosa versicolor virginica
setosa 5 0 0
versicolor 0 8 1
virginica 0 2 14
你在哪裏初始化/賦值給iri s.rf'對象? – Newbie
對不起,應該澄清一點:我遵循上面的代碼(iris.rf < - randomForest(Species〜。,data = trainData))。 –