我目前正在为我正在制作的程序包玩很多日期和时间。
在post上遇到绊脚石再次提醒我,在转而使用contrib包之前,先检查一下基本R功能是否可以完成,这通常不是一个坏主意。
因此,是否可以使用基数R功能将POSIXct
类的日期取整?
我检查了
methods(round)
哪一个“只有”给了我
[1] round.Date round.timeDate*
Non-visible functions are asterisked
这就是我想做的(伪代码)
x <- as.POSIXct(Sys.time())
[1] "2012-07-04 10:33:55 CEST"
round(x, atom="minute")
[1] "2012-07-04 10:34:00 CEST"
round(x, atom="hour")
[1] "2012-07-04 11:00:00 CEST"
round(x, atom="day")
[1] "2012-07-04 CEST"
我知道可以使用timeDate,lubridate等完成此操作,但我想降低程序包的依赖性。因此,在继续检查各个软件包的源代码之前,我想问一下是否有人已经做过这样的事情。
最佳答案
base
具有round.POSIXt
可以做到这一点。不知道为什么它不提供methods
。
x <- as.POSIXct(Sys.time())
x
[1] "2012-07-04 10:01:08 BST"
round(x,"mins")
[1] "2012-07-04 10:01:00 BST"
round(x,"hours")
[1] "2012-07-04 10:00:00 BST"
round(x,"days")
[1] "2012-07-04"
关于r - 使用基本R功能对POSIX日期(POSIXct)进行四舍五入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11325631/