使用R按位置输入缺失日期

时间:2018-01-08 17:21:32

标签: r r-mice

我有6个变量的21840个数据集,后者中的一个是一个带有一堆缺失值的简单“日期”列。出于我的项目的目的,我需要根据位置来估算NA。

例如我可能有:

  • 25/01/1990
  • NA
  • 27/01/1990

鉴于订购日期,NA为:25/01/1990或26/01/1990或27/01/1990(我每天可以有多个障碍,没有概率!)。 有没有办法以简单自动的方式复制这种推理?

我尝试用“老鼠”将日期视为一个因素,但它不起作用!

谢谢!

附加代码:

library(mice)
init = mice(dat, maxit=0) 
meth = init$method
predM = init$predictorMatrix


meth[c("date")]="polr"

set.seed(103)
imputed = mice(dat, method=meth, predictorMatrix=predM, m=5)

1 个答案:

答案 0 :(得分:0)

尝试na.approx

library(zoo)

x <- as.Date(c("25/01/1990", NA, "27/01/1990"), format = "%d/%m/%Y")
as.Date(na.approx(x))

,并提供:

[1] "1990-01-25" "1990-01-26" "1990-01-27"