我正在使用rpart包進行決策樹分類。我有一個具有4000個功能(列)的數據框。我想爲我的模型使用rpart()
中的所有功能。我怎樣才能做到這一點?基本上,rpart()
會問我使用的功能是這樣的:如何使用rpart中的所有功能?
dt <- rpart(class ~ feature1 + feature2 + ....)
我的特點是在文檔中的詞,所以我有超過4K的功能。每個功能都由一個詞表示。有沒有可能在不寫信的情況下使用所有功能?
我正在使用rpart包進行決策樹分類。我有一個具有4000個功能(列)的數據框。我想爲我的模型使用rpart()
中的所有功能。我怎樣才能做到這一點?基本上,rpart()
會問我使用的功能是這樣的:如何使用rpart中的所有功能?
dt <- rpart(class ~ feature1 + feature2 + ....)
我的特點是在文檔中的詞,所以我有超過4K的功能。每個功能都由一個詞表示。有沒有可能在不寫信的情況下使用所有功能?
我想通了:
dt <- rpart(class ~ ., data)
「」代表所有功能。
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'
隨機森林。