使用集合包

时间:2019-01-08 08:18:54

标签: r set set-operations

我正在使用sets package in R。现在,我有一个集合列表,我想在列表上执行集合操作而不必循环。就像,我可以使用可变数量的参数

set_intersection
set_intersection(set(1,2), set(2,3), set(4,5), set(5,6)..)

但是如果我有类似的列表

,该怎么办?
ls = list(set(1,2), set(2,3), set(4,5), set(5,6))

如何获取ls中包含的所有集合的交集?试图用谷歌搜索它,但找不到很多。

1 个答案:

答案 0 :(得分:3)

我们可以将Reduceset_intersection一起使用

library(sets)
Reduce(set_intersection, ls)

或带有do.call

do.call(set_intersection, ls)

注意:最好不要使用函数名称来命名对象(ls是一个函数)