R:日期/时间YYYY-MM-DDThh:mm:ss.SSSZ formate

时间:2018-07-30 15:19:16

标签: r datetime-format

如何在R中将变量data $ timestamp的类型从char更改为日期格式YYYY-MM-DDThh:mm:ss.SSSZ日期/时间?我愿意将所有信息都保留在这种格式内。

2014-04-06T18:42:05.823Z

1 个答案:

答案 0 :(得分:1)

您可以使用as.POSIXct来创建类"POSIXct"的对象。

x <- "2014-04-06T18:42:05.823Z"

op <- options("digits.secs" = 3)

d <- as.POSIXct(x, tz = "UTC", "%Y-%m-%dT%H:%M:%OS")
d
#[1] "2014-04-06 18:42:05.822 UTC"

class(d)
#[1] "POSIXct" "POSIXt"

format(d, "%Y-%m-%dT%H:%M:%OS3")
#[1] "2014-04-06T18:42:05.822"

有关数据时间格式,请参见help("strptime")

注意。
根据时区,as.POSIXctstrptime可能会给出不同的结果。

as.POSIXct(x, tz = "UTC", "%Y-%m-%dT%H:%M:%OS")
#[1] "2014-04-06 18:42:05.822 UTC"
strptime(x, tz = "UTC", format = "%Y-%m-%dT%H:%M:%OS")
#[1] "2014-04-06 18:42:05.823 UTC"

最后一位数字是1。