2016-04-20 36 views
0

我使用partykit:ctree來探索我的數據集,這是一組約15,000個海灘調查,調查從50不同的類別。數據中有很多零點,並且有大量的碎片總量。我還有一系列自變量,包括一些因素,一些計數數據和一些連續數據。在partykit中提取終端節點上的信息:ctree具有大量多變量響應

這裏是一個非常小的樣本數據集:

Counts<- as.data.frame(matrix (rpois(100,1), ncol=5)) 
colnames(Counts)<-c("Glass", "HardPlastic", "SoftPlastic", "PlasticBag", "Fragments") 
State<-rep(c("CA","OR","WA"), each=6) 
Counts$State<-c(State,"CA","OR") 
County<-rep((1:9), each=2) 
Counts$County<-c(County, 1,4) 
Counts$Distance<-c(10, 15, 13, 19, 18, 23, 38, 40, 49, 44, 47, 45, 52, 53, 55, 59, 51, 53, 14, 33) 
Year<-rep(c("2010","2011","2012"), times=7) 
Counts$Year<-Year[1:20] 

我用下面的代碼進行分區我的數據:

M.2<-ctree(Glass + HardPlastic + SoftPlastic + PlasticBag + Fragments ~ 
     as.factor (State) + as.factor (County) + Distance + as.factor (Year), data=Counts) 
plot(M.2, terminal_panel = node_barplot, cex = 0.5) 

這來了一個可愛的圖形,但我怎麼解壓每個終端節點的成員資格?如果只有一些項目,我可以在圖表中看到它,但是一旦可能的類別數量增加到50個,以圖形方式查看它就變得更加困難。我希望看到節點中包含的信息;特別是每個終端節點中包含的每個單獨類別的相對概率。我知道如果這是一個BinaryTree類,我可以使用節點參數,但是當我查詢類(M.2)它告訴我它來自constaparty類,並且我還沒有能夠找到如何從這個類獲取節點信息。

我也遇到了第二個問題,那就是當我在我的示例數據集上運行ctree時,它每次都會使R崩潰!它對我的實際數據集正常工作,但我無法弄清楚樣本集有什麼問題。

編輯:期望的輸出將是沿着線的東西:

Node15:
硬塑料30個
玻璃5
軟塑膠23
塑料袋6
片段12

+0

直到@Achim對此進行分類,你能顯示你想要的輸出嗎?多年來我寫了許多類似的功能,這些功能可以幫助我補充我在「party」包中丟失的東西。 –

+0

Hi @David,我添加了一個基本可能的輸出...未格式化得非常漂亮,但是我想它會得到這個觀點嗎? – Alexandra

回答

1

我只是通過電子郵件與包裝維護人員(Torsten Hothorn)以及ctree()的主要作者進行了電子郵件聯繫,這些請求確實是最好的指導。 (他目前不參與SO.)顯然,這是partykit版本ctree()中的一個錯誤,他正在努力解決此問題。目前最好使用舊的party版本 - 希望固定的partykit版本即將推出。

+0

非常感謝,我會嘗試派對版本!我確實嘗試了upvote你的答案,但是還沒有足夠的聲望點。 – Alexandra

相關問題