gpt4 book ai didi

r as.POSIXct 得到 NA

转载 作者:行者123 更新时间:2023-12-04 12:29:26 26 4
gpt4 key购买 nike

为什么在使用 as.POSIXct 转换下面的时间戳时得到所有 NA?

> head(tmp$timestamp_utc)
[1] Fri Jul 03 00:15:00 EDT 2015 Fri Jul 03 00:45:00 EDT 2015 Fri Jul 03 01:15:00 EDT 2015 Fri Jul 03 01:45:00 EDT 2015 Fri Jul 03 02:15:00 EDT 2015
[6] Fri Jul 03 02:45:00 EDT 2015
> tmp$timestamp_utc<- as.POSIXct(tmp$timestamp_utc, "%m/%d/%Y %H:%M:%S", tz="GMT")
> head(tmp$timestamp_utc)
[1] NA NA NA NA NA NA

更新: 1. 最初的问题是格式不对,下面有 friend 指出。正确的格式不会生成 NA 2. 然后我发现 EDT 没有转换为 GMT,尽管在 as.POSIXCT 中添加了“GMT”。使用 with_tz 解决了这个问题。

> as.POSIXct("Fri Jul 03 00:15:00 EDT 2015", format="%a %b %d %H:%M:%S EDT %Y", tz="GMT")
[1] "2015-07-03 00:15:00 GMT"
> with_tz(as.POSIXct("Fri Jul 03 00:15:00 EDT 2015", format="%a %b %d %H:%M:%S EDT %Y"),"GMT")
[1] "2015-07-03 04:15:00 GMT"

最佳答案

我相信这是你想要的格式:

as.POSIXct("Fri Jul 03 00:15:00 EDT 2015", format="%a %b %d %H:%M:%S EDT %Y", tz="GMT")

任何回答您的特定问题并回应评论的人,它都不起作用,因为您的格式参数未正确指定。

编辑:这有点超出最初提出的问题,但您可以按如下方式根据时区的变化转换时间(支持问题 here ):

time <- "Fri Jul 03 00:15:00 EDT 2015"
format1 <- "%a %b %d %H:%M:%S EDT %Y"
time2 <- as.POSIXct(time, format=format1, tz="EST")
attr(time2, "tzone") <- "GMT"
time2
[1] "2015-07-03 05:15:00 GMT"

关于r as.POSIXct 得到 NA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31820193/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com