从未知工厂类型转换日期

Convert date from an unknown factory type

我在这样的列中有日期值

      2014-08-14

变成了这个值的列

      1407992400

当我在该列上执行 class 时,它 return 类型因素,现在我不确定如何像以前一样将它重新组合在一起,yyyy-mm-dd 格式?

    dput(date1)
    structure(c(26L, 14L, 12L, 1L, 20L, 19L), .Label = c("1406869200", 
    "1406955600", "1407042000", "1407128400", "1407214800", "1407301200", 
    "1407387600", "1407474000", "1407560400", "1407646800", "1407733200", 
    "1407819600", "1407906000", "1407992400", "1408078800", "1408165200", 
    "1408251600", "1408338000", "1408424400", "1408510800", "1408597200", 
    "1408683600", "1408770000", "1408856400", "1408942800", "1409029200", 
    "1409115600", "1409202000", "1409288400", "1409374800"), class = 
    "factor")

好吧,它可能不是 Date-classed 对象,因为这些是从 1970 年开始偏移的整数日期,所以它可能是意外取消类 ()-ing POSIXct-object 的结果。

> as.POSIXct(1407992400, origin="1970-01-01")
[1] "2014-08-13 22:00:00 PDT"

通过神奇的 R 时区操作,您可以找回原始日期:

 as.Date(as.POSIXct(1407992400, origin="1970-01-01"))
[1] "2014-08-14"

format() 函数也给出了当时的 UCT/UTC 版本:

> format(as.POSIXct(1407992400, origin="1970-01-01"), "%Y-%m-%d")
[1] "2014-08-13"