查看原文
其他

R语言常用函数:交集intersect、并集union、找不同setdiff、判断相同setequal

metagenome 宏基因组 2022-03-28

R语言基础系列:

在R语言进行数据分析时,经常需要找不同组间的相同和不同,那你应该掌握如下几个函数,让你事半功倍。

交集intersect

两个向量的交集,集合可以是数字、字符串等

# 两个数值向量取交集 intersect(x=1:4, y = 2:6) # [1] 2 3 4 # 两个字符向量取交集 intersect(x=letters[1:4], y = letters[2:6]) # [1] "b" "c" "d" # 混合向量 intersect(x=c("a", "b", "c", 4), y = c("a", 2, 3, 4)) [1] "a" "4"

并集union

求两个向量的并集,集合可以是任何数值类型

# 两个数值向量取并集 union(x=1:4, y = 2:6) # [1] 1 2 3 4 5 6 # 两个字符向量取并集 union(x=letters[1:4], y = letters[2:6]) # [1] "a" "b" "c" "d" "e" "f" # 混合向量 union(x=c("a", "b", "c", 4), y = c("a", 2, 3, 4)) [1] "a" "b" "c" "4" "2" "3"

找不同setdiff

求向量x与向量y中不同的元素(只取x中不同的元素)
setdiff(x, y)

x = 1:4 y = 2:6 # 找x中不同于y的元素 setdiff(x, y) # [1] 1 # 找y中不同于x的元素 setdiff(y, x) # [1] 5 6

判断相同setequal

x = 1:4 y = 2:6 # 判断x与y是否相同,结果为假 setequal(x, y) # [1] FALSE # 找y与x是否相同,结果为假 setequal(y, x) # [1] FALSE # 只有完全相同的才返回TRUE y = 1:4 setequal(x, y) # [1] TRUE

猜你喜欢

10000+:肠道细菌 人体上的生命 宝宝与猫狗 梅毒狂想曲 提DNA发Nature 实验分析谁对结果影响大  Cell微生物专刊

系列教程:微生物组入门 Biostar 微生物组  宏基因组

专业技能:生信宝典 学术图表 高分文章 不可或缺的人

一文读懂:宏基因组 寄生虫益处 进化树

必备技能:提问 搜索  Endnote

文献阅读 热心肠 SemanticScholar Geenmedical

扩增子分析:图表解读 分析流程 统计绘图

16S功能预测   PICRUSt  FAPROTAX  Bugbase Tax4Fun

在线工具:16S预测培养基 生信绘图

科研经验:云笔记  云协作 公众号

编程模板 Shell  R Perl

生物科普  生命大跃进  细胞暗战 人体奥秘  

写在后面

为鼓励读者交流、快速解决科研困难,我们建立了“宏基因组”专业讨论群,目前己有国内外150+ PI,1500+ 一线科研人员加入。参与讨论,获得专业解答,欢迎分享此文至朋友圈,并扫码加主编好友带你入群,务必备注“姓名-单位-研究方向-职称/年级”。技术问题寻求帮助,首先阅读《如何优雅的提问》学习解决问题思路,仍末解决群内讨论,问题不私聊,帮助同行。

学习16S扩增子、宏基因组科研思路和分析实战,关注“宏基因组”

点击阅读原文,跳转最新文章目录阅读

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存