使用 sets 包在 R 中的集合列表上设置操作
Set operations on list of sets in R using sets package
我正在使用 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
中包含的所有集合的交集?试图 google 但找不到太多。
我们可以使用 Reduce
和 set_intersection
library(sets)
Reduce(set_intersection, ls)
或 do.call
do.call(set_intersection, ls)
注意:最好不要用函数名来命名对象(ls
是函数)
我正在使用 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
中包含的所有集合的交集?试图 google 但找不到太多。
我们可以使用 Reduce
和 set_intersection
library(sets)
Reduce(set_intersection, ls)
或 do.call
do.call(set_intersection, ls)
注意:最好不要用函数名来命名对象(ls
是函数)