我有一个lapply
的结果列表,其中该函数被trycatch
函数覆盖,因为我有一个超长的列表,需要我的代码进行检查而不会被任何人停下来错误。结果看起来像这样:
我尝试使用
test12 <- data.frame(matrix(unlist(y), nrow=length(y), byrow = T))
但是,数据框看起来很奇怪,而且并不是我想要的顺序。看起来NA [[20]]在数据帧中创建了一个中断。任何人都有关于如何将此列表转换为数据框的经验?预期的列为:Title
,Description
和Keywords
,是否有可能在所有3列中都将类似项[[20]]的NA作为NA值?谢谢。
答案 0 :(得分:1)
使用基数R可以做到
do.call(rbind.data.frame, y)
# Title Description Keywords
#2 Tetris Layout NA NA
#21 Tetris Layout NA NA
#3 <NA> NA NA
#4 Tetris Layout NA NA
数据
y <- list(list(Title = "Tetris Layout", Description = NA, Keywords= NA),
list(Title = "Tetris Layout", Description = NA, Keywords= NA),
NA,
list(Title = "Tetris Layout", Description = NA, Keywords= NA))
答案 1 :(得分:0)
带有tidyverse
library(tidyverse)
map_df(liste, as_tibble) %>%
select(1:3)
# A tibble: 4 x 3
# Title Description Keyword
# <chr> <chr> <chr>
#1 xxx xxx2 xxx3
#2 yyy yyy2 yyy3
#3 <NA> <NA> <NA>
#4 zzz zzz2 zzz3
liste <- list(list("Title" = "xxx", "Description" = "xxx2", "Keyword" = "xxx3"),
list("Title" = "yyy", "Description" = "yyy2", "Keyword" = "yyy3"),
NA,
list("Title" = "zzz", "Description" = "zzz2", "Keyword" = "zzz3"))