为什么unlist()在R中杀死date
当我列出一个date列表,它把他们变成数字。 这是正常的吗? 任何解决方法,而不是重新申请as.Date?
> dd <- as.Date(c("2013-01-01", "2013-02-01", "2013-03-01")) > class(dd) [1] "Date" > unlist(dd) [1] "2013-01-01" "2013-02-01" "2013-03-01" > list(dd) [[1]] [1] "2013-01-01" "2013-02-01" "2013-03-01" > unlist(list(dd)) [1] 15706 15737 15765
这是一个错误?
do.call
是一个方便的function,可以通过列表“执行某些操作”。 在我们的例子中,使用c
连接它。 将列表中的数据框架从一个大的数据框架中cbind
或绑定并不罕见。
我们在这里做的是实际上连接dd
列表的元素。 这将类似于c(dd[[1]], dd[[2]])
。 请注意, c
可以作为function或字符提供。
> dd <- list(dd, dd) > (d <- do.call("c", dd)) [1] "2013-01-01" "2013-02-01" "2013-03-01" "2013-01-01" "2013-02-01" "2013-03-01" > class(d) # proof that class is still Date [1] "Date"