我在 R 中有 2 个数据框列表(每个列表中的相应数据框大小相同)。是否可以将每个列表中的相应数据帧添加到一行中。
例如说我们有
list1 <- list('a' = data.frame('x'=c(0,1),'y'=c(2,0)), 'b' = data.frame('x'=c(1,1),'y'=c(1,1)))
list2 <- list('a' = data.frame('x'=c(1,2),'y'=c(1,1)), 'b' = data.frame('x'=c(0,1),'y'=c(0,1)))
所以 list1 是:
$a
x y
0 2
1 0
$b
x y
1 1
1 1
而 list2 是:
$a
x y
1 1
2 1
$b
x y
0 0
1 1
最终输出将是:
$a
x y
1 3
3 1
$b
x y
1 1
2 2
显然可以通过以下方式在两条单独的行中执行此操作:
listOutput <- list()
listOutput[['a']] <- list1[['a']] + list2[['a']]
listOutput[['b']] <- list1[['b']] + list2[['b']]
但是有没有一种简单的方法可以在一行中做到这一点,也许使用 lapply?
谢谢