R可视化之pheatmap绘制聚类热图并导出聚类后基因顺序

100天生信-Day1

热图是很方便的数据可视化方法,很多情景下简单、实用。比如在拿到RNA-seq表达矩阵后大概看一个表达情况,而且可以做个聚类大体了解基因表达模式(当然样本多的时候可以选择WGCNA)。

## 加载包
library(pheatmap)

## 设置工作目录
setwd("PATH")  

## 导入原始FPKM,保留注释,最后添加cluster信息的时候直接在这个表中添加
FPKM_ann <- read.csv("Ara24_fpkm.csv" , header = T, row.names = 1)

## 去除注释,只取第1到24列
FPKM <- FPKM_ann[,c(1:24)]

## 只取所有样本FPKM和大于10的基因
FPKM <- FPKM[which(rowSums(FPKM) > 10),]

## 画热图,cluster_row对行聚类,cutree_rows = x 参数表示分成几个cluster
## 聚类算法可以通过clustering_method = "xxxx"调整,多试几种看聚类效果
p <- pheatmap(FPKM,cluster_row = TRUE,cluster_col = FALSE, show_rownames= FALSE,
              scale = 'row', cutree_rows = 6)

## 导出加上cluster信息的原始表格(顺序按聚类顺序改变,保留注释,cluster信息在最后一列)
row_cluster <- cutree(p$tree_row, k=6)
newOrder <- FPKM_ann[p$tree_row$order,]
newOrder[,ncol(newOrder)+1]=row_cluster[match(rownames(newOrder), names(row_cluster))]
colnames(newOrder)[ncol(newOrder)]="Cluster"
write.csv(newOrder, "FPKM_cluster.csv")

得到的表就是在输入表的基础上排序加cluster信息。

导出基因顺序参考文章:https://www.omicsclass.com/article/508

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容