用vapply返回类POSIXct的向量

时间:2012-12-13 12:29:25

标签: r posixct

我有POSIXct类的日期列表如下(只是一个最小的工作示例):

L <- list(as.POSIXct("2012-12-12 12:12:12"), as.POSIXct("2012-12-12 12:12:12"))

我需要从中检索类POSIXct的向量。这排除了lapply,并给我一个sapply和vapply。我按如下方式应用它们:

sapply(L, "[[", 1)

然后返回:

[1] 1355310732 1355310732

将此向量转换为POSIXct会产生错误,因为必须提供原点。我也试过vapply:

vapply(L, "[[", as.POSIXct(Sys.time()), 1)

但也返回了数字向量:

[1] 1355310732 1355310732

同样,unlist不会产生所需的POSIXct向量:

> unlist(L)
[1] 1355310732 1355310732 

简而言之,如何将POSIXct值列表提取到POSIXct向量中?

1 个答案:

答案 0 :(得分:10)

do.call怎么样?

L <- list(as.POSIXct("2012-12-12 12:12:12"), as.POSIXct("2012-12-12 12:12:12"))
do.call(c, L) # Execute function c on a list L of arguments.
[1] "2012-12-12 12:12:12 CET" "2012-12-12 12:12:12 CET"