簡體   English   中英

將隨機森林設置為分類

[英]set random forest to classification

我正在嘗試一些數據的隨機森林,其中類變量是二進制(1或0)。 這是我正在運行的代碼:

forest.model <- randomForest(x = ticdata2000[,1:85], y = ticdata2000[,86], 
                       ntree=500,
                       mtry=9,
                       importance=TRUE,
                       norm.votes=TRUE,
                       na.action=na.roughfix,
                       replace=FALSE,
                             )

但是當森林結束時,我收到以下錯誤:

Warning message:
In randomForest.default(x = ticdata2000[, 1:85], y = ticdata2000[,  :
  The response has five or fewer unique values.  Are you sure you want to do regression?

答案當然是不。 我不想做回歸。 我有一個單獨的離散變量,只需要2個類。 當然,當我使用這個模型運行預測時,我會得到連續數字,當我想要一個零和一個列表時。 有人可以告訴我,我做錯了讓這個使用回歸而不是分類嗎?

使用as.factor (或只是factor )將響應列更改為一個因子。 由於您已將該變量存儲為數字 0和1,因此R正確地將其解釋為數字變量。 如果你想讓R以不同的方式對待它,你必須這樣說。

這在y參數下的文檔中提到:

響應向量。 如果假設一個因子,則假設為回歸。 如果省略,randomForest將以無人監督模式運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM