R语言绘制配对样品箱线图

Python015

R语言绘制配对样品箱线图,第1张

配对箱线图,常见于配对样本数据分析中。

例如下图示例,为了研究某些基因在肿瘤组织和正常组织中是否具有表达量的显著不同,在取样时,往往会在同一患者个体中同时获取肿瘤和临近正常组织,两个组织样本就是配对关系。当然在这类研究中,往往需要调查很多的患者,因此会获得大量的配对样本。随后,通过qPCR或RNA-seq等方法定量基因表达后,以箱线图呈现特定基因在肿瘤组织和正常组织中的整体表达水平,并在箱线图中以散点表示具体的样本,此时对于具有配对关系的肿瘤组织和正常组织样本,就可以通过连线连接起来。

这种配对箱线图的好处是,除了能够表现两组的整体差异,还能够清晰地呈现单个样本的前后改变。

本篇教程,就让我们带大家学习如何使用R语言绘制这种配对箱线图。

类似地,假设我们也期望查看某基因(例如MAP2)在肿瘤组织和正常组织中的表达改变情况,在收集了配对样本并检测了这些样本中基因表达水平后,配置这样一张表。

samples是样本名称;MAP2是基因MAP2在各样本中的表达值;group1是样本分组,告知它们来源于肿瘤组织还是正常组织;group2是配对样本信息,配对的两样本设置为同一亚组。

备注: 该示例数据集可点击这里获取。

随后,将上述示例数据导入R中。

绘制箱线图表示两组基因的整体表达水平,并以散点表示样本,配对样本间以连线连接。

这样,配对箱线图就获得了。

箱线图描述了组间基因表达水平改变的趋势,在该图中可以看到MAP2基因的表达在肿瘤组织和正常组织中是不一致的。后续如有需要,不妨执行配对样本的t检验等,计算显著性p值,作为评判基因表达显著差异的指标。

这两款工具的使用方法截然不同。使用Excel时,可以通过鼠标点击完成大部分工作,你可以访问界面内不同位置的各种工具。因此Excel非常便于使用(熟能生巧),但是用Excel处理数据非常费时,而且如果接手一个新项目,你必须单调地重复这些流程。使用R时,则通过代码完成所有操作。你把数据载入内存,然后运行脚本来研究并处理数据。这个工具可能不够人性化,但是有以下几点好处。

我认为,从概念上来说,R更便于使用。如果你在处理多列数据,虽然你只是在处理单个任务,但是却会看到所有的数据。而使用R时,数据都在内存中,只有调出数据才能看到。如果你在转换或计算,你会处理相关列或行的子集,其他所有数据都在后台。我觉得这样更便于关注手头的任务。完成任务后,可将其保存在某个数据帧中,其中只包含所需的列或行数据。你建立了正确的数据集,可解决当前的问题。这样做看似无关紧要,但实际上大受裨益。

借助R,就可以对其他数据集轻松重复相同的操作。因为所有数据都是通过代码进行处理和研究,因此对新的数据集执行相同的操作也就轻而易举了。使用Excel时,大多数操作都是通过鼠标点击实现,虽然用户体验不错,但对新的数据重复操作却非常费时而枯燥。而R只需载入新的数据集,然后再次运行脚本即可。

实际上,用代码操作也便于诊断并共享你的分析结果。使用Excel时,大多数的分析结果都基于内存(数据透视表在这里,公式编辑器在另一个表格上等)。而在R中,通过代码执行所有操作,一目了然。如果你在修正一个错误,你很清楚在哪里操作,而如果你需要共享分析结果,只需复制粘贴代码即可。在线查找帮助时,你能准确说明所用数据,并提出具体的问题。事实上,大多数时候,你在线提问时,人们都是直接贴出准确的代码,来解决你的问题。

R中的项目组织更简单。在Excel中,我要准备一系列表格,可能还要准备多个工作簿,然后适当命名,而且各文件名不得重复。我的项目备注分别保存在各个文件中。我的R语言项目组织单独设有一个文件夹,我处理过的所有内容都放在其中。清理数据、探索性图表及模型。这样便于我理解和查找,也为与我一起工作的其他人提供方便。当然,Excel也能做到井井有条。我觉得R的简洁性更便于使用。

上述几点只能说是锦上添花,而并不是必不可少。在没有这些功能之前,我也用了好几年Excel,你应该也一样。现在,我想讲讲R和Excel真正的区别。我想说的是,除了以上那些花哨的小优势之外,R更适合用于数据分析。原因如下。

你可以把任何数据载入R。数据的保存位置或保存形式并不重要。你可以载入CSV文件,也可以读取JSON,或者执行SQL查询,抑或提取网站。你甚至还可以在R中通过Hadoop处理大数据。

R是一个完整的工具集,使用的是数据包。在分析数据时,R比Excel更实用。你可使用R执行数据管理、分类和回归,也可以处理图片,并执行其他所有操作。如果机器学习是你的专业,那能想到的任何算法都是小菜一碟。目前,R可用的数据包逾5,000个,因此无论你要处理什么类型的数据,R都能应付自如。