gpt4 book ai didi

r - 使用R中的层次聚类生成描述数据集中聚类的热图

转载 作者:行者123 更新时间:2023-12-04 18:12:01 33 4
gpt4 key购买 nike

我正在尝试获取由蛋白质dna相互作用组成的数据集,对数据进行聚类并生成一个热图,该图显示结果数据,从而使数据看起来像聚类的,聚类排列在对角线上。我能够对数据进行聚类并生成该数据的树状图,但是当我使用R中的热图函数生成数据的热图时,聚类不可见。如果您查看前两个图像,一个是我能够生成的树状图,第二个是我能够生成的热图,而第三个只是一个聚类热图的示例,它显示了我对结果的期望粗略地看。从第二张和第三张图片的比较中可以看出,很明显,第三张图片中有聚类,而第二张图片中没有。

这是我的数据集的链接:
http://pastebin.com/wQ9tYmjy

我能够对数据进行聚类并在R中生成一个很好的结果:

args <- commandArgs(TRUE);

matrix_a <- read.table(args[1], sep='\t', header=T, row.names=1);

location <- args[2];

matrix_d <- dist(matrix_a);

hc <- hclust(matrix_d,"average");

mypng <- function(filename = "mydefault.png") {

png(filename)

}

options(device = "mypng")

plot(hc);



我也能够生成一个热图:

matrix_a <- read.table("Arda_list.txt.binary.matrix.txt", sep='\t', header=T, row.names=1);

mtscaled <- as.matrix(scale(matrix_a))

heatmap(mtscaled, Colv=F, scale='none')



我尝试关注该帖子:
http://digitheadslabnotebook.blogspot.com/2011/06/drawing-heatmaps-in-r.html
由克里斯托弗·巴雷(Christopher Bare)撰写,但我缺少一些东西。任何想法,将不胜感激。我已经附上了我得到的热图以及树状图的图像。图片3摘自克里斯托弗·巴雷(Christopher Bare)的帖子。谢谢

最佳答案

事实证明,我应该先对数据使用某种相关性来生成距离矩阵。我使用pearson在矩阵上计算了相似性值,然后调用了heapmap函数,这使对数据进行聚类变得更加容易。一旦能够生成聚类,就可以使它们在对角线上对齐。以上是现在的结果。我必须更改在数据集上调用热图的方式,以使群集在轴上对齐:

heatmap(mtscaled, Colv=T,Rowv=T, scale='none',symm = T)

关于r - 使用R中的层次聚类生成描述数据集中聚类的热图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831501/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com