R語言特徵值相關性分析
轉載自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))
相關性分析結論:
-
女神指數與身高成正相關,與體重呈負相關(嗯,符合大眾審美);
-
女神指數與年齡相關性不明顯(嗯,志玲姐姐立功了);
-
微博粉絲數與女神指數還是有一定正相關性;
-
大家也發現了,相關性其實都不是很顯著,那是因為我們選的資料都是準女神以上級別的,她們之間的差距本來就很小,所以資料還是很反映規律的。
7
最後,我們新增一組賈玲和鳳姐的資料,看看結果會不會有顯著變化......
嗯......效果很明顯。