2

以下のプロットの各ノードのパーセンテージを含むテーブルを作成するにはどうすればよいですか?

library(rpart)
library(rattle)
library(rpart.plot)
library(RColorBrewer)

fit <- rpart(Species ~ ., data=iris, method="class")
fancyRpartPlot(fit)

次のプロットが得られます。

画像

最初の列として種を、2 番目の列の各ノードに関連するパーセントを含むテーブルを出力したいと思います。テーブルの 2 回目の繰り返しでは、最初のノード (100%) が除外され、より高いパーセンテージを含む行を保持することで重複が削除されます。

「rpart」のドキュメントを読んでも、このテーブルの作成方法がわかりません。ご意見をお聞かせください。

お時間をいただきありがとうございます。

4

1 に答える 1

1

rpart-object の where 要素は、ターミナル ノードの予測クラスです。これは、次の表で取得できます。

> iris$where <- fit$where
> with(iris, table(Species, where))
            where
Species       2  4  5
  setosa     50  0  0
  versicolor  0 49  1
  virginica   0  5 45

列の合計を合計数で割ると思いますか?

> 100*colSums(with(iris, table(Species, where)) )/150
       2        4        5 
33.33333 36.00000 30.66667 
于 2014-12-31T23:56:32.877 に答える