识别 R 中的日期时间格式

标签 r datetime

我在 R 中有一个包含日期的列,如下所示: 2020-01-03T21:04:18.907Z 。我不确定应该使用哪种日期格式才能将其转换为我可以使用的日期。我不确定这个 T21907Z 是什么意思。

我尝试这样的事情:

dtparts = t(as.data.frame(strsplit("2020-01-03T21:04:18.907Z",' ')))
row.names(dtparts) = NULL
library(chron)
thetimes = chron(dates=dtparts[,1],times=dtparts[,1],
                                    format=c('y-m-d','h:m:s'))

但我得到:

Error in convert.dates(dates., format = format[[1]], origin. = origin.) : 
  format y-m-d may be incorrect
In addition: Warning message:
In convert.dates(dates., format = format[[1]], origin. = origin.) :
  NAs introduced by coercion

最佳答案

我们可以使用format将其转换为正确的格式

library(lubridate)
dt <- ymd_hms("2020-01-03T21:04:18.907Z")
chron(dates = format(dt, '%Y-%m-%d'), time = format(dt, "%H:%M:%S"), 
        format = c('y-m-d', 'h:m:s'))
#[1] (20-01-03 21:04:18)

关于识别 R 中的日期时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59883533/

相关文章:

r - scale_x_discrete 未显示在绘图上

r - 使用以前的值扩展和填充数据框

python - 将毫秒转换为小时、分钟和秒 python

datetime - 在 PowerShell 中,如何将 DateTime 转换为 UNIX 时间?

R 基于条件的跨列计数

r - 存在重复项时生成唯一的组合

r - 使用 R 选择循环中的第 n 个字符

mysql - 将从json值中提取的字符串转换为返回NULL的日期

C# 将 DateTime 存储到 MYSQL 中的时间戳列

mysql - 如何编写这个 SQL(关于日期和时间)?