unlist(dd) [1] -6ren">
gpt4 book ai didi

r - 为什么 unlist() 将日期类型转换为数字?

转载 作者:行者123 更新时间:2023-12-03 05:23:03 26 4
gpt4 key购买 nike

当我取消列出日期列表时,它会将它们恢复为数字。这正常吗?除了重新应用 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 是一个用列表“做某事”的便捷函数。在我们的例子中,使用 c 连接它。将列表中的 cbindrbind data.frames 转换为单个大 data.frame 的情况并不罕见。

我们在这里所做的实际上是连接 dd 列表的元素。这类似于c(dd[[1]], dd[[2]])。请注意,c 可以作为函数或字符提供。

> 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"

关于r - 为什么 unlist() 将日期类型转换为数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15659783/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com