如何从列表中查找r中另一个列表中不存在的元素

use*_*212 3 r

我有两个具有相同向量但长度不同的列表

list1 <- list(a = 1:10, b = 3:20)
list2 <- list(a = c(2,5,8), b = c(3,5,11,20))
Run Code Online (Sandbox Code Playgroud)

我想从每个向量中找到list1不存在于相应向量中的元素list2.对于其他脚本而不是R.回答了类似的问题.

我希望最终的名单是

lst <- list(a=c(1,3,4,6,7,9,10),b=c(4,6:10,12:19))
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

李哲源*_*李哲源 5

我们可以用

mapply(setdiff,list1,list2)
#$a
#[1]  1  3  4  6  7  9 10

#$b
#[1]  4  6  7  8  9 10 12 13 14 15 16 17 18 19
Run Code Online (Sandbox Code Playgroud)