【问题标题】:Multiple Imputation on New/Predictor Data新/预测数据的多重插补
【发布时间】:2014-11-30 02:11:38
【问题描述】:

有人可以帮我了解如何处理新/未见数据中的缺失值吗?我研究了 R 中的几个多重插补包,似乎都只是插补训练和测试集(同时)。然后,您如何处理新的未标记数据,以与您进行训练/测试相同的方式进行估计?基本上,我想对训练/测试集中的缺失值使用多重插补,并对预测数据使用相同的模型/方法。根据我对多重插补的研究(不是专家),用 MI 来做这件事似乎不可行?但是,例如,使用插入符号,您可以轻松地使用在新数据的训练/测试中使用的相同模型。任何帮助将不胜感激。谢谢。

** 编辑

基本上,我的数据集包含许多缺失值。删除不是一种选择,因为它会丢弃我的大部分训练/测试集。到目前为止,我已经对分类变量进行了编码,删除了接近零的方差和高度相关的变量。经过这个预处理后,我可以很容易地应用mice包进行插补

m=mice(sg.enc)

此时,我可以使用 pool 命令将模型应用于估算数据集。这很好用。但是,我知道未来的数据会有缺失值,并且想以某种方式逐步应用此 MI?

【问题讨论】:

  • 你能告诉我们你到目前为止做了什么(例子)?虽然在我看来,最好也是唯一的估算方法是删除……尤其是在处理经验数据集时。

标签: r missing-data


【解决方案1】:

它没有多重插补,但 yaImpute 包有一个 predict() 函数来插补新数据的值。我使用训练数据(包括 NA)运行测试以创建一个“yai”对象,然后通过 predict() 使用该对象在新的测试数据集中估算值。与 Caret preProcess() 不同,yaImpute 在其 knn 算法中支持因子变量(至少对于它们的插补值)。我还没有测试因子是否可以成为缺失目标变量的“预测变量”的一部分。 yaImpute 确实支持除 knn 之外的其他插补方法。

【讨论】:

    猜你喜欢
    • 2018-04-29
    • 1970-01-01
    • 2021-09-28
    • 2019-08-04
    • 2021-09-11
    • 1970-01-01
    • 2017-12-18
    • 2022-01-14
    • 2017-11-10
    相关资源
    最近更新 更多