使用 apply 在数据框中组合列表的不同元素

Combine different elements of a list in a dataframe using apply

我确实有一个主 List 包含子列表也包含元素。我想通过组合主 List.

中每个子列表的第八个元素来制作数据框

如果我手动编写这个,那是可行的:

DF <- cbind(List[[1]][[8]],List[[2]][[8]], ... List[[n]][[8]])

行得通,结果就是想要的数据框。但是我在主列表中有很多子列表,主列表的长度并不总是相同的。所以,手动写效率不高。

我试试这个:

DF <- lapply(1:length(List), function(i) cbind(List[[i]][[8]]))

但结果是一个长度为 (List) 的列表,其中确实包含每个子列表的第八个元素,但不包含所需的数据帧。如何获得数据框而不是另一个列表?

试试这个

do.call(rbind.data.frame, lapply(1:length(List), function(i) cbind(List[[i]][[8]])))