1 基本信息
本流程是进行不同土壤环境因子相关性分析并绘制热图,流程开始按下图整理环境因子数据,行为样品名称,列为环境因子名称和分组信息,共有11个环境变量,3个分组信息。
图1|环境因子及分组信息表,env.csv。
2 分析流程
2.1 设置工作路径并调用R包
# 设置工作路径
#knitr::opts_knit$set(root.dir="D:\\EnvStat")# 使用Rmarkdown进行程序运行
Sys.setlocale('LC_ALL','C') # Rmarkdown全局设置
# 调用R包
library(ggcorrplot)
library(corrplot)
2.2 数据读入
options(stringsAsFactors=F)# R中环境变量设置,防止字符型变量转换为因子
# 读入环境因子数据表
ENV=read.csv("env.csv",header = T,row.names = 1,sep = ",",comment.char = "",stringsAsFactors = F,colClasses = c(rep("character",4),rep("numeric",11)))
head(ENV) # 查看数据前几行
#dim(ENV) # 查看数据行、列数
#str(ENV) # 查看数据表每列的数据形式
# 解决数据中存在ties的警告,选用"pearson"fan方法计算相关性系数,不用运行此命令
ENV[4:14] = rank(ENV[4:14], ties.method = "random") # 使用 "kendall"或 "spearman"方法计算相关性系数,可能会遇到此报错
2.3 环境因子相关性分析
# 环境因子相关性分析,根据自己的数据选择相关性计算方法:"pearson", "kendall", or "spearman"
env.cor <- round(cor(ENV[4:14], method = "pearson"),3) # round(),对输出结果取小数点前三位
env.cor
# 使用ggcorrplot包的cor_pmat函数计算相关性p值,图2
env.p <-round(cor_pmat(ENV[4:14],method = "pearson"),3)
env.p
图2|相关性系数的p值,env.p 。
2.4 绘制环境因子相关性热图
相关性热图绘制方法之前已经发过:R绘图-相关性分析及绘图;R绘图-相关性系数图。这里绘制相关性图:右上角为热图并添加显著性标记,左下角添加相关性r值。
# 绘制相关性热图
?corrplot # 查看各参数含义
cor.plot<-corrplot(corr =env.cor,type="upper",tl.pos="tp",tl.col="black",p.mat = env.p, insig = "label_sig", sig.level = c(.01, .05),pch.cex=1,pch.col = "black",order = "AOE")
cor.plot<-corrplot(corr = env.cor,type="lower",add=TRUE,method="number",
tl.pos="n",tl.col="black",
col="black",tl.cex=1.2,diag=FALSE, cl.pos="n",pch.col = "black",
number.cex = 0.8,order = "AOE")
图3|相关性热图。右上角为添加显著性标记相关性热图,左下角是相关性系数r值。
参考文献
Visualization of a correlation matrix using ggplot2
推荐阅读
R统计-PCA/PCoA/db-RDA/NMDS/CA/CCA/DCA等排序分析教程
开放转载公众号原创文章开放转载,在文末留言告知即可
EcoEvoPhylo :主要分享微生物生态和phylogenomics的数据分析教程。扫描上方二维码,即可关注EcoEvoPhylo。让我们大家一起学习,互相交流,共同进步。