在R中将数字转换为日期

时间:2015-12-17 13:26:40

标签: r date numbers lubridate

我正在两个日期做一个ifelse操作,我的结果日期是一个数字。我的具体问题是如何将此数字转换为日期格式。

以下是创建此问题的代码,变量为fecha_epi_final:

library(lubridate)
library(dplyr)
   temp_epi2 <- temp_epi1 %>% 
  ungroup() %>% 
  mutate (b1 = force_tz(b1, tzone = "GMT"),
          b2 = b2 - days(1),
          fecha_epi_final = ifelse (is.na(b2) == T, b1 , 
                                    ifelse (b1>=b2 , b2 , b1)),
          mes_epi_inicio = floor_date(fecha_epi_inicio, "month"))

fecha_epi_final的str是一个数字,例如:1417564800

作为测试数据框使用:

library(lubridate)
library(dplyr)
b1 <- c('2015-01-30' , '2014-12-17')
b2 <- c(NA , '2014-12-15')
temp_epi1 <- data.frame(b1 , b2) %>%
               mutate(b1 = ymd(b1) ,
                      b2 = ymd(b2))

1 个答案:

答案 0 :(得分:2)

为什么不简单:

as.POSIXlt(1417564800, origin="1970-01-01", tz="America/New_York")
# [1] "2014-12-02 19:00:00 EST"