在R中将日期转换为纳秒

时间:2016-07-01 18:21:08

标签: r datetime lubridate

我试图在R中将日期转换为纳秒。我尝试使用lubridate包但不成功。

  

dateval< - c(“2016-06-29”)

感谢任何帮助!

感谢。

2 个答案:

答案 0 :(得分:0)

使用microbenchmark包。该软件包返回执行某些精确度所需时间的基准。在包内,它们有一个以纳秒为单位返回当前时间的函数

microbenchmark::get_nanotime()
[1] 3.610932e+14
microbenchmark::get_nanotime()
[1] 3.610952e+14
microbenchmark::get_nanotime()
[1] 3.610958e+14
microbenchmark::get_nanotime()
[1] 3.610963e+14

或者,如果精度变得不那么重要,您可以使用

as.numeric(as.POSIXct(TIMEA)) - as.numeric(as.POSIXct(TIMEB))

答案 1 :(得分:-1)

设定:

require(lubridate)
dateval  <- c("2016-06-29")
dateeval <- ymd(dateval)

纳秒是SI时间单位,等于十亿分之一秒。

纪元与该日期之间的时间以纳秒为单位(近似因为日期没有时间戳):

difftime(dateeval, Sys.time(), units = "secs")
abs(as.numeric(difftime(ymd("1970-01-01"),dateeval, units = "secs")))*1000000000
[1] 1.467158e+18