我有一个变量out
,它是一个列表列表,我想将第一个子列表格式化为数据帧。说我的out
看起来像这样:
[[1]]
[[1]]$id
[1] "1"
[[1]]$input
[1] "A" "B" "C"
[[2]]
[[2]]$id
[1] "2"
[[2]]$input
[1] "R" "S" "T"
class(out)
和class(out[[1]])
确认这是一个列表清单。
我想创建一个" long"数据框应该如下所示:
id input
1 "A"
1 "B"
1 "C"
2 "R"
2 "S"
2 "T"
我试过了:
lapply(out, function(x){
as.data.frame(x)
})
但似乎这样做cbind
并为每个子列表创建新列。
非常感谢任何帮助。
答案 0 :(得分:1)
试
library(plyr)
ldply(out, as.data.frame)