【发布时间】:2012-08-08 03:56:16
【问题描述】:
我想在创建具有更多树的最终随机森林之前使用 rfcv 从数据集中剔除不重要的变量(如果这不是使用此函数的方法,请更正并通知我)。例如,
> data(fgl, package="MASS")
> tst <- rfcv(trainx = fgl[,-10], trainy = fgl[,10], scale = "log", step=0.7)
> tst$error.cv
9 6 4 3 2 1
0.2289720 0.2149533 0.2523364 0.2570093 0.3411215 0.5093458
在这种情况下,如果我对结果的理解正确,似乎我们可以删除三个变量而不会产生负面影响。然而,
> attributes(tst)
$names
[1] "n.var" "error.cv" "predicted"
这些插槽都不能告诉我可以从数据集中无害地删除的前三个变量实际上是什么。
【问题讨论】:
-
数据?代码 ?你应该先看看stackoverflow.com/questions/5963269/…
-
我添加了代码,对此感到抱歉。我发现 randomForest 有一个值“重要性”,我可以稍微改变一下 rfcv 让它也输出它。不过,我仍然很困惑,如果 rfcv 不输出可能被忽略的变量,它的真正用途是什么。
标签: r machine-learning classification random-forest feature-selection