python 相关性检验怎么计算p值_生信工具 | 相关性热图还能玩出什么花样?

本文介绍了如何使用R语言进行相关性分析,包括计算相关系数、绘制相关性热图,并强调了相关性不等于因果性。通过实例展示了从计算相关系数到调整热图样式、添加显著性星标的全过程,推荐使用ggcor包来实现更灵活的绘图。
摘要由CSDN通过智能技术生成

a76fb416f427e423c6c0d8295fa5d1b7.png

关于相关性,表示数据之间的相互依赖关系。但需要注意,数据具有相关性不一定意味着具有因果关系

相关性在组学数据挖掘中应用非常广,如样本的重复检验、基因的共表达分析、微生物群落的共发生网络分析等。


相关性分析其实较为简单,用R语言自带的cor()函数非常容易计算得到两两变量间的相关系数。下面我们就来看下如何用R语言实现相关性计算并绘制带有显著性星标的相关性热图。

1.相关系数计算

以R自带的数据集mtcars为例,直接计算矩阵或数据框对应列之间的相关性系数。

#查看范例数据的前6行;
head(mtcars)

48292ae23d688b3755ee0f0005f9c700.png
#计算mtcars数据框的相关性系数;
cor<- cor(mtcars)
class(cor)
#查看得到相关性系数矩阵的前5行,前5列;
cor[1:5,1:5]

80bddd685170759d3c09ad824951cdba.png

2.绘图样式

#安装R包;
install.packages("corrplot")

#载入相关R包;
library(corrplot)
#默认的绘制方法是 "circle",图形的样式还可以是"square"、"ellipse"、"pie"和"color"等,其中method = "number"时,只显示相关性系数;
corrplot(cor, method = "square")

f717dda95bba7a60198ded38ab63a499.png
#可绘制lower、lower、full三种布局方式的热图,当然也可以混合显示;
corrplot.mixed(cor, lower = "square", upper = "circle", tl.col = "black")

3.聚类顺序调整

#常见的排序方式有 "AOE", "FPC", "hclust", "alphabet";
#"AOE" 是指按特征向量的角度排序(angular order of the eigenvectors);
#"FPC" 是按照 first principal component 的顺序排序;
#"hclust"是按照分层聚类的结果排序;
#"alphabet"按照名称字母顺序排序。
corrplot(cor, order = "hclust")

要使用R包进行热图分析,需要先安装一些必要的R包和软件依赖项,包括`pheatmap`、`RColorBrewer`和`gplots`等。你可以在R中使用以下命令安装这些必备的R包: ```r install.packages("pheatmap") install.packages("RColorBrewer") install.packages("gplots") ``` 安装完毕后,你可以使用以下步骤在微生信平台上进行热图分析: 1. 登录微生信平台,选择"数据分析"->"单样本分析"->"差异分析",上传你的表达矩阵和样本信息。 2. 在"差异分析"页面中,选择适当的差异分析方法,进行差异基因筛选。 3. 进入"富集分析"页面,进行富集分析。在"结果展示"中,你可以下载到差异基因的富集分析结果。 4. 找到你感兴趣的富集通路,下载其差异基因列表。 5. 在R中读取差异基因列表,绘制热图。 下面是一个示例代码,可以根据你的实际情况进行修改: ```r # 加载必要的R包 library(pheatmap) library(RColorBrewer) library(gplots) # 读取差异基因列表 diff_genes <- read.table("diff_genes.txt", header = TRUE) # 读取表达矩阵 expr_matrix <- read.table("expr_matrix.txt", header = TRUE, row.names = 1) # 根据差异基因列表筛选表达矩阵 expr_matrix <- expr_matrix[rownames(expr_matrix) %in% diff_genes$GeneID,] # 绘制热图 pheatmap(expr_matrix, cluster_rows = TRUE, cluster_cols = TRUE, scale = "row", show_rownames = FALSE, show_colnames = FALSE, annotation_col = sample_info$group, annotation_colors = brewer.pal(9, "Set1"), color = colorRampPalette(brewer.pal(9, "YlOrRd"))(100)) ``` 这个示例代码使用筛选出来的差异基因列表来选择表达矩阵的子集,并使用`pheatmap`函数绘制热图。你需要将`diff_genes.txt`和`expr_matrix.txt`替换为你的实际文件名,并根据需要调整其他参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值