2

Rに1つの出力と2つの予測子があるシミュレーションデータに対して、ツリーパッケージからツリーを適合させました。

下の写真のように、Rのモデルで破線を描きたいのですが、それを行う方法はありますか?条件=0の線を描画しようとしましたが、線はデータの最小から最大までです。

ここに画像の説明を入力してください

これは、私がこれまでにアイリスデータと最後の2つのクラスのハードコードされた条件で行ったことです

    iristree<-tree(Species ~.,data=iris)
    iristree #find split criterions 
node), split, n, deviance, yval, (yprob)
  * denotes terminal node

1) root 150 329.600 setosa ( 0.33333 0.33333 0.33333 )  
   2) Petal.Length < 2.45 50   0.000 setosa ( 1.00000 0.00000 0.00000 ) *
   3) Petal.Length > 2.45 100 138.600 versicolor ( 0.00000 0.50000 0.50000 )  
     6) Petal.Width < 1.75 54  33.320 versicolor ( 0.00000 0.90741 0.09259 )  
      12) Petal.Length < 4.95 48   9.721 versicolor ( 0.00000 0.97917 0.02083 )  
        24) Sepal.Length < 5.15 5   5.004 versicolor ( 0.00000 0.80000 0.20000 ) *
        25) Sepal.Length > 5.15 43   0.000 versicolor ( 0.00000 1.00000 0.00000 ) *
      13) Petal.Length > 4.95 6   7.638 virginica ( 0.00000 0.33333 0.66667 ) *
     7) Petal.Width > 1.75 46   9.635 virginica ( 0.00000 0.02174 0.97826 )  
      14) Petal.Length < 4.95 6   5.407 virginica ( 0.00000 0.16667 0.83333 ) *
      15) Petal.Length > 4.95 40   0.000 virginica ( 0.00000 0.00000 1.00000 ) *

    ....
plot(iris$Petal.Length, iris$Petal.Width, pch=21, 
         bg=c("red","green3","blue")[unclass(iris$Species)], 
         main="Edgar Anderson's Iris Data")
lines(c(0,8),c(1.75,1.75)) # manually put split criterions
lines(c(4.95,4.95),c(0,3))  # manually put split criterions

そしてそれは

ここに画像の説明を入力してください

一番下と左の行を削除するつもりです。

4

1 に答える 1

2

パッケージで見つけpartition.treeました。treeこの機能で、次のような絵を描くことができました。 ここに画像の説明を入力してください

それは私が望んでいたことではありませんが、私が取り組むことができる最も近いものです。

于 2012-09-23T01:18:51.147 に答える