使用 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]])))
我确实有一个主 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]])))