获取R中自Epoch以来的天数、月数和周数

获取R中自Epoch以来的天数、月数和周数,r,epoch,R,Epoch,从R中获得大纪元以来的天数、月数和周数的最佳方法是什么 (存在针对Java的解决方案:) 我知道从epoch得到秒数,但是如何得到周数呢 as.integer( Sys.time()) #.... gives number of seconds since epoch time 一种选择是使用lubridate::interval作为: library(lubridate) span <- interval(ymd_hms("1970-01-01 00:00:00"), Sys.

从R中获得大纪元以来的天数、月数和周数的最佳方法是什么

(存在针对Java的解决方案:)

我知道从epoch得到秒数,但是如何得到周数呢

as.integer( Sys.time())   #.... gives number of seconds since epoch time

一种选择是使用
lubridate::interval
作为:

library(lubridate)


span <- interval(ymd_hms("1970-01-01 00:00:00"), Sys.time())

as.period(span, unit = "days")
#[1] "17622d 19H 57M 10.5912010669708S"

as.period(span, unit = "months")
#[1] "579m 0d 19H 57M 10.5912010669708S"


as.period(span, unit = "years")
#[1] "48y 3m 0d 19H 57M 10.5912010669708S"
库(lubridate)

span日期类的内部表示是自纪元起的天数。(如果您有一个POSIXct变量,那么首先使用as.Date将其转换为Date类,但要注意时区转换问题。)


现在我认为最好的方法是获得
间隔
您能给出一个示例代码吗。
now <- Sys.Date() # Date
d <- as.numeric(now) # days since Epoch
m <- d / (365.25 / 12) # months since Epoch
y <- d / 365.25 # years since Epoch
lt <- as.POSIXlt(format(Sys.Date()))
with(lt, data.frame(years = year - 70, months = mon - 0, days = mday - 1))