R中是否有函数来查找多个(不同长度)向量中的公共(public)字符。例如,如果我有3个向量...

 a1 <- LETTERS[1:7]
 a2 <- LETTERS[4:8]
 a3 <- LETTERS[2:10]

a1
# [1] "A" "B" "C" "D" "E" "F" "G"
a2
# [1] "D" "E" "F" "G" "H"
a3
# [1] "B" "C" "D" "E" "F" "G" "H" "I" "J"

我能想到一个凌乱的解决方案...
intersect(intersect(a1,a2),a3)
# [1] "D" "E" "F" "G"

问题是,我大约有8或9个向量。有更好的方法吗?

最佳答案

是的:

Reduce(intersect,list(a1,a2,a3))

09-10 02:44
查看更多