R语言:集合运算


输入三个向量:

> a=c(3,5,7)

> b=5:9

> c=seq(3,7,2)

> d=c(3L,5L,7L)

检查向量中是否有某元素

> is.element(2,a)
[1] FALSE
> is.element(3,a)
[1] TRUE
> 3 %in% a
[1] TRUE

取交集

> intersect(a,b)
[1] 5 7

取并集

> union(a,b)
[1] 3 5 7 6 8 9

取差集

> setdiff(a,b)
[1] 3
> setdiff(b,a)
[1] 6 8 9
> setdiff(b,b)
integer(0)

检查两向量是否相同

> setequal(a,b)
[1] FALSE
> setequal(a,c)
[1] TRUE

> d=c(3L,5L,7L)
> setequal(a,d)
[1] TRUE

检查a是否为b的子集

> all(a %in% b)
[1] FALSE


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM