2016-08-21 72 views
1

我对R相当陌生,我给出的数据以天为单位累积为整数,需要解释为YYYY/MM/DD格式。将整数日期更改为默认日期格式YYYY/MM/DD

例如

X <- c(77221,77448,77455) 

我知道, “77221” 是指31/05/12。

我已经尝试使用:

as.Date.POSIXct(X, origin = "2012-10-31", format = "%Y-%m-%d", tz= "GMT") 

但是,我发现了以下消息:

错误as.POSIXlt.numeric(X,TZ = TZ): '原点'必须提供

任何想法我怎么能做到这一点?

+0

您是否尝试过你的RCONSOLE内运行呢? x < - as.POSIXct('2012-05-31 12:15'); unclass(x) x出来是1338446700 –

+0

你的问题中的一些陈述是无稽之谈。您的起源是在77221天后的5个月。 –

回答

2

如果 “77221” 对应31/05/12,那么原产地是 “1800年12月28日”:

as.Date("2012-05-31") - 77221 
# [1] "1800-12-28" 

format(as.Date(c(77221, 77448, 77455), origin="1800-12-28"), "%Y/%m/%d") 
# [1] "2012/05/31" "2013/01/13" "2013/01/20" 
+0

Windows上的Excel使用1800-12-30作为原点,因此我不知道问题的海报是否发生了错误,并且意味着77221对应于2012-06-02? –

+0

我想试试这个,看起来很合逻辑!谢谢! – Seb

+0

它的工作!谢谢,这有助于我理解已经提供给我的数据! – Seb