我有两个列表。列表中的每个组件都是一个数据框。这两个列表是对称的。它们都包含 2006-2012 年的数据框,只是主题不同。我想“水平”合并数据帧(即第一个列表中的 2006 年的数据帧与第二个列表中的 2006 年的数据帧,依此类推)以获得第三个数据帧列表。我试图弄清楚如何使用 lapply 来做到这一点,但肯定有一些我不理解该功能的地方。
你能帮忙吗?
谢谢。
最佳答案
你的意思是这段代码中类似l3
的东西?
DT1 = data.frame(A=1:3,B=letters[1:3])
DT2 = data.frame(A=4:5,B=letters[4:5])
l1 = list(DT1,DT2)
DT1 = data.frame(A=1:3,C=letters[7:9])
DT2 = data.frame(A=4:5,C=letters[11:12])
l2 = list(DT1,DT2)
l3 <- vector(mode = "list", length = length(l1))
for ( i in 1:length(l1))
{
l3[[i]] <- merge(l2[[i]],l1[[i]], by = "A")
}
关于r - 合并存储在列表中的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19794810/