2021-06-28 18:13:23, 多层组学定制服务 上海鹿明生物科技有限公司
点击上方“蓝色字体”关注我们
R语言在生物信息分析过程中,一直占有重要的地位,它可以快速处理繁多的生物学数据并进行可视化。今天小鹿为大家带来数据预处理必备工具——dplyr包,以从容应对各种生物学数据的处理。
dplyr包的真面目
R语言老玩家应该对dplyr这个名字相当熟悉,因为它是plyr包的升级版,可用于处理R内部或者外部的结构化数据。相较于plyr包:①dplyr专注于数据框(data.frame)操作, 大幅度提高了处理速度;②提供了更稳健的数据库接口。
dplyr包主要应用于数据处理,可以对得到的原始数据进行筛选、汇总、变性、分组等等,使得初始数据变成理想中的模样。
dplyr包中最夺人眼球的莫过于几个核心函数,如tbl_df( )、filter( )、arrange( )、select( )、mutate( )、group_by( )、sample_n( )等。
下面来给大家介绍dplyr包中几个最为重要的函数的用法:
首先我们需要安装dplyr包,本次实例演示选用的是R自带的数据集iris。
代码如下:
#加载dplyr
library(dplyr)
#查看iris数据集
View(iris)
输出iris数据集:(这里仅展示iris前几行的数据)
数据提取—select( )
select(data, var1/condition1, var2/condition2,…)
select( )函数按照名称选择数据框的列
第一个参数为需要排序的数据框名称,第二个参数以及随后的参数是选取依据的列名或选取条件的表达式。
例如:
#选取Species和Sepal.Length两列
select(iris, Species, Sepal.Length)
#选取以字母s开头的列
select(iris,starts_with("s"))
数据分组-- group_by( )
group_by(data, var1, var2,…)
函数用于数据框按照某个变量进行分组
第一个参数为数据框的名称,第二个参数为分组依据的变量名称。
特别注意的是,分组完成后对于数据框本身不会发生什么变化,但已按照要求变量分好组。
例如:
#以Sepal.Length为依据分组
group_by(iris, Sepal.Length)
数据排序-- arrange( )
arrange(data, var1, var2, var3,…)
arrange( )函数用于数据框行的排列,改变行的顺序,使数据框按照一列或者多列进行排序。
第一个参数为需要排序的数据框名称,第二个参数以及随后的参数是排序依据的变量名,默认排序为升序,若需要按照某列降序排序,那么可以在变量名前加
desc:arrange(data, desc(var1))
例如:
#按照Petal.Length升序排列
arrange(iris, Petal.Length)
#按照Petal.Length降序排列
arrange(iris, desc(Petal.Length))
arrange( )函数其实和大家经常用的EXCEL中的升降排序相似,不过更加方便快速,可以按照多列进行排序。若列名不只一个,则使用后面的列在前面排序的基础上继续排序。
数据筛选—filter( )
filter(data, condition_1, condition_2)
filter( ) 函数用于筛选数据的行
第一个参数为需要筛选的数据框名称,第二个参数以及随后的参数是用来筛选数据框的筛选要求表达式。
例如:
#筛选Sepal.Length>3, Sepal.Width<5的行
filter(iris, Sepal.Length>3, Sepal.Width<5)
#筛选Sepal.Width>3, Species等于virginica的行
filter(iris, Sepal.Width>3, Species=="virginica")
结语
小鹿今天给大家主要介绍了dplyr包的几个核心函数的用法,你们都学会了吗?当然dplyr作为数据处理的宝藏工具,还有更多强大的功能等待你的挖掘,感兴趣的话继续深入挖宝吧。
文末看点 鹿明生物
上海鹿明生物科技有限公司多年来,一直专注于生命科学和生命技术领域,是国内早期开展以蛋白组和代谢组为基础的多层组学整合实验与分析的团队。
同时,鹿明生物线上学习平台易明学院,一个专注于组学科研培训的互联网平台。迄今为止,倾情打造了多款组合课程,希望可以给各位组学研究的老师一点帮助;
猜你还想看
◆生信课程:手把手教你如何从iprox上自动批量下载原始数据
◆生信课程:这个分析不太难系列(一)——方差分析
◆生信课程:一行代码,轻松绘制动态关系网络图(Jaal 库)
◆生信课程:我要如何才能拯救你!我的论文!我的实验数据!
◆生信分析—文献管理神器:常被文献编排整奔溃?试试这款文献管理神器,让您的效率MAX
◆生信分析—数据库获取:如何快速从主流数据库中获取人/小鼠数据?
◆生信分析—可视化处理工具:你可以更美一些:SnapGene Viewer软件序列可视化操作
◆生信分析:这个R包不太冷系列——GOplot(功能富集绘图)
◆生信分析:10行代码让你的相关性图貌美如花
◆生信分析:对话百年名画--文章绘图配色高级又简单!
◆生信分析:只需3分钟Get“代谢通路分析神器”
◆生信分析:玩转生信—火山图中“亿点细节”,你会打造吗?
◆生信分析:【指南】Cytoscape之stringAPP蛋白互作分析详解
◆生信分析:【教程】组学研究,用python快速实现PCA分析和绘图
◆生信分析:组学研究,R语言实用技巧—热图,运用pheatmap包简单易懂快速汇图方法来袭~
◆生信分析:【情人节】R语言—小提琴图的浪漫邂逅
END
Irene 撰文
欢迎转发到朋友圈
本文系鹿明生物原创
转载请注明本文转自鹿明生物
我知道你在看哟
点“阅读原文”了解更多
06-29
实验室必备!为您的化学品安全使用保驾护航06-29
开讲啦!开奖啦!06-29
怎么用布里渊测硅片、塑料和金刚石?06-29 Dr.Hu
单篇稿费最多可达千元 形式多样 材料人招聘专栏作者06-29
崔屹Nature Energy:打破商业化负极厚度和容量限制,实现高性能锂金属电池06-29 CYM
哈工大&中科院半导体所《Carbon》:具有竖直取向的石墨纳米片热界面材料06-29
香港城市大学招聘博士研究生06-29
大咖分享 | Fluidigm微流控技术助力呼吸道病原体检测及分型研究06-29 Fluidigm
人员技术档案应包括哪些内容?06-29 实验室ISO17025
(7.14-7.16)培训 | 最新(总局39号令)+新版(163号令)+RB/T214(提供换版体系文件)06-29 实验室ISO17025
2021年 6月、7月 培训汇总06-29 实验室ISO17025
(7.7-7.9)实验室数据处理和统计分析专题培训06-29 实验室ISO17025
(7.21-7.23) 实验室LIMS系统 网络培训(免费送LIMS系统一套)06-29 实验室ISO17025
6月30日 | 实验室风险和机遇管理专题培训06-29 实验室ISO17025
4本好书 |《认可知识》、《技术实操》、《现场评审》、《思维导图》06-29 实验室ISO17025
气相GC使用经验分享06-29 基泰生物
Nat. Chem.:活细胞中“捕捉”DNA G-四链体相互作用蛋白质组06-29 朱盼
千!万!不!要!惹!科研党!06-29 广告
【催化】氧钒配合物催化烯类四组分不对称自由基1,4-(胺)氧基三氟甲基化交叉偶联反应06-29