2014-09-23 75 views
4

我正在使用rpart包進行決策樹分類。我有一個具有4000個功能(列)的數據框。我想爲我的模型使用rpart()中的所有功能。我怎樣才能做到這一點?基本上,rpart()會問我使用的功能是這樣的:如何使用rpart中的所有功能?

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

我的特點是在文檔中的詞,所以我有超過4K的功能。每個功能都由一個詞表示。有沒有可能在不寫信的情況下使用所有功能?

回答

4

我想通了:

dt <- rpart(class ~ ., data) 

「」代表所有功能。

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'隨機森林。

相關問題