【问题标题】:partial imputation with missForest使用missForest进行部分插补
【发布时间】:2016-10-13 00:13:59
【问题描述】:

我正在尝试使用 R 中的 missForest 包来部分估算数据集。详细地说,我想估算所有度量变量,但只留下几列。这可能吗?

【问题讨论】:

  • 你试过类似m[,1:4] <- missForest(m[,1:4])的东西吗?
  • 你能举一个可重现的例子吗?
  • 很遗憾我不能,因为我使用的数据集是公司数据:(.
  • @Glassjawed:所以用 mtcars 或 iris 之类的标准数据集制作一个玩具示例

标签: r


【解决方案1】:

如果我正确理解您的问题,我有一个潜在的解决方案。我将为您提供一些完全可重现的代码。

## Get some data...
data(iris)

## The data contains four continuous and one categorical variable.
## Artificially produce missing values using the 'prodNA' function:
set.seed(81)
iris.mis <- prodNA(iris, noNA = 0.1)

## Impute missing values for just the first four columns of data
iris.mis[,1:4] <- missForest(iris.mis)$ximp[,1:4]

让我知道这样的方法是否有效。如果它不起作用,看看你是否可以使用一些示例代码来说明原因。

【讨论】:

    【解决方案2】:

    据我了解,您需要保留几列并使用 missForest 函数估算其他列。简单的解决方案是

    imputedData <- missForest(dataset[c( 2, 3)])
    dataset <- data.frame(dataset[1], imputedData)
    

    需要对传递列进行估算(此处为 2,3),然后将其组合回来。

    【讨论】:

      猜你喜欢
      • 2019-06-17
      • 1970-01-01
      • 2021-10-18
      • 2014-06-08
      • 2020-04-04
      • 1970-01-01
      • 1970-01-01
      • 2015-03-26
      • 2022-01-14
      相关资源
      最近更新 更多