美文网首页R语言学习
R语言:多个基因的相关性分析与展示

R语言:多个基因的相关性分析与展示

作者: 守望一株麦穗 | 来源:发表于2021-09-11 00:11 被阅读0次

本文章是网友果子的一篇文章的基础上整理出来的。https://www.iikx.com/news/statistics/6104.html

看了那篇文章后,发现原文中的例子不够详细,没有一定基础很难重现,这里重新整理一下。

#########################################################

如何对多个基因进行快速、方便的相关性分析,同时高效地呈现分析结果呢?

作者果子自己实现过下面的效果图。

感觉之前做的过程比较麻烦,推荐一个新的R包-corrr ,可以较为方便的实现这一功能。

R插件corrr中的主函数correlate()可以快速实现从A到B的转换。另外该包还有rplot()可以画热图,network_plot()可以画网络图。

corrr包除了主函数correlate()外,还有其余7个函数。

(1)shave函数可以将矩阵中的上三角或者下三角区域设为NA

(2)rearrange函数对矩阵中的数据进行排序

(3)focus函数,类似于select函数,可以用来筛选想要查看的某行某列数据。后面会有具体的操作

x2是一个矩阵,-cyl与-vs: 是指要对表头cyl和vs的这行-列数据开始操作,大家注意看这里用的参数是mirror=TRUE。下图还有一个参数mirror=FALSE的,看看两者的区别,体会一下参数的用法。

(4)stretch函数可以实现数据从宽变长

(5)fashion可以简洁化展示数据,去掉NA。

(6)rplot()主要用于画热力学图

(7)network_plot()可以画网络图

原文中用了管道流:%>%。在使用代码过程中,发现了提示信息,这个红红的信息,让初学者肯定怀疑这个过程有问题?结果是否正确呢?每个函数到底该咋用呢?下面来,咱一步一步往前走。

这里的管道流"%>%"来自dplyr包的管道函数,其效果是将%>%左边的对象传递给右边的函数,作为第一个选项的设置。如 x<-datasets::mtcarts %>% correlate()。意思是先将数据集datasets::mtcarts赋值给x,然后再将x传递给correlate(),即correlate(x)。

其中的

#####对上面一步成的代码开始分解工作#####

先安装corrr

>options("repos"=c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))

>install.packages("corrr")

>library(corrr)

>library(dplyr)

等效于下面的代码

为啥我用了x1到x6?这样可以保留中间的处理过程与处理结果,为了方便查看命令的执行结果。方便咱们弄懂弄通做实。

一步一步执行后,发现出现提示信息的地方是第2步。其余代码执行正常。具体原因我也没闹明白,欢迎弄明白的朋友留言。

然后一一查看代码执行结果

x2变成了(mpg,cyl,disp等参数)相关性矩阵

x3是对x2矩阵中的数据进行了选择,去除了cyl和vs的数据。

x4是对x3的矩阵数据进行了排序。

x5是将x4中上三角的数据变成了NA

x6是将x5中的NA去除了,并对数据进行了简化。画热力图时用x5可以画出,但用x6画不出来。

虽然用x5画热力图出现了提示信息,但还可以画出热力图。

相关文章

网友评论

    本文标题:R语言:多个基因的相关性分析与展示

    本文链接:https://www.haomeiwen.com/subject/aktowltx.html