0

非常简单的数据框:

     TYPE USERS  VISITS SIZE
1   no       3     5 118266
2   no       3     5 118548
3   yes      1     0 274558
4   no       3    10  86078
5   yes      3     4 355091
7   yes      18     0  29915
8   yes      6     0 278590
9   yes      5     0 477850
10  yes      1     2  67751
11  yes      4     9 309361

获取ctreeTYPE 变量的分类时:

plot(ctree(TYPE ~ ., data = df))

似乎出现了 3 个标签,但无法确定,因为标签没有写在情节下方的末尾。

ctree 图

如果我只有两个(是,否),为什么要 3 个结束状态?为什么标签不存在?

4

1 回答 1

0

正如@DavidArenburg 已经指出的那样,df您用于生长树的数据几乎肯定有一个TYPE具有三个级别的变量,尽管其中只有两个实际出现在观察到的数据中。请参阅下面的基于您提供的打印输出的可重现示例。

至于绘图中不可见级别的问题:原因是您使用的绘图窗口对于默认字体大小来说太小了。因此,未显示过度绘制标签。最简单的解决方案是简单地增加绘图窗口的大小。或者,您可以减小字体大小。请参阅下面的示例。

读取数据:

df <- read.table(textConnection("     TYPE USERS  VISITS SIZE
1   no       3     5 118266
2   no       3     5 118548
3   yes      1     0 274558
4   no       3    10  86078
5   yes      3     4 355091
7   yes      18     0  29915
8   yes      6     0 278590
9   yes      5     0 477850
10  yes      1     2  67751
11  yes      4     9 309361
"))

然后生长并可视化树:

library("partykit")
ct <- ctree(TYPE ~ ., data = df)
plot(ct)

ctree-默认值

如您所见,在使用堆叠条的地方显示ctree了一个二元响应。要获得并排绘制的条形图,您需要相应地修改终端面板功能的参数:

plot(ct, tp_args = list(beside = TRUE))

ctree-beside

最后,要更改标签的大小,grid可以更改图形参数。(请注意,这需要partykit而不是party实现ctree()。)

plot(ct, tp_args = list(beside = TRUE), gp = gpar(fontsize = 33))

ctree字体大小

于 2016-05-12T08:16:20.153 回答