相關(guān)性分析的圖形繪制
相關(guān)性分析在我們做生信過程中用到的頻率很高屎媳。往往在別人的文章里看到這樣的圖枢舶。在自己找到hub基因中,進(jìn)行相關(guān)性分析去看基因和基因的表達(dá)量之間是否有相關(guān)性。
有的時(shí)候這種圖看著感覺不夠秀膏孟,嘗試一下在R語言里將此類圖形畫的更美觀。
倆個(gè)基因之間的相關(guān)性分析圖形繪制
還是以iris數(shù)據(jù)集作為測試數(shù)據(jù)
head(iris)
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#1 5.1 3.5 1.4 0.2 setosa
#2 4.9 3.0 1.4 0.2 setosa
#3 4.7 3.2 1.3 0.2 setosa
#4 4.6 3.1 1.5 0.2 setosa
#5 5.0 3.6 1.4 0.2 setosa
#6 5.4 3.9 1.7 0.4 setosa
table(iris$Species)
#setosa versicolor virginica
# 50 50 50
選取iris里面前五十個(gè)species為setosa的進(jìn)行分析拌汇,同時(shí)將Sepal.Length, Sepal.Width, Petal.Length, Petal.Width重命名為 gene A~D柒桑,好方便測試示范。
test_data <- iris[1:50,]
names(test_data)=c('gene_A','gene_B','gene_C','gene_D','Species')
相關(guān)性分析用cor函數(shù)求到結(jié)果噪舀,一般有三個(gè)方法 ‘pearson’魁淳,‘spearman’飘诗,‘Kendall’,pearson需要數(shù)據(jù)服從正太分布界逛,大家根據(jù)自己需要選擇昆稿,這里用spearman方法做示例。
##########看一下gene A 和gene B之間的相關(guān)性如何####
cor=cor(test_data$gene_A,test_data$gene_B,method='spearman')
cor
#[1] 0.7553375
得到相關(guān)性為0.7表示geneA 和geneB相關(guān)性很好息拜「忍叮可以用ggpubr包粗略模仿一下開頭的那個(gè)圖
library("ggpubr")
ggscatter(test_data, x = "gene_A", y = "gene_B",
add = "reg.line", conf.int = TRUE,
cor.coef = TRUE, cor.method = "spearman")
[圖片上傳失敗...(image-fbd979-1593078328925)]
但是為了尊嚴(yán),一般會(huì)嘗試把圖畫的秀一些少欺,感覺自己棒棒噠喳瓣。這里用的ggstatsplot包
library(ggstatsplot)
ggscatterstats(test_data,
x = "gene_A",
y = "gene_B",
title = "correlation analysis")library(ggstatsplot)
有沒有感覺自己的圖瞬間帥氣了。
多個(gè)基因之間的相關(guān)性
倆個(gè)基因的會(huì)畫了赞别,那么多個(gè)基因的呢畏陕?先用cor函數(shù)看一下基因之間的相關(guān)性
cor2 <- cor(test_data[,-5])
按著相關(guān)性用corrplot畫圖
library(corrplot)
#直接畫
corrplot(cor2)
為了顯示數(shù)值,用corrplot.mixed函數(shù)
corrplot.mixed(cor2)
初代多基因相關(guān)性的圖就畫出來了氯庆。如需要改變參數(shù)畫的更好看蹭秋,就需要同學(xué)們有需要的自己探索了。
?corrplot