【问题标题】:what is mean y in decision tree using R使用 R 的决策树中的 y 是什么意思
【发布时间】:2016-12-14 23:44:32
【问题描述】:

我在 R 中使用虹膜数据。

我写了这样的代码:

irisctree<-ctree(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width)
plot(itisctree,type="simple")

并且,结果看到我是这样的:

这是什么意思?

y=(1,0,0) 和 y=(0,0.939,0.061), y=(0,0.031,0.969)

【问题讨论】:

  • 您需要统计教育。这并不是 SO 的真正规定任务。

标签: r decision-tree


【解决方案1】:

对于位于每个叶节点中的实例,这些是目标变量Species 的三个类别中的每一个的概率。

因此,例如,在您的中间叶子中,Species == setosa 的概率为 0,Species == versicolor 的概率为 0.939,Species == virginica 的概率为 0.061。

【讨论】:

    【解决方案2】:

    如果您查看 iris 数据集中的 Species(您的响应变量),您会发现它是一个具有 3 个级别的因子:

    > unique(iris$Species)
    [1] setosa     versicolor virginica 
    Levels: setosa versicolor virginica
    

    鉴于级别按上述顺序出现:setosa、versicolor、virginica,决策树的输出是每个级别的概率,并且该概率总和为 1。

    要验证这一点,请查看树的左侧拆分。它在Petal.Length &lt;= 1.9 处分裂。 Petal.Length &lt;= 1.9时的物种分布是什么?

    prop.table(table(iris[iris$Petal.Length <= 1.9,]$Species))
    
    setosa versicolor  virginica 
         1          0          0
    

    在上面的代码中,我对Petal.Length &lt;= 1.9 进行了子集化,然后查看物种的分布(因此prop.table(table(...)))。 100% 是濑户。

    另一个示例:右拆分 (Petal.Length &gt; 1.9) 和左拆分 (Petal.Width &lt;= 1.6)。结果是:

    prop.table(table(iris[iris$Petal.Length > 1.9 & iris$Petal.Width <= 1.6,]$Species))
    
    setosa versicolor  virginica 
    0.00000000 0.92307692 0.07692308 
    

    我这里的号码和你的不符。我相信你有一个 100 行的训练集,而我使用的是整个数据集。这可能是差异的原因。如果我错了,请纠正我。

    【讨论】:

      猜你喜欢
      • 2021-06-02
      • 2021-04-19
      • 2019-07-04
      • 1970-01-01
      • 1970-01-01
      • 2019-04-03
      • 2018-05-10
      • 2020-08-29
      相关资源
      最近更新 更多