我从基于GMT的数据库获得了一个unix时间戳,我希望将其转换为日期时间格式。我在德国使用R. 基于GMT的数据库的Unix时间戳:1525732148
我将其转换为:
install.packages("anytime")
library(anytime)
anytime(as.numeric(as.character(1525732148)))
为什么我得到相同的日期时间,独立于系统日期?
anytime(as.numeric(as.character(1525732148, tz="GMT")))
anytime(as.numeric(as.character(1525732148, tz="CET")))
两人都给我结果:“2018-05-07 22:29:08 UTC”
由于时区不同,我预计会有不同的结果。
答案 0 :(得分:2)
问题如下:
> as.character(1525732148, tz="GMT")
[1] "1525732148"
这是anytime
作为输入的内容。 tz
参数应该传递给anytime
,而不是as.character
,它会在没有任何警告的情况下吞下它无法识别的任何其他参数。试试anytime(1525732148, tz="GMT")
。
> anytime::anytime(1525732148, tz="GMT")
[1] "2018-05-07 22:29:08 GMT"
> anytime::anytime(1525732148, tz="CET")
[1] "2018-05-08 00:29:08 CEST"
请参阅:anytime