技术贴 | R语言:小样本多组学的相关性计算、热图绘制
本文由可爱的乔巴根据实践经验而整理,希望对大家有帮助。
原创微文,欢迎转发转载。
在多组学数据关联挖掘中,在我们筛选到目标基因集以及目标蛋白质集合或目标代谢物集合后,在进行基因与蛋白质或代谢关联中,可以通过两者数据的相关性计算,筛选高相关性的基因和蛋白质(代谢物),从而挖掘基因与蛋白质(代谢物)潜在的调控关系。
##读取基因表达数据,行名为目标基因集的样品信息。列名为基因,每一列数据为基因对应于不同样品的表达量。
gene <- read.table("gene.txt",header = T,row.names=1) ###header=T,表示第一行为列名,T=TRUE,header=F,表示第一行不作为列名;row.names=1表示第一列为行名。
#读取蛋白质组(代谢组)表达量文件,此处使用不同样品测定的代谢物表达量进行分析,计算激素于目标基因集的相关性。第一列为样品信息,与基因集的样品信息一致,第二列到第四列为测定的不同时期的不同代谢物对应的表达量。
Meta <- read.table("Meta.txt",header = T,row.names = 1)
#这里使用psych包进行相关性计算,install.packages(“psych”) 进行psych包的安装
library(psych) ##安装成功后,载入psych包
?psych ##查看psych包使用方法。 ###需要关注相关性计算的统计方法,这里有三种,person、spearman和kendall。 同时需要关注是否对计算得到的p值进行矫正,推荐BH法和fdr法进行矫正。
###相关性计算,Meta为代谢物表达量表,gene为基因表达量表,method="pearson"为使用皮尔逊相关系数进行计算, adjust="fdr"为使用fdr对p值进行矫正。
cor.result <- corr.test(Meta,gene,method="pearson", adjust="fdr")
###查看psych包计算结果
View(cor.result)
##提取相关性计算结果和p值结果
result.r <- cor.result$r ##提取相关性计算结果
write.table(result.r,file="Meta_Gene.r.txt") ##将提取的相关性结果保存到Meta_Gene.r.txt文件中。
result.p <- cor.result$p ##提取相关性结果的p值
write.table(result.p,file="Meta_Gene.p.txt") ##保存p值结果到Meta_Gene.p.txt文件中。
###使用热图pheatmap进行可视化
library(pheatmap) ##载入pheatmap包
pheatmap(result.r) ##绘制相关性结果热图
##热图展示相关性值
r_value <- round(result.r,2) ##相关性系数保留2位小数
pheatmap(result.r,display_numbers = r_value) ##通过display_numbers函数 展示相关性值
##优化热图,调整热图方格大小。
pheatmap(result.r,cellwidth = 30,cellheight = 15,display_numbers = r_value) ##通过cellwidth函数调整热图方格的宽度,cellheight函数调整热图方格的高度。
感谢阅读!