在 R 中构建分类树时,如何解释因子变量上的 rpart 分割?

发布于 2024-08-27 17:25:49 字数 93 浏览 5 评论 0 原文

如果因子变量是气候,有 4 个可能的值:热带、干旱、温带、雪,并且我的 rpart 树中的一个节点标记为“Climate:ab”,那么分割是什么?

If the factor variable is Climate, with 4 possible values: Tropical, Arid, Temperate, Snow, and a node in my rpart tree is labeled as "Climate:ab", what is the split?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

泪意 2024-09-03 17:25:49

我假设您使用标准方法来绘制树,正如

plot(f)
text(f)

您可以在 text.rpart 的帮助中阅读的那样,默认因子变量上的参数 pretty 显示为字母,因此 a 表示 levels(Climate)[1] ,表示在左侧节点上观察 Climate==levels(Climate)[1] 和 on正确对待其他人。

您可以使用

plot(f)
text(f, pretty=1)

Created by rpart

直接打印关卡,但我建议使用 draw.tree href="http://cran.r-project.org/web/packages/maptree/index.html" rel="noreferrer">maptree 包

require(maptree)
draw.tree(f)

Created by maptree

我使用假数据来做图:

X <- data.frame(
    y=rep(1:4,25),
    Climate=rep(c("Tropical", "Arid", "Temperate", "Snow"),25)
)
f <- rpart(y~Climate, X)

I assume you use standard way to plot tree which is

plot(f)
text(f)

As you can read in help to text.rpart, argument pretty on default factor variables are presented as letters, so a means levels(Climate)[1] and it means that on left node are observation with Climate==levels(Climate)[1] and on right the others.

You could print levels directly using

plot(f)
text(f, pretty=1)

Created by rpart

but I recommend using draw.tree from maptree package:

require(maptree)
draw.tree(f)

Created by maptree

I used fake data to do plots:

X <- data.frame(
    y=rep(1:4,25),
    Climate=rep(c("Tropical", "Arid", "Temperate", "Snow"),25)
)
f <- rpart(y~Climate, X)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文