用Sys.time()替换大型POSIX中的NA

时间:2018-06-08 14:32:56

标签: r posixct posixlt

我有大约70,000个元素的large POSIXct

resolutionDate <- c(as.POSIXct(data$Resolution.Date, format = '%b %d, %Y'))

上面的代码会将值从Jun 5, 2018 3:21 PM更改为2018-06-05

但是,有些值为NA,我希望将今天的所有NA替换为Sys.time()

我尝试使用replace()方法, replace(resolutionDate, if(resolutionData == "NA"), Sys.time())

但是没有用..

我该怎么做?

1 个答案:

答案 0 :(得分:1)

这样的东西?

# generate time vector
a <- as.POSIXct(1:70000,origin="1970-01-01")
# replace the 5th with a NA value and show first 10 elements
a[5] <- NA
a[1:10]
# replace all na values with the current system time
a[is.na(a)] <- Sys.time()
# show result
a[1:10]