我有2行的列表。列表中的每个元素也是一个列表:
[[1]]
[[1]]$column1
[1] "0"
[[1]]$column2
[1] "0" "1"
[[2]]
[[2]]$column1
[1] "1"
[[2]]$column2
[1] "0" "2" "3" "3"
我想将其转换为这样的数据框:
column1 column2
1 0 "0" "1"
2 1 "0" "2" "3" "3"
我尝试使用
data.frame(matrix(unlist(my_list), nrow=2, byrow=T), stringsAsFactors=FALSE)
但它不了解列的值可能是向量的事实。
数据框中的单元格可以容纳矢量吗?如果是这样,我如何将其转换为所需格式?
答案 0 :(得分:0)
另一种选择,使用list.rbind
中的rlist
library(rlist)
as.data.frame(list.rbind(lst))
# column1 column2
#1 0 0, 1
#2 1 0, 2, 3, 3
没有其他包装
as.data.frame(do.call(rbind, lapply(lst, rbind)))
数据
lst <- list(structure(list(column1 = "0", column2 = c("0", "1")), .Names = c("column1",
"column2")), structure(list(column1 = "1", column2 = c("0", "2",
"3", "3")), .Names = c("column1", "column2")))