R:增强回归树如何处理缺失数据?

7
R实现的boosted regression trees(包gbm)默认如何处理预测变量的缺失值?它们是否被填充,如果是,使用哪种算法进行填充?
问题背景:我在近一年前进行了分析,并使用Elith等人提供的脚本来调用gbm。我现在意识到某些预测变量存在缺失值,我想知道增强回归树是如何处理这些值的。浏览了各种手册和论文后,我发现有关“增强回归树可以适应缺失值”之类的表述,但我找不到关于gbm如何处理缺失值的精确描述。分析本身运行没有问题,因此gbm肯定以某种方式处理了它们。在gbm手册中,甚至有一个示例,在其中故意引入NAs,以证明gbm在没有问题的情况下继续工作。现在我想知道gbm究竟如何处理NAs(跳过它们,填充它们...?)。

3
此问题似乎不适合在此提问,因为它涉及统计算法的实现。这个问题可能更适合在 Cross Validated 提问。 - Simon O'Hanlon
@SimonO101:我不确定哪个论坛更合适,我会在Crossvalidated上发布。 - user7417
我会等一段时间 - 这个网站是由社区运营的。如果共识认为这是不相关的话,那么这个问题将会被关闭,你就知道该去在 CV 上问了。目前,只有我认为它更适合在 CV 上提问! - Simon O'Hanlon
2
也许你需要加入更多的努力 - 告诉我们你是否查看了帮助文件(哪些函数?你没有说),并尝试使用和不使用NA的一些样本分析来查看发生了什么。我们都知道它可能会出现错误 - 你尝试过吗? - Spacedman
@Spacedman:感谢您的建议,我在问题本身中添加了更多信息。 - user7417
1个回答

3

这看起来像是imputation包中的gbmImpute函数,而不是所要求的gbm包中的函数... - Spacedman
在Wong的博客中,使用gbm添加的代码是否回答了问题?我确实发现了今年早些时候的另一个SO问答,但我认为没有任何答案像Wong那样解释了插补过程。 - IRTFM
1
Jeff Wong的代码很棒,头部注释确实从高层次上回答了OP的问题。就我所知,OP问及的是gbm包中的梯度提升算法如何处理缺失值。简单来说,它们会作为一种分割类型与左侧和右侧分割一起被明确地处理,并应用代理分割方法(参见ada和rpart包的文档)。 - c.gutierrez

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接