拓端tecdat|R語言分類回歸決策樹交互式修剪和更美觀地可視化分析細胞圖像分割數(shù)據(jù)集
原文鏈接:http://tecdat.cn/?p=24956?
原文出處:拓端數(shù)據(jù)部落公眾號
繪制分類或回歸樹的基本方法的 rpart() 函數(shù)只是調(diào)用 plot。然而,總的來說,結(jié)果并不漂亮。事實證明,一段時間以來,有一種更好的方法來繪制 rpart() 樹。
我們可以大概瀏覽下如何實現(xiàn),并且進一步研究。
# 繪制分類樹圖
library(rpart) # 流行的決策樹算法
library(party) # 替代決策樹算法
library(partykit) # 將rpart對象轉(zhuǎn)換為二叉樹
data# 獲取一些數(shù)據(jù)
# 繪制大樹
frm <- as.form
tee1 <- rpart
#
plot# 繪圖很混亂
text
#
pr# 將對樹進行繪圖
vale=3 # 縮短變量名稱
# 對樹進行交互式修剪
pp$obj # 以交互方式修剪樹形
pp # 顯示新的樹木
#
#-------------------------------------------------------------------
rpart# 一個更合理的樹
prp# 一個快速繪圖
fayRpPot# 一個來自rattle的花式繪圖
#
#-------------------------------------------------------------------
# 繪制一棵用RevoScaleR構(gòu)建的樹
# 構(gòu)建一個模型公式
names
X <- as.vector
frm <- as.form
# 運行模型
DTree
# 繪制樹形圖
prp
faRaPlt
數(shù)據(jù)描述
Hill, LaPan, Li和Haney(2007)開發(fā)了模型來預(yù)測高含量屏幕中哪些細胞被很好地分割。該數(shù)據(jù)由2019年的119次成像測量組成。最初的分析使用1009個進行訓(xùn)練,1010個作為測試集(見稱為案例的一欄)。
詳細內(nèi)容
結(jié)果類別包含在一個名為Class的因子變量中,水平為 "PS "表示分割不良,"WS "表示分割良好。
論文中使用的原始數(shù)據(jù)可以在Biomedcentral網(wǎng)站上找到。caret < 4.98的版本包含原始數(shù)據(jù)?,F(xiàn)在的版本是經(jīng)過修改的。首先,一些預(yù)測因子的幾個離散版本(后綴為 "狀態(tài)")被刪除。第二,有幾個最小值為0的傾斜預(yù)測因子(將受益于某種轉(zhuǎn)換,如對數(shù))。在這些字段中加入了1的常量值。AvgIntenCh2、FiberAlign2Ch3、FiberAlign2Ch4、SpotFiberCountCh4和TotalIntenCh2。
修剪和繪制樹
加載數(shù)據(jù)后,腳本構(gòu)建 rpart() 分類樹。使用 plot() 繪制樹會產(chǎn)生一些覆蓋文本的黑云,這是您嘗試繪制一棵大樹所期望的典型結(jié)果。但是,pp() 在繪制樹并僅使用默認設(shè)置顯示其結(jié)構(gòu)方面做得非常好。并且,使用指示 pr() 縮寫變量名稱的參數(shù)使繪圖更具可讀性。

接下來的幾行代碼展示了 pp() 的交互式修剪功能。分配對象?new.tree.1 的行?產(chǎn)生一個“實時”樹圖。使用鼠標修剪樹,點擊“退出”并重新繪制,您將得到一個相當不錯的樹頂部繪圖。這是將樹頂部的清晰圖片獲取到報告中的巧妙方法。
修剪后繪制更美觀的樹?
tree.2,一個更合理的樹,是僅僅接受rpart的結(jié)果。首先,使用默認設(shè)置使用 pp() 繪制這棵樹,然后在下一行中,繪制該樹。

此函數(shù)只是 pp() 函數(shù)的包裝,但易于用于繪制分類樹,并且是美學如何促進交流的一個很好的例子。每個節(jié)點框顯示分類、該節(jié)點上每個類的概率(即以該節(jié)點為條件的類的概率)以及該節(jié)點使用的觀察百分比。請注意虛線的使用如何傾向于強調(diào)節(jié)點而不是樹本身,以及底部的葉子排列如何幫助查看者猜測節(jié)點框中的百分比表示到達每個節(jié)點的觀察百分比節(jié)點。(底行增加到 100%)。
腳本的最后幾行使用函數(shù)構(gòu)造了一個樹,用于構(gòu)建具有大量數(shù)據(jù)集的分類和回歸樹模型。

最受歡迎的見解
1.從決策樹模型看員工為什么離職
2.R語言基于樹的方法:決策樹,隨機森林
3.python中使用scikit-learn和pandas決策樹
4.機器學習:在SAS中運行隨機森林數(shù)據(jù)分析報告
5.R語言用隨機森林和文本挖掘提高航空公司客戶滿意度
6.機器學習助推快時尚精準銷售時間序列
7.用機器學習識別不斷變化的股市狀況——隱馬爾可夫模型的應(yīng)用
8.python機器學習:推薦系統(tǒng)實現(xiàn)(以矩陣分解來協(xié)同過濾)
9.python中用pytorch機器學習分類預(yù)測銀行客戶流失