我有以下列表,并且想创建一个data.frame,其中每个列表(有很多)组合在一起。这里是一个例子:
v11 <- c("was_on_the_moon", "safe", "best", "super")
v22 <- c("no", "yes", "three", "four")
dat1 <- data.frame(cbind(v11, v22))
v11 <- c("was_on_the_moon", "safe", "best", "super")
v22 <- c("no", "yes", "three", "four")
dat2 <- data.frame(cbind(v11, v22))
list_first <- list(dat1, dat2)
结果应如下:
was_on_the_moon safe best super
1 yes yes three four
2 no sure check four
答案 0 :(得分:1)
一种tidyverse
解决方案:
map(list_first, ~ setNames(., c("var", "val"))) %>%
bind_rows(.id = "id") %>%
spread(var, val)
答案 1 :(得分:-1)
a <- unlist(myfiles, recursive = FALSE)
names <- a$V1
t(sapply(myfiles, function(x) setNames(x$V11, names)[match(names, x$V22)]))