重要性()的R RandomForest输出中“TRUE”列的含义?

数据挖掘 r 随机森林
2022-03-08 04:09:08

我想使用Importance()R RandomForest 包的功能来评估模型中变量的重要性。我有一个二进制响应变量/类和二进制特征值。

mytree.rf <- randomForest(class ~ ., data=mydata, ntree=1500,keep.forest=FALSE,importance=TRUE)
importance(mytree.rf)

输出矩阵包含 MeanDecreaseAccuracy 和 MeanDecreaseGini。我理解这两个。

我的问题是输出中的另外两列。一个简单地说“真”另一个“假”。无论是在文档中还是在网上,我都无法找到答案这些值是什么以及它们是如何计算的......

谁能帮我吗?

干杯

编辑 1:感谢 Davids 的回答,我意识到 TRUE 和 FALSE 是我的班级“名称”。我仍然不明白矩阵中给出的值是如何计算的......有人可以帮忙吗?

编辑 2:再次感谢大卫,事实证明答案在文档中。但是在关于importance()函数的章节中找不到它,而是在randomForest类的对象描述中找到。重要性是这些对象之一。

[...] 具有 nclass + 2 (用于分类)或两个(用于回归)列的矩阵。对于分类,第一个 nclass 列是特定于类的度量,计算为准确度的平均下降。nclass + 1st 列是所有类的平均精度下降。最后一列是基尼指数的平均下降。

1个回答

我没有看到任何这样的专栏。这是一个简单的例子:

library(randomForest)
data(iris)
iris.rf <- randomForest(Species ~ ., data=iris, importance=TRUE)
colnames(importance(iris.rf))

# [1] "setosa"               "versicolor"          
# [3] "virginica"            "MeanDecreaseAccuracy"
# [5] "MeanDecreaseGini" 

如果您在返回的矩阵中看到名为“TRUE”和“FALSE”的列importance,我最好的猜测是这些列是您的训练数据中的列名。