同一列表中矢量的交集

时间:2017-09-20 14:26:30

标签: r

我有一个带字符串的向量列表:

lst <- list(v1 = c("A", "B", "C", "D"), v2 = c("B", "C", "D", "E"), v3 = c("C", "D", "E", "F")

如何获得仅包含与每个向量相交的字符串的新向量。例如。在这种情况下

out <- c("C", "D")

lapply的解决方案会很棒。

1 个答案:

答案 0 :(得分:4)

最简单的功能是Reduce。尝试

Reduce(intersect, lst)

这与

基本相同
# data
x <- list(A, B, C)

# these are equivalent
Reduce(intersect, x)
intersect(intersect(A, B), C)