2013-06-16 7 views
5

クラス変数がバイナリ(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つのクラスだけを取る単一の離散変数を持っています。もちろん、このモデルで予測を実行すると、ゼロと1のリストが必要なときに連続した数値が得られます。誰かが回帰と分類ではなく、これを使うために私が間違っていることを教えてもらえますか?

答えて

9

応答列を、as.factor(またはちょうどfactor)を使用する係数に変更します。あなたはその変数を数値 0と1の値として保存しているので、Rは数値変数として正しく解釈します。あなたがRに違った扱いをさせたいのであれば、それを伝える必要があります。

これはy引数の下の文書に記載されている:

A response vector. If a factor, classification is assumed, otherwise regression is assumed. If omitted, randomForest will run in unsupervised mode.

+0

おかげで、Joran、それがとてもうまくいきました。 – Eric

+0

明示してください。現在のrandomForest pdfには、 'Y'引数の情報が直接含まれていません。 – oaxacamatt

+0

@oaxacamatt私はあなたのコメントに従うかどうか分からない。それは私の答えに向けられていますか?私が知る限り、私のブロック見積もりは依然として現行版のCRANの文書を直接引用したものです。私はあなたを誤解していますか? – joran

関連する問題