2010-05-08 36 views
28

我的代码:[R日期“原产地”,必须提供

axis.Date(1,sites$date, origin="1960-10-01") 

错误:

Error in as.Date.numeric(x) : 'origin' must be supplied 

为什么问我的原产地时,我在上面的代码提供呢?

回答

26

我怀疑你的意思是:

axis.Date(1, as.Date(sites$date, origin = "1960-10-01")) 

为 'X' 参数as.Date()必须是Date类型。

顺便说一句,这将适合作为您的上一个问题的后续或编辑。

+0

'X' 参数_axis_.Date(,不是吗? – user12341234 2017-02-20 05:01:24

+0

参见'args(as.Date)'也可以在那里看到'x'。 – 2017-02-20 13:18:12

12

我的R中,使用1970-01-01:

>as.Date(15103, origin="1970-01-01") 
[1] "2011-05-09" 

,这从

>as.numeric(as.Date(15103, origin="1970-01-01")) 
+0

我也是,为什么每个R使用不同的起源日期? – GabyLP 2015-02-11 14:06:02

+1

我知道这是一个旧帖子。但是每当我运行这个时,我都会在我的日期栏中找到“NA”。我的日期格式为“20150521” – NealC 2015-06-05 16:06:27

1

如果您在数值日期和时间信息计算匹配,则使用as.POSIXct。 Data.table包的IDateTime格式就是这种情况。如果使用fwrite保存文件,程序包会自动将日期时间转换为idixtime格式,这是unix时间。要转换回正常格式,可以完成以下操作。

例子:假设你有日期和时间信息在UNIX时间戳:)1442866615

> as.POSIXct(1442866615,origin="1970-01-01") 
[1] "2015-09-21 16:16:54 EDT" 
相关问题