ctree 显示 3 个目标值且没有标签(来自 2 个值目标因子)
ctree is showing 3 target values and no label (from 2 values target factor)
非常简单的数据框:
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
获取 TYPE 变量的 ctree
分类时:
plot(ctree(TYPE ~ ., data = df))
好像出现了3个标签,但不能确定,因为标签没有写在情节下方的末尾。
如果我只有两个(是,不是),为什么会有 3 个结束状态?
为什么标签不存在?
正如@DavidArenburg 已经指出的那样,您用于种植树的数据 df
几乎肯定有一个具有三个级别的 TYPE
变量,尽管其中只有两个实际出现在观察到的数据中。请参阅下文,了解基于您提供的 print-out 的可重现示例。
关于绘图中看不到级别的问题:原因是您使用的绘图window对于默认字体大小来说太小了。因此,未显示重叠标签。最简单的解决方案是简单地增加绘图的大小 window。或者,您可以减小字体大小。请参阅下面的示例。
读取数据:
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
和 二进制 响应显示在使用堆积条的位置。要获得并排绘制的条形图,您需要相应地修改终端面板函数的参数:
plot(ct, tp_args = list(beside = TRUE))
最后,要更改标签的大小,可以更改 grid
图形参数。 (请注意,这需要 partykit
而不是 ctree()
的 party
实现。)
plot(ct, tp_args = list(beside = TRUE), gp = gpar(fontsize = 33))
非常简单的数据框:
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
获取 TYPE 变量的 ctree
分类时:
plot(ctree(TYPE ~ ., data = df))
好像出现了3个标签,但不能确定,因为标签没有写在情节下方的末尾。
如果我只有两个(是,不是),为什么会有 3 个结束状态? 为什么标签不存在?
正如@DavidArenburg 已经指出的那样,您用于种植树的数据 df
几乎肯定有一个具有三个级别的 TYPE
变量,尽管其中只有两个实际出现在观察到的数据中。请参阅下文,了解基于您提供的 print-out 的可重现示例。
关于绘图中看不到级别的问题:原因是您使用的绘图window对于默认字体大小来说太小了。因此,未显示重叠标签。最简单的解决方案是简单地增加绘图的大小 window。或者,您可以减小字体大小。请参阅下面的示例。
读取数据:
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
和 二进制 响应显示在使用堆积条的位置。要获得并排绘制的条形图,您需要相应地修改终端面板函数的参数:
plot(ct, tp_args = list(beside = TRUE))
最后,要更改标签的大小,可以更改 grid
图形参数。 (请注意,这需要 partykit
而不是 ctree()
的 party
实现。)
plot(ct, tp_args = list(beside = TRUE), gp = gpar(fontsize = 33))