我有两个关于使用随机森林(特别是 R 中的 randomForest)进行缺失值插补(在预测变量空间中)的问题。
1)插补算法是如何工作的——特别是插补需要类标签的方式和原因?是用于加权平均值以估算由类单独定义的缺失值的邻近矩阵吗?
2)如果需要类标签来估算缺失值 - 如何使用它来估算您试图预测的新数据的缺失值?
我有两个关于使用随机森林(特别是 R 中的 randomForest)进行缺失值插补(在预测变量空间中)的问题。
1)插补算法是如何工作的——特别是插补需要类标签的方式和原因?是用于加权平均值以估算由类单独定义的缺失值的邻近矩阵吗?
2)如果需要类标签来估算缺失值 - 如何使用它来估算您试图预测的新数据的缺失值?
基本思想是快速替换缺失数据,然后使用邻近度迭代改进缺失插补。要使用未标记的数据,只需复制带有所有标签的数据,然后将其视为标记数据。
一对观察共享一个终端节点的树的比例给出了邻近矩阵,因此明确使用类标签。
训练集:
重复直到满意:
一种。使用到目前为止计算的估算值,训练一个随机森林。
湾。计算邻近矩阵。
C。使用接近度作为权重,将缺失值估算为非缺失值的加权平均值。
测试集:
这里,(加权)平均值是指数值变量的(加权)中位数和分类变量的(加权)众数。参考文献中建议进行 4-6 次迭代。
我曾尝试在 MICE 中使用随机森林进行多重插补,以处理生存分析中的缺失数据。我使用自举来解释插补模型中的抽样可变性。我发现当插补模型中未包含的预测变量之间存在交互时,随机森林 MICE 的表现优于参数 MICE。
CALIBERrfimpute 包为 MICE 中的随机森林插补提供了一个功能:http:
//cran.r-project.org/web/packages/CALIBERrfimpute/index.html
这是一篇描述该方法在模拟数据和真实流行病学数据集上的测试的文章:http:
//dx.doi.org/10.1093/aje/kwt312