如何使用R将ISO时间戳数据列转换为POSIXt?
我有一个数据框,看起来像这样:如何使用R将ISO时间戳数据列转换为POSIXt?,r,datetime,unix-timestamp,lubridate,R,Datetime,Unix Timestamp,Lubridate,我有一个数据框,看起来像这样: lubridate::as_datetime(1612988995) [1] "2021-02-10 20:29:55 UTC" tbl列名没有任何空格 library(lubridate) library(dplyr) tbl %>% mutate(date_time = as_datetime(ISO_Timestamp)) -输出 # ISO_Timestamp S1 date_time #1
lubridate::as_datetime(1612988995)
[1] "2021-02-10 20:29:55 UTC"
tbl列名没有任何空格
library(lubridate)
library(dplyr)
tbl %>%
mutate(date_time = as_datetime(ISO_Timestamp))
-输出
# ISO_Timestamp S1 date_time
#1 1612972204 7056.0 2021-02-10 15:50:04
#2 1612972214 7101.1 2021-02-10 15:50:14
#3 1612972224 5145.0 2021-02-10 15:50:24
#4 1612972234 2198.0 2021-02-10 15:50:34
抱歉,列名的问题只是这个问题中的一个输入错误。我编辑了它来解决这个问题。我仍然收到“所有格式解析失败。未找到任何格式”错误。我进行了检查,以确保data.frame中的所有数据的格式与显示的格式相同。当我像这样使用base R时,我甚至会遇到同样的错误:as_datetime(tbl_1$ISO_Timestamp)。有什么想法吗?我想出来了。如果您显式地将列转换为整数类型而不是字符,它将使用上面的代码对其进行解析。@JustinAndrew如果有多种日期时间格式,请使用
parse_date_time(ISO_Timestamp,yourformats)
@JustinAndrew如示例所示,这一切都适用于我
library(lubridate)
library(dplyr)
tbl %>%
mutate(date_time = as_datetime(ISO_Timestamp))
# ISO_Timestamp S1 date_time
#1 1612972204 7056.0 2021-02-10 15:50:04
#2 1612972214 7101.1 2021-02-10 15:50:14
#3 1612972224 5145.0 2021-02-10 15:50:24
#4 1612972234 2198.0 2021-02-10 15:50:34