2019-01-28浏览量:538

几行R语言代码搞定菌群与环境因子或临床指标相关性的可视化

相关性分析是生物信息学中常用的分析方法,可以用来分析菌群与菌群的关联,菌群与因子的关联等等。本文使用R语言内置函数cor()计算变量之间的相关系数,并用corrplot包进行可视化。(本文测试数据为R语言内置数据集mtcars)。

计算相关性矩阵

运用R语言内置函数cor()来计算相关系数:cor(x,method=c("pearson","kendall","spearman")),其中x是数据框矩阵,而pearson,kendall和spearman是计算相关性的三种方法,函数默认为pearson。

可视化相关系数矩阵

本文使用corrplot包进行相关性矩阵的可视化,corrplot(https://github.com/taiyun/corrplot)是发表在github上的开源R包。

具体过程如下:

install.packages("corrplot")  #安装corrplot包

data(mtcars)  #加载数据集

mydata<- mtcars[, 1:7]

head(mydata, 7)  #查看数据前7行

cordata <- cor(mydata,method ="spearman")  #函数cor计算相关性

round(cordata, 2)  #保留两位小数,得到相关性矩阵

##corrplot()函数进行相关矩阵的可视化

该函数通过颜色深浅可视化显著相关程度。参数主要有:

corrplot(corr,method=c("circle","square","ellipse","number","shade","color","pie"),type=c("full","lower","upper"),order=c("original","AOE","FPC","hclust","alphabet"),tl.cex=1,tl.col="red",order=c("original","AOE","FPC","hclust","alphabet"),hclust.method=c("complete","ward","ward.D","ward.D2","single","average","mcquitty","median","centroid"),tl.cex = 1,tl.col="red",...)

接下来简单介绍几个参数用法及展示其可视化:

1.矩阵类型,通过type参数,“upper”,“lower”, “full”,分别显示上三角,下三角还是全部。

corrplot(cordata, type="lower")  #下三角矩阵

corrplot(cordata, type="full",method="circle")  #全矩阵

2.method参数设置图形可视化的形状,method=c("circle","square","ellipse","number","shade","color","pie"),共有7种形状。

corrplot(cordata,type="full",method="ellipse")  #设置图形为椭圆

corrplot(cordata,type="full",method="pie")  #设置图形为饼图



3.通过函数corrplot.mixed绘制图形数值混合矩阵。

corrplot.mixed(cordata)  #绘制图形数字混合矩阵

corrplot.mixed(cordata,lower="ellipse",upper="circle",tl.col="black")  #下三角为圆形,上三角为椭圆

4.order参数将结果按照不同的聚类方式排序,addrect参数添加分组,具体如下所示。

corrplot(cordata,order="hclust",addrect=2)  #以hclust聚类,分成2组

corrplot(cordata,order="hclust",addrect=2,col=heat.colors(100))  #修改颜色

小锐课堂,收获颇丰

更多好货,敬请期待

我们下期再见!!!

下一篇