0

我正在使用partykit:ctree 来探索我的数据集,该数据集包含大约 15,000 个海滩调查,调查了从 50 个不同类别中发现的碎片数量。数据中有很多零,并且碎片总量分布很大。我还有一系列自变量,包括一些因素,一些计数数据,还有一些连续数据。

这是一个非常小的样本数据集:

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!它适用于我的实际数据集,但我无法弄清楚样本集有什么问题。

编辑:所需的输出将类似于以下内容:

节点 15:
硬塑料 30
玻璃 5
软塑料 23
塑料袋 6
碎片 12

4

1 回答 1

1

我刚刚与包维护者 (Torsten Hothorn) 和主要作者通过电子邮件发送了ctree()此类请求。(他目前不参与 SO。)显然,这是partykit版本中的一个错误ctree(),他正在努力解决这个问题。暂时最好使用旧版本 - 希望很快就会party有一个固定版本。partykit

于 2016-05-03T16:02:54.083 回答