R c.Date()引发警告不赞成使用“ structure(NULL,*)”

时间:2018-08-08 16:58:27

标签: r warnings

我注意到调用c.Date()初始化一个空的日期向量会引发警告。我使用的是R版本3.4.0。

警告消息是:

  

警告消息:在结构中(c(unlist(lapply(list(...),unclass)))),   class =“ Date”):不建议使用“ structure(NULL,*)”,因为   NULL不能具有属性。考虑'structure(list(),*)'   代替。

有人有外植体吗?如何在没有此警告的情况下初始化空的DATE向量?

可复制的代码:

vect = c.Date()
d = as.Date("31/12/2018", format = "%d/%m/%Y")
for(i in 1:10){
    vect = c(vect, d)
    d = d+1
}
print(vect)

结果是

  

[1]“ 2016-03-31”“ 2016-04-01”“ 2016-04-02”“ 2016-04-03” [5]   “ 2016-04-04”“ 2016-04-05”“ 2016-04-06”“ 2016-04-07” [9]“ 2016-04-08”   “ 2016-04-09”

如果我不使用c.Date(),而是使用c()。

vect = c()

d = as.Date("31/12/2018", format = "%d/%m/%Y")
for(i in 1:10){
  vect = c(vect, d)
  d = d+1
}

print(vect)
  

[1] 17896 17897 17898 17899 17900 17901 17902 17903 17904 17905

这是不可取的。

1 个答案:

答案 0 :(得分:1)

r2evans回答了我的问题。 Sys.Date()[0] 绝招。

我在这里张贴内容以将其标记为已解决,以供将来的读者使用。