R語言實戰應用精講50篇(三十一)-R語言實現決策樹(附R語言代碼)
決策樹回歸
首先采用rpart包的rpart函數訓練決策樹模型,需要指定公式、數據集,將模型設定為回歸模型,也就是將method設定為anova,最后是控制參數,主要是一些控制決策樹生長的預剪枝參數,包括設定樹的深度、葉子節點樣本量、復雜度參數等,具體可以查閱函數幫助文檔。
其次輸出前述模型的結果,即初始樹,同時輸出復雜度相關表格和圖形。依據這些表格和圖形可以確定一個最佳的cp值,進而進行下一步后剪枝。經過后剪枝的決策樹,也就是我們最后確定下來的決策樹模型,用于后續的輸出和預測。
最后輸出決策樹相關的圖形,包括變量重要性條形圖、樹形圖。
#?訓練模型
#?rpart參考文檔
set.seed(42) # 固定交叉驗證結果
fit_dt_reg <- rpart(
form_reg, # formula
data = traindata,
method = "anova", # 回歸
#?回歸模型無parms參數
control = rpart.control(cp = 0.005)
)
#?原始回歸樹
fit_dt_reg
#?復雜度相關數據
printcp(fit_dt_reg)
plotcp(fit_dt_reg)
#?后剪枝
fit_dt_reg_pruned <- prune(fit_dt_reg, cp = cp1SE)
print(fit_dt_reg_pruned)
summary(fit_dt_reg_pruned)
#?變量重要性數值
fit_dt_reg_pruned$variable.importance
#?變量重要性圖示
varimpdata <-
data.frame(importance = fit_dt_reg_pruned$variable.importance)
g
決策樹
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。