2

sets在 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?试图谷歌它,但找不到太多。

4

1 回答 1

3

我们可以Reduce使用set_intersection

library(sets)
Reduce(set_intersection, ls)

或与do.call

do.call(set_intersection, ls)

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

于 2019-01-08T08:21:13.040 回答