randomForestは分類の代わりに回帰を選択します


12

私が使用しているランダムフォレスト Rパッケージを虹彩データを用いて、生成されたランダムフォレスト、分類であるが、私は約700の機能とデータセットを使用する場合(機能が28x28ピクセルの画像の各画素である)と、ラベル列の名前はlabelrandomForest生成されるのは回帰です。私は次の行を使用しています:

rf <- randomForest(label ~ ., data=train)

分類の代わりに回帰が使用されるのはなぜですか?データはを介して読み込まれますread.csv()

回答:


10

randomForestは、変数のクラスに応じてデフォルトで分類または回帰になります。あなたが入力した場合

class(iris$Species)

それが要因であることがわかります。コードの「ラベル」はほとんどの場合数値であるため、randomForestはデフォルトで回帰になります。これを分類のファクターに変換する必要があります。read.tableでcolClassesを設定することにより、変換またはファクターとして読み込むことができます。


4

ほとんどの場合、これはラベルがカテゴリ変数であることをRに通知しなかったためです。read.csv関数は、各列の使用にどのようなタイプと、それが使用するものですその後、数値カラムのように見える場合を推測しようとします。str関数を使用して、Rが変数を保存する方法を確認できます。引数read.csvを使用して、変数を因子(または数値、または...)として強制的に読み取ることができcolClassesます。または、factor関数を使用してラベルを読み取った後、ラベルをファクターに変更できます。

そうでない場合は、データに関する詳細情報が必要です。strデータフレームで実行した結果はおそらく役に立つでしょう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.