熟练运用R语言的集合操作在很多时候可以省去for循环,从而提升数据处理效率。废话不多说,集合操作相对简单,贴一段代码就懂了!
> A<-1:10 > A [1] 1 2 3 4 5 6 7 8 9 10 > B<-seq(5,15,2) > B [1] 5 7 9 11 13 15 > C<-1:5 > C [1] 1 2 3 4 5 > union(A,B) # 求A和B的并集 [1] 1 2 3 4 5 6 7 8 9 10 11 13 15 > intersect(A,B) #求A和B的交集 [1] 5 7 9 > setdiff(A,B) #求A-B 即属于A但不属于B的元素 [1] 1 2 3 4 6 8 10 > setequal(A,B) #检验集合是否相同 [1] FALSE > is.element(12,C) #检验12是否属于集合C [1] FALSE > all(C%in%A) #检验C是否是A的子集 [1] TRUE