首页 > 解决方案 > 具有小数据集的 R 树不会初始化树

问题描述

摘要:我在 R 中研究了一个简单的决策树示例,为了更好地学习,我将创建一个小示例,看看它看起来如何,树没有被渲染。任何建议都会很棒。

示例:10 名学生的 2 门科目的分数以及他们是否通过或不及格的数据

问题:生成的树,打印出来的内容太少

Conditional inference tree with 1 terminal nodes

Response:  did_pass_factor
Inputs:  marks1, marks2
Number of observations:  10

代码:

library(party)

# Marks for students
marks1 <- c(10, 80, 45, 96, 75, 12, 47, 12, 36, 85)
marks2 <- c(35, 70, 55, 80, 61, 34, 64, 18, 33, 99)

# Create a dataframe
dataset <- data.frame(marks1, marks2)

# Add more variables
dataset <- transform(dataset, did_pass = ifelse(marks1 > 40 & marks2 > 40, 1, 0))
dataset$did_pass_factor <- factor(dataset$did_pass)

head(dataset)

data_tree <- ctree(did_pass_factor~marks1+marks2, data=dataset)
data_tree
# Conditional inference tree with 1 terminal nodes
#
# Response:  did_pass_factor
# Inputs:  marks1, marks2
# Number of observations:  10

plot(data_tree)

更新

为什么怀疑

当我运行此树的示例代码打印时t,会正确生成树。我试图找出为什么它不适用于我自己的示例。

library(party)
iris$sp <- factor(iris$Species)

t <- ctree(sp~Sepal.Length, data = iris)
t
plot(t)

标签: r

解决方案


推荐阅读