聚类热图注释说明
heatmap.2
library(gplots)
MCF10A.vs.MCF7.topgenes <- MCF10A.vs.MCF7$ensembl_id[1:10]
i <- which(v$genes$ensembl_id %in% MCF10A.vs.MCF7.topgenes)
mycol <- colorpanel(1000,"blue","white","red")
heatmap.2(lcpm[i,], scale="row",
labRow=v$genes$gene_name[i], labCol=group,
col=mycol, trace="none", density.info="none",
margin=c(8,9))
聚类热图.png
聚类热图主要分为四个部分:热图,纵轴和横轴的两个分枝树图,一个色键。
每个小方格表示一个基因,颜色则表示该基因的表达量。
一般来说,横坐标是样本,纵坐标是基因种类。即每列表示一个样本中不同基因的表达情况,一行表示同一个基因在不同样本的表达情况。上方的聚类是表示对来自不同样本的分析结果,左侧的树状图是表示对来自不同样本的不同基因的聚类分析结果。
#只对样本聚类
heatmap.2(lcpm[i,], scale="row",
labRow=v$genes$gene_name[i], labCol=group,
col=mycol, trace="none", density.info="none",
margin=c(8,9), dendrogram="column")
#只对基因聚类
heatmap.2(lcpm[i,], scale="row",
labRow=v$genes$gene_name[i], labCol=group,
col=mycol, trace="none", density.info="none",
margin=c(8,9), dendrogram="row")
#同时聚类
heatmap.2(lcpm[i,], scale="row",
labRow=v$genes$gene_name[i], labCol=group,
col=mycol, trace="none", density.info="none",
margin=c(8,9))
注释
可以选择是只对样本聚类还是只对基因聚类还是对两者同时聚类。是否聚类,选择哪一种聚类要根据自己的实际情况来。
如果分组具有很好的生物学意义,想呈现此分组或者排序,此时聚类分析最好关闭。有时候进行聚类是为了图更好看。
Z-score是什么?
image.pngZ-score规范化(标准差标准化 / 零均值标准化)
流程中是按行均一化的还是按列均一化?
不同处理方式,背后的意义也会有所不同。一般来说选择按行进行均一化。我们一般是以基因为单位来观测这些表达量数值的变化的。按列进行均一化,意味着对一个样本的所有基因表达量进行归一化,这表示的是单个样本内部不同基因表达量的变化。这一般不是我们所关心的。我们关心的是不同分组之间相同基因的表达量的变化。
功能/作用
数据质量控制和展示研究对象的差异变化情况
通过热图,我们能很直观的看到不同分组之间的基因整体表达模式,因此可以迅速的判断同组之间各样本间的重复性如何,从而判断实验处理是否正确,数据是否可信可靠符合逻辑。如果某个样本与组内其他样本间的基因表达情况差异较大,需要思考排查之后决定是否排除再进行分析。
经验交流
一次实验中检测到的基因或蛋白往往成千上万,导致一副全局性的热图的行数(基因)也相应地十分庞大,使得在一副图片大小的篇幅内,代表单个基因或蛋白的每一个小方格的信息(如基因名和表达量等)几乎不可能被肉眼所识别。所以类似的用整个数据集画出的热图往往只能用于数据的整体质控。
如果想清晰展示自己所研究的某一批基因或蛋白的数据分布与变化情况,需要把自己的研究对象从数据集中找出来再绘制热图,作为重点关注的几个标志性的基因在右侧标注。