基础积累
集合运算
a<-1:10
b<-c(1,2,3)
c<-c(3,4,15)
求a和c的并集
union(a,c)
[1] 1 2 3 4 5 6 7 8 9 10 15
求a和b的交集
intersect(a,b)
[1] 1 2 3
求a-b
setdiff(a,b)
[1] 4 5 6 7 8 9 10
检验集合a,b是否相等
setequal(a,b)
[1] FALSE
检验元素12是否属于集合a
is.element(12,a)
[1] FALSE
检验集合A是否包含b
all(b%in%a)
[1] TRUE
检验c中的元素是否属于a
c%in%a
[1] TRUE TRUE FALSE
找出集合b中含有两个元素的子集(子集按列排)
combn(b,2)
[,1] [,2] [,3]
[1,] 1 1 2
[2,] 2 3 3
指定函数(如sum)对每个子集求和
combn(b,2,sum)
[1] 3 4 5
对a,b,c求交集
Reduce(intersect,list(a,b,c))
[1] 3