gpt4 book ai didi

r - 了解 R 中的热图树状图聚类

转载 作者:行者123 更新时间:2023-12-02 22:10:33 35 4
gpt4 key购买 nike

如果有任何关于 R 的热图函数的树状图(Colv、Rowv)的信息 Material ,我将不胜感激。例如聚类是如何工作的(是欧氏距离吗?)。您不必发布冗长的解释,我已经对一些可以使我走上正轨的关键字感到高兴,这样我就可以进行一些在线研究。

这是帮助手册的摘录,让我有点困惑。 “荣幸”在这种情况下是什么意思,它与重新排序有何不同?

If either Rowv or Colv are dendrograms they are honored (and not reordered).

最佳答案

RowvColv 控制数据集的行和列是否应该重新排序以及如果是如何重新排序。

它们的可能值为 TRUENULLFALSE、整数向量或树状图对象。

  • 在默认模式 TRUE 下,heatmap.2 使用 hclustfundistfun 参数执行聚类。这默认使用欧氏距离度量来完成链式聚类。然后使用行/列方法对树状图重新排序。您可以通过为 hclustfundistfun 指定不同的函数来控制它。例如,要使用曼哈顿距离而不是欧几里得距离,您可以这样做:

    heatmap.2(x,...,distfun=function (y) dist(y,method = "manhattan") )

    查看 ?dist?hclust。如果您想了解有关聚类的更多信息,可以从“距离测量”和“聚集方法”开始。

  • 如果 Rowv/ColvNULLFALSE 则不会进行重新排序或聚类,并且矩阵按原样绘制。

  • 如果 Rowv/Colv 是数值向量,则聚类计算为 TRUE 和树状图的重新排序使用提供给 Rowv/Colv 的向量完成。

  • 如果Rowv/Colv 是一个树状图对象,那么这个树状图将用于对矩阵重新排序。例如,可以通过以下方式生成树状图对象:

    rowDistance = dist(x, method = "manhattan")
    rowCluster = hclust(rowDistance, method = "complete")
    rowDend = as.dendrogram(rowCluster)
    rowDend = reorder(rowDend, rowMeans(x))

    它在曼哈顿距离上生成一个完整的聚类,按行方式排序。您现在可以将 rowDend 传递给 Rowv

    heatmap.2(x,...,Rowv = rowDend)

    这可能很有用,例如,如果您想以不同的方式对行和列进行聚类,或者使用其他人给您的聚类,或者您想做一些仅通过指定 hclustfun 无法满足的时髦事情和 distfun。这就是“dendrogram is honooured”的意思:它被用来代替 hclustfun 和 distfun 指定的东西。

关于r - 了解 R 中的热图树状图聚类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15388082/

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