2

我有以下两个列表:

First list:
[[1]]
[1] "ab" "iew"  "rer" "fdd"     
[[2]]
[1] "ff" "de 
[[3]]
[1] "cc"

Second list:
[[1]]
[1] "iew" "vfr" 
[[2]]
[1] "ff" "cdc"
[[3]]
[1] "vf" "cde"

我的目标是比较这两个多维列表,结果将是:

[[1]]
[1] FALSE TRUE FALSE FALSE 
[[2]]
[1] TRUE FALSE
[[3]]
[1] FALSE

执行此 intersect() 函数的最佳矢量化方法是什么?

4

1 回答 1

6

这是另一种使用mapply

> mapply("%in%", Firt.list, Second.list)
[[1]]
[1] FALSE  TRUE FALSE FALSE

[[2]]
[1]  TRUE FALSE

[[3]]
[1] FALSE

地点First.list和地点Second.list

Firt.list <- list(c("ab", "iew",  "rer", "fdd" ), c("ff", "de"), c("cc"))
Second.list <- list(c("iew", "vfr"), c("ff", "cdc"), c("vf", "cde"))

如果您想知道哪些值是 intersect列表的 s,那么试试这个

> mapply("intersect", Firt.list, Second.list)
[[1]]
[1] "iew"

[[2]]
[1] "ff"

[[3]]
character(0)
于 2013-09-09T18:06:45.050 回答