2017-05-16 7 views
0

randomForestパッケージを使用してランダムフォレスト分類を実行しました。完了したら、私の分類器にsummary()をタイプし、デフォルト値が500であると言われたときにntreeパラメータが1になっているように見えました。これはrandomForestの引数で手動で変更できます。私はうまくいっていませんでした。R(randomForest):どのように変更してもntree = 1

また別のデータセットで試してみましたが、同じ問題がありました。誰が何が起こっているかも知りませんか?

+1

あなたが実行したコードを表示することはできますか、それとも[再現可能な例](http://stackoverflow.com/a/5963610/496488)ですか? – eipi10

+0

ありがとう!解決策は私の目の前にあった。以前はそれを試していないとは信じられません。 – hrmello

答えて

1

TL; DR:モデルの概要を取得するには、モデルオブジェクトの名前を入力します。たとえば、モデルオブジェクトがrf1タイプrf1の場合、summary(rf1)ではありません。


ほとんどのパッケージは、パッケージによって生成されたオブジェクト上でsummaryを実行したときに送出されます要約「メソッド」を持っています。しかし、randomForestの場合は要約方法がないようです。 randomForestの出力は、一連のモデル出力を含むリストです。 summaryを実行すると、デフォルトのsummary関数が実行され、各リスト要素の長さが返されます。これはあまり役に立ちません。

あなたrandomForestモデルオブジェクト上summaryを実行するとこのように、この場合には、あなたは、ntreeのための1の値を見ているntreerandomForestによって返されたリストの要素であり、それは長さ1のベクトルであるため、

モデル結果のサマリーを表示するには、モデルオブジェクトの名前を入力するだけで実際のサマリーがコンソールに出力されます。たとえば、モデルオブジェクトがrf1と指定されている場合はrf1と入力し、summary(rf1)ではなく入力してください。オブジェクト名を入力するとprint.randomForestメソッドが送出され、ntreeを含むrandomForestの結果の概要が表示されます。

あなたがntreeの値またはモデルから他の結果を抽出したい場合は、randomForestによって返されたリストの構造を参照しても、このリストには何があるかの詳細についてはrandomForestのヘルプを見てstr(rf1)を実行します。たとえば、rf1$ntreeは、モデル内のツリーの数を返します。

関連する問題