麻烦as.Date

时间:2018-05-09 10:52:18

标签: r as.date

我目前的日期数据格式如下:DDMMYYYY

我想使用以下内容将日期转换为正确的日期函数(我怀疑我需要用于可视化时态数据):

data$DATE<-as.Date(as.character(data$DATE), "%d%m%Y")

这没关系,但是有一位数的天数会导致我得到NA结果,因为前面没有0。

示例:

17042018  = 2018-05-10
 5022018  = NA

什么是解决方法?我应该只在字符小于8的情况下粘贴0吗?

我对R很新,但是如果你能把我送到正确的方向,我将非常感激!

此致 ģ

1 个答案:

答案 0 :(得分:1)

用零填充字符串直到长度为8,然后转换:

a <- '5102017'
a <- sprintf('%08d', as.numeric(a))
as.Date(a, "%d%m%Y")

或者,在您的示例中:

data$DATE <- as.Date(sprintf('%08d', as.numeric(data$DATE)), "%d%m%Y")

您可能需要转换初始data$DATE,具体取决于您从

中汲取的内容