rpart()で分割数を選択する方法は?


9

に使用rpart.controlしてminsplit=2rpart()関数から次の結果を得ました。データの過剰適合を回避するために、スプリット3またはスプリット7を使用する必要がありますか?スプリット7を使用すべきではありませんか?私にお知らせください。

ツリー構築で実際に使用される変数:

[1] ct_a ct_b usr_a

Root node error: 23205/60 = 386.75

n= 60        

    CP nsplit rel error  xerror     xstd
1 0.615208      0  1.000000 1.05013 0.189409
2 0.181446      1  0.384792 0.54650 0.084423
3 0.044878      2  0.203346 0.31439 0.063681
4 0.027653      3  0.158468 0.27281 0.060605
5 0.025035      4  0.130815 0.30120 0.058992
6 0.022685      5  0.105780 0.29649 0.059138
7 0.013603      6  0.083095 0.21761 0.045295
8 0.010607      7  0.069492 0.21076 0.042196
9 0.010000      8  0.058885 0.21076 0.042196

1
以前のQに投稿したフォローアップでこれに回答しました。そのため、これは必要ありませんでした。今後の参考のために、フォローアップのために Qを編集しないでくださいと述べました。
Gavin Simpson

1
将来的に関連する質問を検索しないようにするために、以前のQへのリンクを以下に示します:stats.stackexchange.com/questions/13446/…
11

回答:


10

規約は、最良のツリーの1つの標準誤差内で、最良のツリー(最小の相対検証誤差)または最小の(最も単純な)ツリーを使用することです。最高のツリーは行8(7分割)にありますが、行7(6分割)のツリーは実質的に同じ仕事をします(xerror行7のツリー= 0.21761の場合、これはxerror最高のツリーと1つの標準の範囲内(より小さい))error xstd、、(0.21076 + 0.042196)= 0.252956)でより簡単なので、1つの標準エラールールが選択します。

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