R 查找字符向量列表中的任何交点
我有一个R 查找字符向量列表中的任何交点,r,list,reduce,intersect,R,List,Reduce,Intersect,我有一个列表字符向量s,其中一些有交叉元素,但在整个列表中不一定有交叉元素 例如: l <- list(c("a"),c("a","b"),c("a","c"),c("d"),c("e"),c("h","i")) 不适合这样做,因为它查找与整个列表相交的元素 有什么想法吗?对于列表中的每个元素,使用表查找其计数
列表
字符向量
s,其中一些有交叉元素,但在整个列表
中不一定有交叉元素
例如:
l <- list(c("a"),c("a","b"),c("a","c"),c("d"),c("e"),c("h","i"))
不适合这样做,因为它查找与整个列表相交的元素
有什么想法吗?对于列表中的每个元素,使用表
查找其计数,并仅选择出现在多个列表中的值
vals <- unique(unlist(l))
intersect_vals <- names(Filter(function(x) x > 1,
rowSums(sapply(l, function(x) table(factor(x, vals))) > 0)))
intersect_vals
#[1] "a"
vals(0)))
交集
#[1] “a”
对于列表中的每个元素,使用表查找其计数,并仅选择出现在多个列表中的值
vals <- unique(unlist(l))
intersect_vals <- names(Filter(function(x) x > 1,
rowSums(sapply(l, function(x) table(factor(x, vals))) > 0)))
intersect_vals
#[1] "a"
vals(0)))
交集
#[1] “a”