2015-04-21 206 views
2

我在R中使用隨機森林包進行迴歸,它給了我兩種信息:Mean of squared residuals和%Var解釋。但我想計算訓練和測試集的RMSER^2,任何人都可以幫助我如何找到這些信息?R中的隨機森林包

+3

請提供一個具有最小可重複性的代碼示例,包括庫依賴關係和您使用的任何函數。 – mlegge

回答

2

對不起,這不是一個具體的答案,但我沒有足夠的信譽留下評論。

很難說如何在沒有可重複的例子的情況下得到你想要的東西。但是,如果您在調用randomForest時使用了xtest=ytest=參數(假設您使用的是「randomForest」包),那麼您要查找的內容應該是生成的randomForest對象的一部分。你想看什麼是test生成的隨機森林列表的一部分。

嘗試的例子:

rf.results <- randomForest(whatever arguments) 
rf.results$test$mse # mse (maybe you can take the square root to get rmse) 
rf.results$test$rsq # pseudo-R2 for random forest 

如果你有隨機森林包裝,你可以驗證此信息以及自己做了一些探索與?randomForest。文檔的「Value」部分詳細說明了對randomForest的調用所產生的對象,以及您可以在哪裏找到各種性能指標。

+0

謝謝,但還有兩個問題:1:用rf.results $ mse,我可以計算訓練集的mse和rsq嗎?第二個問題,爲什麼我得到一個向量作爲結果!!!?實際上,我只需要一個真正的mse和rsq。但是我認爲它爲每個數據樣本提供了一個mse和一個rsq。我該怎麼辦? –

+0

'rf.results $ mse'會給你訓練集的mse,'rf.results $ rsq'會給訓練集提供僞R2。 rf.results $ test中的mse和rsq是驗證集上的性能指標。你應該使用這些來找到森林中樹的最佳數量。你得到一個結果向量的原因是因爲'ntree'參數。您可以獲得由1到'ntree'樹組成的隨機森林的性能指標。 –