関数 varImp() を使用しています。
ツリーに当てはめてから、varImp() を使用して、どの変数が最も重要かを確認します。varImp() の出力から最も重要な変数名を抽出したいと思います。しかし、出力はリストのように見え、変数名を取得する方法はなく、変数の重要度の数値の重みのみが表示されます。
出力をデータ フレームに変換し、names() も使用しようとしましたが、どちらも重要な変数名を取得できません。
次に例を示します。
> # Sample data
> head(Orthodont)
Grouped Data: distance ~ age | Subject
distance age Subject Sex
1 26.0 8 M01 Male
2 25.0 10 M01 Male
3 29.0 12 M01 Male
4 31.0 14 M01 Male
5 21.5 8 M02 Male
6 22.5 10 M02 Male
> sample_tree <- rpart(distance ~ ., data = Orthodont)
> varImp(sample_tree)
Overall
age 1.1178243
Sex 0.5457834
Subject 2.8446154
> names(varImp(sample_tree))
[1] "Overall"
> as.data.frame(varImp(sample_tree))
Overall
age 1.1178243
Sex 0.5457834
Subject 2.8446154
> # What I want are the names of the two most important variables.