其他
R可视化——相关性计算及展示
加载数据
rm(list=ls())#clear Global Environment
setwd('D:\\桌面\\相关性分析')#设置工作路径
#读取数据,这里是随机编写的数据,可能相关性不是很强哈
df <- read.table(file="data.txt",sep="\t",header=T,check.names=FALSE,row.names = 1)
#预览
head(df)
使用R自带的相关性分析函数cor()进行分析
#使用cor()函数中的“spearman”方法进行相关性计算,并用热图进行展示
heatmap(cor(df,method = 'spearman'))
使用Hmisc包中的rcorr函数进行计算
1)计算数据的相关性
library(Hmisc)
df_rcorr<-rcorr(as.matrix(df))
#需要进行数据格式转换,计算完成后存储3个内容:r,P,n
2)展示
#半角圆圈图
library(corrplot)
corrplot(df_rcorr$r,#数据
type="lower",#可选择展示方式,"full", "lower", "upper"
tl.col ="red",#文本颜色
tl.srt = 45#标签旋转
)
#??corrplot#查看具体参数
#热图
library (pheatmap)
pheatmap(df_rcorr$r,
angle_col = "45",
cellwidth=25, cellheight=20,
display_numbers=T, number_format="%.2f", number_color="grey30"
)
通过PerformanceAnalytics包展示
library(PerformanceAnalytics)
chart.Correlation(df,histogram = T,pch="+")
#大家可以去网上搜一下这种图应该怎么理解
ggcor包与ggplot2展示
library(ggplot2)
library(ggcor)
##方块
quickcor(df) +geom_square()
#显示一半
quickcor(df, type = "lower", show.diag = FALSE) + geom_square()
#半个显示图形,半个显示显著性
quickcor(df, cor.test =T)+#计算相关性
geom_square(data =get_data(type ="lower", show.diag =F))+
geom_mark(data =get_data(type ="upper", show.diag =F), size =3)+
guides(fill = guide_legend(title = "p_value", order = 1))+#图例
geom_mark(r = NA,sig.thres = 0.05, size = 3, colour = "red")
爱我请给我好看!