我一直在查看mapply
文档,但我找不到足够的示例来帮助我开始。
我有foo
和bar
列表:
set.seed(123)
f <- data.frame(y=1:10,x=sample(LETTERS,10))
foo <- list(f,f)
b <- data.frame(x=c("J","U","A"))
ba <- data.frame(x=c("J","W"))
bar <- list(b,ba)
我可以使用以下代码f
对b
进行分组:
result <- f[f$x %in% b$x ,]
我希望在foo
和bar
上按foo[[1]]
对整个列表foo[[1]]["x"]
和bar[[1]]
即foo[[2]]
子集执行此子集foo[[2]]["x"]
上的bar[[2]]
等...
结果将是:
>foo
[[1]]
y x
3 3 J
4 4 U
6 6 A
[[2]]
y x
3 3 J
5 5 W
答案 0 :(得分:5)
喜欢这样......?
mapply(merge,foo,bar,SIMPLIFY = FALSE)
[[1]]
x y
1 A 6
2 J 3
3 U 4
[[2]]
x y
1 J 3
2 W 5