6

我错过了什么?

Sys.Date()
[1] "2011-12-15"

as.POSIXct(Sys.Date())
[1] "2011-12-14 19:00:00 EST"  # Returning the day before !!

as.POSIXct(Sys.Date(), origin="1970-01-01 00:00:00")
[1] "2011-12-14 19:00:00 EST"  # Still returning day before !!

Sys.getlocale()
[1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;
LC_MONETARY=English_United States.1252;LC_NUMERIC=C;
LC_TIME=English_United States.1252"

谢谢你的帮助

4

1 回答 1

6

它可能是一个时区问题。尝试这个:

as.POSIXct(format(Sys.Date()))

注意Sys.time()也存在。

有关这方面的一些详细信息,请参阅 R News 4/1中的 R Help Desk 文章。

于 2011-12-15T22:19:31.183 回答