R语言特征值相关性分析

*爱你&永不变心* 提交于 2019-12-07 19:48:09


转载自http://www.sohu.com/a/200219694_278730

接触这么多组学数据,大家肯定做过各种相关性分析。大到几个转录组样本的整体相关性分析,小到挑选了一些候选基因看它们在不同样本中的表达模式相关性。当我们做完了相关性分析的时候,常常会用下面这种图形来展示:

那么问题来了,有没有别的方法,可以让我的相关性分析展现方式更高大上呢?

请出今天的主角,corrplot程序包

1

老规矩,第一步是安装并调用corrplot:

install.packages("corrplot")

library("corrplot")

2

第二步,整理数据。今天就拿一些女明星的身高、体重、年龄、微博粉丝与女神指数的数据来分析一下纯属杜撰

3

第三步,我们读取数据,并做相关性分析。

a<-read.table(file=file.choose(),row.names=1,header=T,sep="t")

b<-cor(a)

4

第四步,非常简单,可以直接作图了。

corrplot(b) #这里默认是圆形显示

还可以用饼图(pie),颜色(color)等等来显示。

corrplot(b,method="pie")

corrplot(b,method="color",addCoef.col="grey") #用颜色显示,同时显示相关系数,是不是跟开头绿绿的图一样啦。

5

第五步,是时候展示高端操作了!我们把颜色对调一下,正相关为红色,负相关为海军蓝色,同时把右上角用圆形展示。

col=colorRampPalette(c("navy", "white", "firebrick3")) #设置颜色

corrplot(b,type="upper",col=col(10),tl.pos="d") #tl.pos="d"即不显示周边各列名字

6

第六步,填补下半部分图形,我们希望既可以图形化展示,也能显示数字,增强图形可读性。

corrplot(b,add=TRUE, type="lower", method="number",diag=FALSE,tl.pos="n", cl.pos="n",col=col(10))

相关性分析结论:

  1. 女神指数与身高成正相关,与体重呈负相关(嗯,符合大众审美);

  2. 女神指数与年龄相关性不明显(嗯,志玲姐姐立功了);

  3. 微博粉丝数与女神指数还是有一定正相关性;

  4. 大家也发现了,相关性其实都不是很显著,那是因为我们选的数据都是准女神以上级别的,她们之间的差距本来就很小,所以数据还是很反映规律的。

7

最后,我们添加一组贾玲和凤姐的数据,看看结果会不会有显著变化......

嗯......效果很明显。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!