如何合并列表[R]中包含的不同大小的数据帧元素?

如何合并列表[R]中包含的不同大小的数据帧元素?,r,merge,lapply,R,Merge,Lapply,我有一个由5个不同大小的数据组成的列表。帧,每个都是数据。帧有两个变量,Group.1和x,我想按Group.1变量合并这些数据。帧。当然,我希望生成NA值 例如: Group.1 = c(01, 03, 05) x = c(2000, 4000, 5000) a <- data.frame(Group.1, x) Group.1 = c(03, 05) x = c(400, 500) b <- data.frame(Group.1, x) Group.1 = c(01,

我有一个由5个不同大小的
数据组成的列表。帧
,每个都是
数据。帧
有两个变量,
Group.1
x
,我想按
Group.1
变量合并这些数据。帧。当然,我希望生成
NA

例如:

Group.1 = c(01, 03, 05) 
x = c(2000, 4000, 5000) 
a <- data.frame(Group.1, x)

Group.1 = c(03, 05) 
x = c(400, 500) 
b <- data.frame(Group.1, x)

Group.1 = c(01, 05) 
x = c(2000,2500) 
c <- data.frame(Group.1, x)

lst <- list(a,b,c)

variables <- as.numeric(c(1:3))
test2 <- lapply(variables, function(t) merge((data.frame(lst[t])), by="Group.1"))
组1=c(01,03,05)
x=c(200040005000)
Reduce()
与列表上的
merge()
配合得很好

Reduce(function(...) merge(..., by = "Group.1", all = TRUE), lst)
#   Group.1  x.x x.y    x
# 1       1 2000  NA 2000
# 2       3 4000 400   NA
# 3       5 5000 500 2500

谢谢理查德,你让我的星期五变得更美好,特别是更短……;-)