R でデシジョン ツリーを描画する方法 (例付き)


機械学習において、デシジョン ツリーは、一連の予測子変数を使用して応答変数の値を予測するデシジョン ツリーを作成するモデルの一種です。

R でデシジョン ツリーをプロットする最も簡単な方法は、 rpart.plotパッケージのprp()関数を使用することです。

次の例は、この関数を実際に使用する方法を示しています。

例: R で決定木を描画する

この例では、 ISLRパッケージのHittersデータセットを使用します。これには、263 人のプロ野球選手に関するさまざまな情報が含まれています。

このデータセットを使用して、ホームランと出場年数を使用して特定の選手の年俸を予測する回帰ツリーを構築します。

次のコードは、この回帰ツリーを当てはめる方法と、 prp()関数を使用してツリーを描画する方法を示しています。

 library (ISLR)
library (rpart)
library (rpart.plot)

#build the initial decision tree
tree <- rpart(Salary ~ Years + HmRun, data=Hitters, control=rpart. control (cp= .0001 ))

#identify best cp value to use
best <- tree$cptable[which. min (tree$cptable[," xerror "])," CP "]

#produce a pruned tree based on the best cp value
pruned_tree <- prune (tree, cp=best)

#plot the pruned tree
prp(pruned_tree)

prp () 関数のfaclenextraroundintおよびDigits引数を使用して、デシジョン ツリーの外観をカスタマイズすることもできることに注意してください。

 #plot decision tree using custom arguments
prp(pruned_tree,
    faclen= 0 , #use full names for factor labels
    extra= 1 , #display number of observations for each terminal node
    roundint= F , #don't round to integers in output
    digits= 5 ) #display 5 decimal places in output 

Rで決定木を描く

ツリーには 6 つの終端ノードがあることがわかります。

各ターミナル ノードには、そのノード内のプレーヤーの予測年俸と、そのレーティングに属する元のデータセットからの観測値の数が表示されます。

たとえば、元のデータセットには、経験が 4.5 年未満のプレーヤーが 90 人いて、平均給与が$225.83,000であることがわかります。

R での回帰木の解釈

また、ツリーを使用して、経験年数と平均ホームランに基づいて特定のプレーヤーの年俸を予測することもできます。

たとえば、7 年の経験と平均 4 本塁打の選手の期待年俸は502.81,000 ドルです。

R の回帰木の例

これは、デシジョン ツリーを使用する利点の 1 つです。結果を簡単に視覚化して解釈できるのです。

追加リソース

次のチュートリアルでは、デシジョン ツリーに関する追加情報を提供します。

分類ツリーと回帰ツリーの概要
デシジョン ツリーとランダム フォレスト: 違いは何ですか?
R で分類木と回帰木を当てはめる方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です