【发布时间】:2016-01-18 20:48:28
【问题描述】:
我对R知之甚少,但我需要将matlab中层次聚类产生的树状图转换为R树状图结构。下表显示了matlab函数中层次聚类得到的树状图;其中第一列和第二列是对象或分支的 ID,第三列是距离。
有没有办法将此表(或 matlab 树状图)映射到 R 树状图?
【问题讨论】:
标签: r matlab hierarchical-clustering dendrogram
我对R知之甚少,但我需要将matlab中层次聚类产生的树状图转换为R树状图结构。下表显示了matlab函数中层次聚类得到的树状图;其中第一列和第二列是对象或分支的 ID,第三列是距离。
有没有办法将此表(或 matlab 树状图)映射到 R 树状图?
【问题讨论】:
标签: r matlab hierarchical-clustering dendrogram
我认为,在 R 中创建树状图的最简单方法是使用 matlab 分析的一些中间结果,而不是使用最终表格。
假设您有一个称为 Diss_Mat 的相异矩阵(您绝对应该在 matlab 算法的某个时间点对其进行评估),您可以执行以下操作
DIST_Mat=as.dist(Diss_Mat) #create a dist type object
dendro=as.dendrogram(hclust(DIST_Mat))
第二行在 R 中执行层次聚类,然后创建树状图类型对象。
【讨论】:
pdist函数得到的一样。 link 这样的矩阵应该是正值且对称的(至少如果您使用适当的距离)并且包含与每对点之间的距离相关的信息。
as.dist(),您将获得 hclust 函数所需的 dist 类型,如上所述。希望你会发现它有用。