8

R パッケージ rpart では、意思決定ツリーの CP テーブル内に表示されるツリーのサイズを決定するものは何ですか? 以下の例では、CP テーブルはデフォルトで、ノードが 1、2、および 5 のツリーのみを表示します (それぞれ nsplit = 0、1、および 4)。

library(rpart)   
fit <- rpart(Kyphosis ~ Age + Number + Start, method="class", data=kyphosis)
> printcp(fit) 

Classification tree:
rpart(formula = Kyphosis ~ Age + Number + Start, data = kyphosis, 
method = "class")

Variables actually used in tree construction:
[1] Age   Start

Root node error: 17/81 = 0.20988

n= 81 

        CP nsplit rel error  xerror    xstd
1 0.176471      0   1.00000 1.00000 0.21559
2 0.019608      1   0.82353 0.94118 0.21078
3 0.010000      4   0.76471 0.94118 0.21078

rpart()提示するツリーのサイズを決定するために使用される固有のルールはありますか? そして、考えられるすべてのサイズのツリーに対して相互検証統計を返すように強制することは可能printcp()ですか?つまり、上記の例では、ノードが 3 つと 4 つのツリーの行も含めます (nsplit = 2, 3)?

4

2 に答える 2

3

関数を使用rpart()して関数を制御しrpart.control()ます。これにはminsplit、指定された値よりも多くの観測値があるcp場合にのみ分割するように関数に指示するものや、適合の全体的な不足が の係数で減少した場合にのみ分割するように関数に指示するものなどのパラメーターがありcpます。上記の例を見るとsummary(fit)、 のすべての値の統計が表示されますnsplit。使用時にこれらの値を出力するには、元の関数を呼び出すときに適切な値をprintcp(fit)選択する必要があります。cpminsplitrpart

于 2015-03-09T17:42:22.043 に答える