如何使用rpart中的所有功能?

时间:2014-09-23 19:24:59

标签: r decision-tree document-classification rpart

我使用 rpart 包进行决策树分类。我有一个包含大约4000个功能(列)的数据框。我想将rpart()中的所有功能用于我的模型。我怎样才能做到这一点?基本上,rpart()会要求我以这种方式使用该功能:

dt <- rpart(class ~ feature1 + feature2 + ....)

我的功能是文档中的文字,所以我有超过4k的功能。每个功能都由一个单词表示。是否有可能在不编写所有功能的情况下使用它们?

2 个答案:

答案 0 :(得分:7)

我明白了:

dt <- rpart(class ~ ., data)

&#34;&#34;代表所有功能。

答案 1 :(得分:1)

caret库非常有用,因为您可以轻松应用不同的模型并比较它们的性能。它可以调用rpart,但使用稍微不同的语法来包含所有功能。

library(caret)

library(data.table)

mt <- data.table(mtcars)

tr <- train(x=mt[,-'hp', with=FALSE], y = mt[, hp], method='rpart')

plot(tr$finalModel)
text(tr$finalModel)

对决策树使用所有4000个功能可能会导致过度拟合,特别是如果您的观察数量不是很大。 Caret提供内置的交叉验证。您可能还想查看model='rf'随机森林。